PMS
Overview
Manages permissions.
This module provides interfaces for managing permissions of third-party applications.
Since:
1.0
Version:
1.0
Summary
Files
Functions
CheckPermission (int taskID, const char permissionName) |
Checks whether the caller (generally a third-party application) has a specified permission of a system service API. |
QueryPermission (const char identifier, PermissionSaved *permissions, int permNum) |
Queries all permissions requested by the application and checks whether these permissions are granted. |
GrantPermission (const char identifier, const char permName) |
|
RevokePermission (const char identifier, const char permName) |
|
GrantRuntimePermission (int taskID, const char permissionName) |
|
RequestPermission (int taskID, const char permissionName) |
Details
Function Documentation
CheckPermission()
int CheckPermission (int taskID, const char * permissionName )
Description:
Checks whether the caller (generally a third-party application) has a specified permission of a system service API.
Parameters:
taskId | Indicates the process ID of the caller. The range is [0, INT_MAX]. |
permissionName | Indicates the pointer to the permission name. For details, see the developer documentation. |
Returns:
Returns 1 if the caller has the permission; returns 0 otherwise.
GrantPermission()
int GrantPermission (const char * identifier, const char * permName )
Description:
Grants a specified permission to the application.
Parameters:
identifier | Indicates the pointer to the application bundle name. |
permName | Indicates the pointer to the permission name. For details, see the developer documentation. |
Returns:
Returns 0 if the permission is successfully granted; returns an error code defined in PmsErrorCode otherwise.
GrantRuntimePermission()
int GrantRuntimePermission (int taskID, const char * permissionName )
Description:
Grants a specified runtime permission to an application.
This function applies to sensitive permissions that can be granted to the application only when the application is running.
Parameters:
taskId | Indicates the process ID of the application. The range is [0, INT_MAX]. |
permissionName | Indicates the pointer to the permission name. For details, see the developer documentation. |
Returns:
Returns 0 if the permission is successfully granted; returns an error code defined in PmsErrorCode otherwise.
QueryPermission()
int QueryPermission (const char * identifier, [PermissionSaved]($api-api-SmartVision-Devices-PermissionSaved.md) ** permissions, int * permNum )
Description:
Queries all permissions requested by the application and checks whether these permissions are granted.
Parameters:
identifier | Indicates the pointer to the application bundle name. |
permissions | Indicates the double pointer to the array of permissions. You need to pass the PermissionSaved pointer and release it after finishing using it. |
permNum | Indicates the pointer to the number of permissions in the array, which is an integer. |
Returns:
Returns 0 if the operation is successful; returns an error code defined in PmsErrorCode otherwise.
RequestPermission()
int RequestPermission (int taskID, const char * permissionName )
Description:
Requests a specified permission.
Parameters:
taskId | Indicates the process ID of the application. The range is [0, INT_MAX]. |
permissionName | Indicates the pointer to the permission name. For details, see the developer documentation. |
Returns:
Returns 0 if the operation is successful; returns an error code defined in PmsErrorCode otherwise.
RevokePermission()
int RevokePermission (const char * identifier, const char * permName )
Description:
Revokes a specified permission from the application.
Parameters:
identifier | Indicates the pointer to the application bundle name. |
permName | Indicates the pointer to the permission name. For details, see the developer documentation. |
Returns:
Returns 0 if the permission is successfully revoked; returns an error code defined in PmsErrorCode otherwise.