[Dev] Launching Tizen SDK application on Tizen 3.0

Mateusz Malicki m.malicki2 at samsung.com
Thu Apr 3 09:35:35 GMT 2014

I am new in Tizen and almost new in English so forgive for glaring errors.
I tried to run the application on the Tizen 3.0.
Below are the steps that I need to do to achieve the goal.
I had to make a few changes in the code and bypass a few bugs which I do not
know how to solve.
I have described a few problems which can't solve alone. I ask for your
I want to change code of appfw, app-service, security-service.

1. Execute osp-security-service.
Take into account the changes introduced in the appfw 

Possibility to dynamic load by osp-loader(added -pie linker flag)

2. Execute osp-app-service.
2.1. I think that commit
ce.git;a=commit;h=275a4f30bfb384c5f6eb6f78ecd78b4c3af183d7 should by
Above commit changed application path from /opt/apps to /opt/usr/apps.
To launch service path must be set to PATH_OPT_APPS (=/opt/apps) which is
defined in 
2.2. Add _AppLaunchCondition::GetLaunchArgs in appfw.

3. Execute osp-common-service.
osp-common-service setup SettingsServer server.
osp-common-service contain class derived from ServiceApp which construct
_AppImpl object.
_AppImpl Construct function creates SettingsService client instance.
Client is created before SettingServer -- it always fails.
I think that commit that provide above cyclic dependency should be reverted.
For now i use:
diff --git a/src/app/FApp_AppImpl.cpp b/src/app/FApp_AppImpl.cpp
index e41f92a..6415e85 100644
--- a/src/app/FApp_AppImpl.cpp
+++ b/src/app/FApp_AppImpl.cpp
@@ -141,7 +141,7 @@ _AppImpl::Construct(const IList* pArgs)
-       r = _SettingInfoImpl::AddSettingEventListenerForInternal(*this);
+    //r = _SettingInfoImpl::AddSettingEventListenerForInternal(*this);
        SysTryLog(NID_APP, !IsFailed(r), "[%s] failed to add setting event
listener.", GetErrorMessage(r));
        return E_SUCCESS;
4. Execute sample service application (it was build with Tizen SDK).
Still investigating.
Hint: with following patch causes application works.

diff --git a/src/security/FSec_PrivilegeInfo.cpp
index bc6621c..f704517 100644
--- a/src/security/FSec_PrivilegeInfo.cpp
+++ b/src/security/FSec_PrivilegeInfo.cpp
@@ -250,7 +250,7 @@ _PrivilegeInfo::Construct(const AppId& appId, const
String& encryptedPrivileges,
        memcpy(__bitwisePrivilege, pDecrytpedBitwisePrivilege,
        __appId = appId;
-       __apiVisibility = visibility;
+       __apiVisibility = visibility + 1000;
        std::unique_ptr<IEnumerator> pEnum(null);
        r = __privilegeList.Construct(32, 0.75);     


More information about the Dev mailing list