X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=inc%2FFAppAppManager.h;h=fb862529c70f1fda81c5b080f69f97c5c5aac40c;hb=e384e080132b4e5a587116a6a6f5380a295b5018;hp=92f8ad550f6c98b7c139544f2769f390dfa7c158;hpb=0d7581a47c5dc6d4ee4dfcb87cc88d9b80090ddd;p=platform%2Fframework%2Fnative%2Fappfw.git
diff --git a/inc/FAppAppManager.h b/inc/FAppAppManager.h
old mode 100755
new mode 100644
index 92f8ad5..fb86252
--- a/inc/FAppAppManager.h
+++ b/inc/FAppAppManager.h
@@ -1,5 +1,4 @@
//
-// Open Service Platform
// Copyright (c) 2012 Samsung Electronics Co., Ltd.
//
// Licensed under the Apache License, Version 2.0 (the License);
@@ -101,13 +100,10 @@ public:
* The following example demonstrates how to use the %FindAppControlN() method to find the application control.
*
* @code
- * ArrayList dataList(SingleObjectDeleter);
- * dataList.Construct();
- * dataList.Add(new String(L"tel:1234567900"));
- * dataList.Add(new String(L"type:voice"));
+ * String telUri = L"tel:12345678900";
*
- * AppControl* pAc = AppManager::FindAppControlN(L"tizen.phone", L"http://tizen.org/appcontrol/operation/call");
- * pAc->Start(&dataList, null);
+ * AppControl* pAc = AppManager::FindAppControlN(L"tizen.phone", L"http://tizen.org/appcontrol/operation/dial");
+ * pAc->Start(&telUri, null, null, null);
* @endcode
*/
static AppControl* FindAppControlN(const AppId& appId, const Tizen::Base::String& operationId);
@@ -134,7 +130,6 @@ public:
* @exception E_SYSTEM A system error has occurred. @n
* Either the file operation or the DB operation has failed.
* @remarks The specific error code can be accessed using the GetLastResult() method.
- * @remarks For the delivered launch arguments, see App::GetAppArgumentListN().
*/
static Tizen::Base::Collection::IList* FindAppControlsN(const Tizen::Base::String* pOperationId, const Tizen::Base::String* pCategory, const Tizen::Base::String* pDataType, const Tizen::Base::String* pUriPattern);
@@ -263,7 +258,9 @@ public:
* @exception E_SUCCESS The method is successful.
* @exception E_APP_NOT_INSTALLED The expected shared directory cannot be found
* because the application specified with @c appId cannot be installed.
- * @remarks The specific error code can be accessed using the GetLastResult() method.
+ * @remarks
+ * - The returned path can be invalid when the application with specified with @c appId is uninstalled.
+ * - The specific error code can be accessed using the GetLastResult() method.
*/
static Tizen::Base::String GetAppSharedPath(const AppId& appId);
@@ -329,7 +326,8 @@ public:
*
* @since 2.0
* @privlevel partner
- * @privilege %http://tizen.org/privilege/application.kill
+ * @privilege %http://tizen.org/privilege/appmanager.kill @n
+ * (%http://tizen.org/privilege/application.kill is deprecated.)
*
* @return An error code
* @param[in] appId The application's ID to execute
@@ -373,6 +371,7 @@ public:
* @since 2.0
* @privlevel public
* @privilege %http://tizen.org/privilege/application.launch
+ * @feature %http://tizen.org/feature/network.nfc for L"NFC='command'" or %http://tizen.org/feature/usb.accessory for "Serial='command'" in the value of @c condition
*
* @return An error code
* @param[in] condition The launch condition for the application @n
@@ -384,7 +383,7 @@ public:
L"DueTime='mm/dd/yyyy hh:mm:ss' LaunchPeriod='mm'" |
The specific condition is the time period after due time. |
L"WeeklyTime='EEE HH:mm:ss'" |
- The specified condition is a day of week with specific time to launch an application for every week. For multiple description, "," delimiter can be used like following example. i"Mon 09:00:00, Tue 09:00:00, Wed 09:00:00, Thu 09:00:00, Fir 09:00:00" The format of a day of week is support following string only. Mon: Monday Tue: Tuesday Wed: Wednesday Thu: Thursday Fri: Friday Sat: Saturday Sun: Sunday |
+ The specified condition is a day of a week with a specific time at which the application is launched on a weekly basis. For multiple descriptions, "," delimiter can be used as shown in the following example: i"'Mon 09:00:00', 'Tue 09:00:00', 'Wed 09:00:00', 'Thu 09:00:00', 'Fri 09:00:00'" To specify the day of the week, it must be in one of the following supported string format: Mon: Monday Tue: Tuesday Wed: Wednesday Thu: Thursday Fri: Friday Sat: Saturday Sun: Sunday |
L"Serial='command'" | The specified condition is a serial
communication input command. |
L"NFC='command'" | The specified condition is a Near Field Communication (NFC) tag that has the NFC Data Exchange Format (NDEF) data.
@@ -404,6 +403,7 @@ public:
* @exception E_MAX_EXCEEDED The size of @c pArguments has exceeded the maximum limit.
* @exception E_SYSTEM A system error has occurred.
* @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
+ * @exception E_UNSUPPORTED_OPERATION The Emulator or target device does not support the required feature. For more information, see Application Filtering. @b Since: @b 2.1
*
* @remarks When the registered application is about to be launched, the registered launch condition and arguments are given as parameters to IAppLaunchConditionEventListener::OnAppLaunchConditionMetN().
* @remarks The newly introduced launch condition does not work on the previous SDK version and the E_INVALID_CONDITION exception is returned.
@@ -411,9 +411,10 @@ public:
* @remarks The launch period requires more consideration because an inappropriate short period value may lead
* to an adverse effect on the device battery.
* @remarks For the NFC launch condition, the detected NDEF message can be acquired using the @c pExtraData parameter of the %IAppLaunchConditionEventListener::OnAppLaunchConditionMetN() method.
+ * @remarks Before calling this method, check whether the feature is supported by Tizen::System::SystemInfo::GetValue(const Tizen::Base::String&, bool&).
* @see UnregisterAppLaunch()
* @see IsAppLaunchRegistered()
- * @see LaunchApplication()
+ * @see LaunchApplication(const AppId&, LaunchOption);
* @see Tizen::Base::DateTime::ToString()
* @see Tizen::Io::SerialPort
*
@@ -443,10 +444,11 @@ public:
* @privilege %http://tizen.org/privilege/application.launch
*
* @return An error code
- * @exception E_SUCCESS The method is successful.
+ * @exception E_SUCCESS Either of the following conditions has occurred:
+ * - The method is successful.
+ * - There is no registered launch condition.
* @exception E_SYSTEM A system error has occurred.
* @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
- * @remarks E_SUCCESS An error occurs when there is no registered launch condition.
* @see RegisterAppLaunch()
* @see IsAppLaunchRegistered()
*/
@@ -495,6 +497,7 @@ public:
* @since 2.0
* @privlevel partner
* @privilege %http://tizen.org/privilege/appmanager.launch
+ * @feature %http://tizen.org/feature/network.nfc for L"NFC='command'" or %http://tizen.org/feature/usb.accessory for L"Serial='command'" in the value of @c condition
*
* @return An error code
* @param[in] appId The ID of the application registered for launch
@@ -506,6 +509,8 @@ public:
| The specified condition is the local due time. |
L"DueTime='mm/dd/yyyy hh:mm:ss' LaunchPeriod='mm'" |
The specific condition is the time period after due time. |
+ L"WeeklyTime='EEE HH:mm:ss'" |
+ The specified condition is a day of a week with a specific time at which the application is launched on a weekly basis. For multiple descriptions, "," delimiter can be used as shown in the following example: i"'Mon 09:00:00', 'Tue 09:00:00', 'Wed 09:00:00', 'Thu 09:00:00', 'Fri 09:00:00'" To specify the day of the week, it must be in one of the following supported string format: Mon: Monday Tue: Tuesday Wed: Wednesday Thu: Thursday Fri: Friday Sat: Saturday Sun: Sunday |
L"Serial='command'" | The specified condition is a serial
communication input command. |
L"NFC='command'" | The specified condition is a Near Field Communication (NFC) tag that has the NFC Data Exchange Format (NDEF) data.
@@ -525,6 +530,7 @@ public:
* @exception E_MAX_EXCEEDED The size of @c pArguments has exceeded the maximum limit.
* @exception E_SYSTEM A system error has occurred.
* @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
+ * @exception E_UNSUPPORTED_OPERATION The Emulator or target device does not support the required feature. For more information, see Application Filtering. @b Since: @b 2.1
*
* @remarks When the registered application is about to be launched, the registered launch condition and arguments are given as parameters to IAppLaunchConditionEventListener::OnAppLaunchConditionMetN().
* @remarks The newly introduced launch condition does not work on the previous SDK version and the @c E_INVALID_CONDITION exception is returned.
@@ -532,9 +538,10 @@ public:
* @remarks The launch period requires more consideration because an inappropriate short period value may lead
* to an adverse effect on the device battery.
* @remarks For the NFC launch condition, the detected NDEF message can be acquired using the @c pExtraData parameter of the %IAppLaunchConditionEventListener::OnAppLaunchConditionMetN() method.
+ * @remarks Before calling this method, check whether the feature is supported by Tizen::System::SystemInfo::GetValue(const Tizen::Base::String&, bool&).
* @see UnregisterAppLaunch()
* @see IsAppLaunchRegistered()
- * @see LaunchApplication()
+ * @see LaunchApplication(const AppId&, LaunchOption);
* @see IAppLaunchConditionEventListener::OnAppLaunchConditionMetN()
* @see Tizen::Base::DateTime::ToString()
* @see Tizen::Io::SerialPort
@@ -599,7 +606,6 @@ public:
* @exception E_SUCCESS The method is successful.
* @exception E_OBJ_ALREADY_EXIST The listener is already set.
* @exception E_SYSTEM A system error has occurred.
- * @see IAppCheckpointEventListener
*
*/
result SetCheckpointEventListener(IAppCheckpointEventListener& listener);
@@ -663,7 +669,6 @@ public:
* @remarks Active application is the top most window with focus.
* @see GetActiveApp()
* @see RemoveActiveAppEventListener()
- * @see IActiveAppEventListener
*/
result AddActiveAppEventListener(IActiveAppEventListener& listener);
@@ -683,7 +688,6 @@ public:
* @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
* @see GetActiveApp()
* @see AddActiveAppEventListener()
- * @see IActiveAppEventListener
*/
result RemoveActiveAppEventListener(IActiveAppEventListener& listener);
@@ -706,6 +710,42 @@ public:
*/
result GetActiveApp(AppId& appId);
+ /**
+ * Checks whether the specified application is declared as preferred application for any AppControl resolution
+ *
+ * @since 2.2
+ * @privlevel platform
+ * @privilege %http://tizen.org/privilege/appmanager.setting
+ *
+ * @return @c true if the application is running, @n
+ * else @c false
+ * @param[in] appId Application ID
+ * @exception E_SUCCESS The method is successful.
+ * @exception E_SYSTEM The method cannot proceed due to a severe system error.
+ * @exception E_APP_NOT_INSTALLED The specified application is not installed.
+ * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
+ * @remarks The specific error code can be accessed using the GetLastResult() method.
+ * @remarks For more information on AppControl resolution, see Application Controls.
+ */
+ bool IsUserPreferredAppForAppControlResolution(const AppId& appId) const;
+
+ /**
+ * Clear user preference for all AppControl resolutions on the specified application.
+ *
+ * @since 2.2
+ * @privlevel platform
+ * @privilege %http://tizen.org/privilege/appmanager.setting
+ *
+ * @return An error code
+ * @param[in] appId The preferred application's ID
+ * @exception E_SUCCESS The method is successful.
+ * @exception E_SYSTEM The method cannot proceed due to a severe system error.
+ * @exception E_APP_NOT_INSTALLED The specified application is not installed.
+ * @exception E_PRIVILEGE_DENIED The application does not have the privilege to call this method.
+ * @remarks For more information on AppControl resolution, see Application Controls.
+ */
+ result ClearUserPreferenceForAppControlResolution(const AppId& appId);
+
private:
/**
* This default constructor is intentionally declared as private to implement the %Singleton semantic.
|