X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=shared%2Fexecute-process-android.cpp;h=59bc63b5ce27a125994f94c81c9366926bb24c03;hb=e760c69ee1bf0f3a988ad01941493907f29b0db1;hp=d042a55a636054e352581248ba46b0a6d7036288;hpb=e20235049b9916dab114ea6e02da2e3bca637ae8;p=platform%2Fcore%2Fuifw%2Fdali-demo.git diff --git a/shared/execute-process-android.cpp b/shared/execute-process-android.cpp index d042a55..59bc63b 100644 --- a/shared/execute-process-android.cpp +++ b/shared/execute-process-android.cpp @@ -15,34 +15,29 @@ * */ - // FILE HEADER +// FILE HEADER #include "execute-process.h" - // EXTERNAL INCLUDES -#include +// EXTERNAL INCLUDES #include +#include + +#include +#include #include -void ExecuteProcess( const std::string& processName, Dali::Application& application ) -{ - std::stringstream stream; - stream << "am start -a android.intent.action.MAIN -n com.sec.dalidemo/.DaliDemoNativeActivity --user 0 --es start " << processName.c_str(); - pid_t parentPID = getpid(); +#include +#include - pid_t pid = fork(); - if( pid == 0 ) - { - do - { - sleep( 1 ); - } - while( kill( parentPID, 0 ) == 0 ); - - system( stream.str().c_str() ); - exit( 0 ); - } - else +void ExecuteProcess(const std::string& processName, Dali::Application& application) +{ + struct android_app* nativeApp = Dali::Integration::AndroidFramework::Get().GetNativeApplication(); + if(!nativeApp) { - application.Quit(); + DALI_LOG_ERROR("Couldn't get native app."); + return; } + + DaliDemoNativeActivity nativeActivity(nativeApp->activity); + nativeActivity.LaunchExample(processName); }