Tizen Native API
5.0
|
Package Manager Request API. It is responsible for installing, uninstalling, moving packages, and storing their information.
Required Header
#include <package_manager.h>
Overview
The Package Manager API provides functions to install and uninstall the package, and also provides event listening function. The package_manager_request_install() method is used to asynchronously install a package. Similarly, the package_manager_request_uninstall() and package_manager_request_move() methods are used to asynchronously uninstall a package. The callback function is called when the progress of the request changes. Use package_manager_request_event_cb() to listen to package installation related events.
Functions | |
int | package_manager_request_create (package_manager_request_h *request) |
Creates a request handle to the package manager. | |
int | package_manager_request_destroy (package_manager_request_h request) |
Destroys the request handle to the package manager. | |
int | package_manager_request_set_event_cb (package_manager_request_h request, package_manager_request_event_cb callback, void *user_data) |
Registers a callback function to be invoked when the progress of the request changes. | |
int | package_manager_request_unset_event_cb (package_manager_request_h request) |
Unregisters the callback function. | |
int | package_manager_request_set_type (package_manager_request_h request, const char *type) |
Sets the type of the package to install, uninstall, or update. | |
int | package_manager_request_set_mode (package_manager_request_h request, package_manager_request_mode_e mode) |
Sets the mode of the request. | |
int | package_manager_request_set_tep (package_manager_request_h request, const char *tep_path) |
Sets the path of TEP file to the request. The TEP file that is set will be installed when the package is installed. | |
int | package_manager_request_install (package_manager_request_h request, const char *path, int *id) |
Installs the package located at the given path, asynchronously. | |
int | package_manager_request_install_with_cb (package_manager_request_h request, const char *path, package_manager_request_event_cb callback, void *user_data, int *id) |
Installs the package located at the given path, asynchronously. | |
int | package_manager_request_uninstall (package_manager_request_h request, const char *name, int *id) |
Uninstalls the package with the given name, asynchronously. | |
int | package_manager_request_uninstall_with_cb (package_manager_request_h request, const char *name, package_manager_request_event_cb callback, void *user_data, int *id) |
Uninstalls the package with the given name, asynchronously. | |
int | package_manager_request_move (package_manager_request_h request, const char *name, package_manager_move_type_e move_type) |
Moves the package from SD card to the internal memory and vice versa, asynchronously. | |
int | package_manager_request_move_with_cb (package_manager_request_h request, const char *name, package_manager_move_type_e move_type, package_manager_request_event_cb callback, void *user_data, int *id) |
Moves the package from SD card to the internal memory and vice versa, asynchronously. | |
int | package_manager_updateinfo_request_create (package_updateinfo_request_h *pkg_updateinfo_req) |
Creates a package update info request. | |
int | package_manager_updateinfo_set_pkgid (package_updateinfo_request_h pkg_updateinfo_req, const char *pkgid) |
Sets the package ID to the package update info request. | |
int | package_manager_updateinfo_set_version (package_updateinfo_request_h pkg_updateinfo_req, const char *version) |
Sets the package version to the package update info request. | |
int | package_manager_updateinfo_set_type (package_updateinfo_request_h pkg_updateinfo_req, package_updateinfo_type_e type) |
Sets the package update type to the package update info request. | |
int | package_manager_updateinfo_request_register (package_updateinfo_request_h pkg_updateinfo_req) |
Request to register package update info in platform. | |
int | package_manager_updateinfo_request_destroy (package_updateinfo_request_h pkg_updateinfo_req) |
Destroys the package update info request. | |
int | package_manager_updateinfo_request_unregister (package_updateinfo_request_h pkg_updateinfo_req, const char *pkgid) |
Request to unregister update info in platform for given package id. | |
int | package_manager_updateinfo_request_unregister_all (package_updateinfo_request_h pkg_updateinfo_req) |
Request to unregister update info of all packages in platform. | |
Typedefs | |
typedef struct package_manager_request_s * | package_manager_request_h |
The Package manager request handle. | |
typedef void(* | package_manager_request_event_cb )(int id, const char *type, const char *package, package_manager_event_type_e event_type, package_manager_event_state_e event_state, int progress, package_manager_error_e error, void *user_data) |
Called when the progress of the request to the package manager changes. |
Typedef Documentation
typedef void(* package_manager_request_event_cb)(int id, const char *type, const char *package, package_manager_event_type_e event_type, package_manager_event_state_e event_state, int progress, package_manager_error_e error, void *user_data) |
Called when the progress of the request to the package manager changes.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.3
- Parameters:
-
[in] id The ID of the request to the package manager [in] type The type of the package to install, uninstall or update [in] package The name of the package to install, uninstall or update [in] event_type The type of the request to the package manager [in] event_state The current state of the request to the package manager [in] progress The progress for the request that is being processed by the package manager
The range of progress is from0
to100
.[in] error The error code when the package manager failed to process the request [in] user_data The user data passed from package_manager_request_set_event_cb()
typedef struct package_manager_request_s* package_manager_request_h |
The Package manager request handle.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.3
Enumeration Type Documentation
Enumeration for request mode.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.3
Function Documentation
int package_manager_request_create | ( | package_manager_request_h * | request | ) |
Creates a request handle to the package manager.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.3
- Remarks:
- You must release request using package_manager_request_destroy().
- Parameters:
-
[out] request The request handle that is newly created on success
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_OUT_OF_MEMORY Out of memory PACKAGE_MANAGER_ERROR_IO_ERROR Internal I/O error
- See also:
- package_manager_request_destroy()
int package_manager_request_destroy | ( | package_manager_request_h | request | ) |
Destroys the request handle to the package manager.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.3
- Parameters:
-
[in] request The request handle to the package manager
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter
- See also:
- package_manager_request_create()
int package_manager_request_install | ( | package_manager_request_h | request, |
const char * | path, | ||
int * | id | ||
) |
Installs the package located at the given path, asynchronously.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.3
- Privilege Level:
- platform
- Privilege:
- http://tizen.org/privilege/packagemanager.admin
- Parameters:
-
[in] request The request handle [in] path The absolute path to the package to be installed [out] id The ID of the request to the package manager
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_PERMISSION_DENIED Permission denied
- See also:
- package_manager_request_uninstall()
int package_manager_request_install_with_cb | ( | package_manager_request_h | request, |
const char * | path, | ||
package_manager_request_event_cb | callback, | ||
void * | user_data, | ||
int * | id | ||
) |
Installs the package located at the given path, asynchronously.
- Warning:
- This is not for use by third-party applications.
The progress of the request is asynchronously received by the callback function. The callback is the individual callback only called for the current API call. The callback is the only callback called, even if another callback was set for this request with package_manager_request_set_event_cb().
- Since :
- 4.0
- Privilege Level:
- platform
- Privilege:
- http://tizen.org/privilege/packagemanager.admin
- Parameters:
-
[in] request The request handle [in] path The absolute path to the package to be installed [in] callback The callback function to be invoked [in] user_data The user data to be passed to the callback function [out] id The ID of the request to the package manager
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_PERMISSION_DENIED Permission denied
int package_manager_request_move | ( | package_manager_request_h | request, |
const char * | name, | ||
package_manager_move_type_e | move_type | ||
) |
Moves the package from SD card to the internal memory and vice versa, asynchronously.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.3
- Privilege Level:
- platform
- Privilege:
- http://tizen.org/privilege/packagemanager.admin
- Parameters:
-
[in] request The request handle [in] name The name of the package to be moved [in] move_type The move type [enum package_manager_move_type_e], [external to internal/internal to external]
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_PERMISSION_DENIED Permission denied
int package_manager_request_move_with_cb | ( | package_manager_request_h | request, |
const char * | name, | ||
package_manager_move_type_e | move_type, | ||
package_manager_request_event_cb | callback, | ||
void * | user_data, | ||
int * | id | ||
) |
Moves the package from SD card to the internal memory and vice versa, asynchronously.
- Warning:
- This is not for use by third-party applications.
The progress of the request is asynchronously received by the callback function. The callback is the individual callback only called for the current API call. The callback is the only callback called, even if another callback was set for this request with package_manager_request_set_event_cb().
- Since :
- 4.0
- Privilege Level:
- platform
- Privilege:
- http://tizen.org/privilege/packagemanager.admin
- Parameters:
-
[in] request The request handle [in] name The name of the package to be moved [in] move_type The move type [enum package_manager_move_type_e], [external to internal/internal to external] [in] callback The callback function to be invoked [in] user_data The user data to be passed to the callback function [out] id The ID of the request to the package manager
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_PERMISSION_DENIED Permission denied
int package_manager_request_set_event_cb | ( | package_manager_request_h | request, |
package_manager_request_event_cb | callback, | ||
void * | user_data | ||
) |
Registers a callback function to be invoked when the progress of the request changes.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.3
- Privilege Level:
- public
- Privilege:
- http://tizen.org/privilege/packagemanager.info
- Parameters:
-
[in] request The request handle [in] callback The callback function to be registered [in] user_data The user data to be passed to the callback function
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_PERMISSION_DENIED Permission denied
- Postcondition:
- package_manager_request_event_cb() will be invoked.
int package_manager_request_set_mode | ( | package_manager_request_h | request, |
package_manager_request_mode_e | mode | ||
) |
Sets the mode of the request.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.3
- Parameters:
-
[in] request The request handle [in] mode The mode of the request
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter
int package_manager_request_set_tep | ( | package_manager_request_h | request, |
const char * | tep_path | ||
) |
Sets the path of TEP file to the request. The TEP file that is set will be installed when the package is installed.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.4
- Privilege Level:
- platform
- Privilege:
- http://tizen.org/privilege/packagemanager.admin
- Parameters:
-
[in] request The request handle [in] tep_path The TEP path to set. If this is NULL on update, installed TEP will be removed.
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_PERMISSION_DENIED Permission denied PACKAGE_MANAGER_ERROR_SYSTEM_ERROR Severe system error
int package_manager_request_set_type | ( | package_manager_request_h | request, |
const char * | type | ||
) |
Sets the type of the package to install, uninstall, or update.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.3
- Parameters:
-
[in] request The request handle [in] type The type of the package
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter
int package_manager_request_uninstall | ( | package_manager_request_h | request, |
const char * | name, | ||
int * | id | ||
) |
Uninstalls the package with the given name, asynchronously.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.3
- Privilege Level:
- platform
- Privilege:
- http://tizen.org/privilege/packagemanager.admin
- Parameters:
-
[in] request The request handle [in] name The name of the package to be uninstalled [out] id The ID of the request to the package manager
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_PERMISSION_DENIED Permission denied
int package_manager_request_uninstall_with_cb | ( | package_manager_request_h | request, |
const char * | name, | ||
package_manager_request_event_cb | callback, | ||
void * | user_data, | ||
int * | id | ||
) |
Uninstalls the package with the given name, asynchronously.
- Warning:
- This is not for use by third-party applications.
The progress of the request is asynchronously received by the callback function. The callback is the individual callback only called for the current API call. The callback is the only callback called, even if another callback was set for this request with package_manager_request_set_event_cb().
- Since :
- 4.0
- Privilege Level:
- platform
- Privilege:
- http://tizen.org/privilege/packagemanager.admin
- Parameters:
-
[in] request The request handle [in] name The name of the package to be uninstalled [in] callback The callback function to be invoked [in] user_data The user data to be passed to the callback function [out] id The ID of the request to the package manager
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_PERMISSION_DENIED Permission denied
int package_manager_request_unset_event_cb | ( | package_manager_request_h | request | ) |
Unregisters the callback function.
- Warning:
- This is not for use by third-party applications.
- Since :
- 2.3
- Parameters:
-
[in] request The request handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter
int package_manager_updateinfo_request_create | ( | package_updateinfo_request_h * | pkg_updateinfo_req | ) |
Creates a package update info request.
- Warning:
- This is not for use by third-party applications.
- Since :
- 4.0
- Privilege Level:
- platform
- Privilege:
- http://tizen.org/privilege/packagemanager.admin
- Remarks:
- You must release pkg_updateinfo_req using package_manager_updateinfo_request_destroy().
- Parameters:
-
[out] pkg_updateinfo_req The package update info request handle that is newly created on success
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_OUT_OF_MEMORY Out of memory PACKAGE_MANAGER_ERROR_PERMISSION_DENIED Permission denied
int package_manager_updateinfo_request_destroy | ( | package_updateinfo_request_h | pkg_updateinfo_req | ) |
Destroys the package update info request.
- Since :
- 4.0
- Parameters:
-
[in] pkg_updateinfo_req The update info request handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter
int package_manager_updateinfo_request_register | ( | package_updateinfo_request_h | pkg_updateinfo_req | ) |
Request to register package update info in platform.
- Since :
- 4.0
- Parameters:
-
[in] pkg_updateinfo_req The update info request handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_IO_ERROR I/O error PACKAGE_MANAGER_ERROR_SYSTEM_ERROR Severe system error
int package_manager_updateinfo_request_unregister | ( | package_updateinfo_request_h | pkg_updateinfo_req, |
const char * | pkgid | ||
) |
Request to unregister update info in platform for given package id.
- Since :
- 4.0
- Parameters:
-
[in] pkg_updateinfo_req The update info request handle [in] pkgid The package id to request unregister update info
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_IO_ERROR I/O error PACKAGE_MANAGER_ERROR_SYSTEM_ERROR Severe system error
int package_manager_updateinfo_request_unregister_all | ( | package_updateinfo_request_h | pkg_updateinfo_req | ) |
Request to unregister update info of all packages in platform.
- Since :
- 4.0
- Parameters:
-
[in] pkg_updateinfo_req The update info request handle
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter PACKAGE_MANAGER_ERROR_IO_ERROR I/O error PACKAGE_MANAGER_ERROR_SYSTEM_ERROR Severe system error
int package_manager_updateinfo_set_pkgid | ( | package_updateinfo_request_h | pkg_updateinfo_req, |
const char * | pkgid | ||
) |
Sets the package ID to the package update info request.
- Since :
- 4.0
- Parameters:
-
[in] pkg_updateinfo_req The update info request handle [in] pkgid The package ID
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_OUT_OF_MEMORY Out of memory PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter
int package_manager_updateinfo_set_type | ( | package_updateinfo_request_h | pkg_updateinfo_req, |
package_updateinfo_type_e | type | ||
) |
Sets the package update type to the package update info request.
- Since :
- 4.0
- Parameters:
-
[in] pkg_updateinfo_req The update info request handle [in] type The package update type
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter
int package_manager_updateinfo_set_version | ( | package_updateinfo_request_h | pkg_updateinfo_req, |
const char * | version | ||
) |
Sets the package version to the package update info request.
- Since :
- 4.0
- Parameters:
-
[in] pkg_updateinfo_req The update info request handle [in] version The package version
- Returns:
0
on success, otherwise a negative error value
- Return values:
-
PACKAGE_MANAGER_ERROR_NONE Successful PACKAGE_MANAGER_ERROR_OUT_OF_MEMORY Out of memory PACKAGE_MANAGER_ERROR_INVALID_PARAMETER Invalid parameter