#include <provider.h>
#include <FBaseColHashMap.h>
#include <FBaseSysLog.h>
+#include <FBaseRt.h>
#include <FBase_StringConverter.h>
#include <FApp_AppMessageImpl.h>
#include <FApp_AppArg.h>
std::unique_ptr<char[]> pAppId(_StringConverter::CopyToCharArrayN(appId) );
std::unique_ptr<char[]> pOperation(_StringConverter::CopyToCharArrayN(operation) );
- result r = Tizen::App::_AppControlManager::GetInstance()->LaunchPkg(msg, pAppId.get(), pOperation.get(), null, null, null, null);
- SysLog(NID_SHELL, "[%s] The result of SendRequestToApp", GetErrorMessage(r));
+
+ const int TRY_COUNT = 3;
+ const int TRY_SLEEP_TIME = 65;
+
+ int retry = 0;
+
+ result r = E_FAILURE;
+ while (true)
+ {
+ r = Tizen::App::_AppControlManager::GetInstance()->LaunchPkg(msg, pAppId.get(), pOperation.get(), null, null, null, null);
+ if( r == E_SUCCESS)
+ {
+ SysLog(NID_SHELL, "[%s] Successed to invoke LaunchPkg()", GetErrorMessage(r));
+ break;
+ }
+
+ if( retry ++ >= TRY_COUNT)
+ {
+ break;
+ }
+
+ SysLog(NID_SHELL, "[%s] Failed to invoke LaunchPkg(%s), %dth retry.", GetErrorMessage(r), pOperation.get(), retry);
+ Tizen::Base::Runtime::Thread::Sleep(TRY_SLEEP_TIME);
+ }
return r;
}
*height= pAppWidgetContext->GetHeight();
*width = pAppWidgetContext->GetWidth();
- SysLog(NID_SHELL, "Exit. %d appWidget(es)", pAppWidgetService->__appWidgetContextList.GetCount());
+ SysLog(NID_SHELL, "Exit. %d appWidget(s)", pAppWidgetService->__appWidgetContextList.GetCount());
return 0;
}
if ( pAppWidgetContext->GetAppId() == appId && pAppWidgetContext->GetProviderName() == providerName)
{
- SysLog(NID_SHELL, "OK");
-
ArrayList* pArray = new (std::nothrow) ArrayList();
SysTryReturnResult(NID_SHELL, pArray, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY]");
break;
default:
- SysAssertf(false, "never get here!");
+ SysAssertf(false, "Never get here!");
break;
}