鴻蒙OS IBundleManager

2022-04-22 15:09 更新

IBundleManager

public interface IBundleManagerextends IRemoteBroker

獲取與應(yīng)用程序包相關(guān)的信息。

字段摘要

修飾符和類型 字段 描述
static int ERROR_CODE_DOWNLOAD_FAILED 表示下載失敗
static int ERROR_CODE_INSTALL_FAILED 表示安裝失敗
static int ERROR_CODE_QUERY_FAILED 表示查詢失敗
static int GET_ABILITY_INFO_WITH_APPLICATION 表示要返回的捆綁信息包括 AbilityInfo 中的應(yīng)用程序信息。
static int GET_ABILITY_INFO_WITH_PERMISSION 表示要返回的捆綁信息包括 AbilityInfo 中的權(quán)限信息。
static int GET_APPLICATION_INFO_WITH_PERMISSION 表示要返回的捆綁信息包括 ApplicationInfo 中的權(quán)限信息。
static int GET_BUNDLE_DEFAULT 表示要返回的捆綁包信息不包括ability信息。
static int GET_BUNDLE_WITH_ABILITIES 表示要返回的捆綁包信息包括能力信息。
static int GET_BUNDLE_WITH_REQUESTED_PERMISSION 表示要返回的捆綁信息包括請求的權(quán)限信息。
static int PERMISSION_DENIED 表示應(yīng)用程序沒有特定權(quán)限。
static int PERMISSION_GRANTED 表示應(yīng)用程序已被授予特定權(quán)限。
static int QUERY_SHORTCUT_HOME 查詢主頁快捷方式的標(biāo)志。
static int SHORTCUT_EXISTENCE_EXISTS 表示存在快捷方式。
static int SHORTCUT_EXISTENCE_NOT_EXISTS 表示該快捷方式不存在。
static int SHORTCUT_EXISTENCE_UNKNOW 表示存在未知快捷方式。
static int SIGNATURE_MATCHED 表示兩個(gè)捆綁包具有相同的簽名。
static int SIGNATURE_NOT_MATCHED 表示兩個(gè)捆綁包具有不同的簽名。
static int SIGNATURE_UNKNOWN_BUNDLE 表示系統(tǒng)中未安裝兩個(gè)捆綁包之一。

方法總結(jié)

修飾符和類型 方法 描述
boolean addHomeShortcut(ShortcutInfo shortcutInfo) 添加將固定在主屏幕上的主屏幕快捷方式。
int checkPermission(String bundleName, String permission) 檢查指定的包是否已被授予特定權(quán)限。
int checkPublicKeys(String firstBundleName, String secondBundleName) 檢查兩個(gè)捆綁包的公鑰是否相同。
void cleanBundleCacheFiles(String bundleName, ICleanCacheCallback callback) 清除指定應(yīng)用程序的緩存數(shù)據(jù)。
void disableHomeShortcuts(ListString shortcutIds) 禁用不再使用的指定主屏幕快捷方式。
void enableHomeShortcuts(ListString shortcutIds) 啟用指定的主屏幕快捷方式。
int executeBackupTask(int sessionId, String taskCmd) 執(zhí)行備份或恢復(fù)任務(wù)。
int finishBackupSession(int sessionId) 完成備份或恢復(fù)會話。
PixelMap getAbilityIcon(String bundleName, String className) 獲取指定ability的圖標(biāo)。
String getAbilityLabel(String bundleName, String className) 獲取指定ability的標(biāo)簽。
default ListFormInfo getAllForms() 已棄用。 請改用 getAllFormsInfo()。
ListFormInfo getAllFormsInfo() 獲取設(shè)備上所有ohos應(yīng)用提供的FormInfo對象。
OptionalListPermissionGroupDef getAllPermissionGroupDefs() 獲取系統(tǒng)中所有已知的權(quán)限組。
ApplicationInfo getApplicationInfo(String bundleName, int flags, int userId) 根據(jù)給定的包名稱獲取 ApplicationInfo。
ListApplicationInfo getApplicationInfos(int flags, int userId) 獲取指定用戶的所有已安裝應(yīng)用程序的信息。
ListString getAppsGrantedPermissions(String[] permissions) 獲取具有指定權(quán)限的應(yīng)用程序列表。
String getAppType(String bundleName) 根據(jù)給定的包名稱獲取指定應(yīng)用程序的類型。
BundleInfo getBundleArchiveInfo(String hapFilePath, int flags) 獲取有關(guān) ohos ability包 (HAP) 中包含的應(yīng)用程序包的信息。
int[] getBundleGids(String bundleName) 獲取與指定捆綁包關(guān)聯(lián)的所有組 ID 的數(shù)組。
BundleInfo getBundleInfo(String bundleName, int flags) 根據(jù)給定的包名稱獲取 BundleInfo。
BundleInfo getBundleInfo(String networkId, String bundleName, int flags) 根據(jù)給定的 networkId 和包名稱獲取 BundleInfo。
ListBundleInfo getBundleInfos(int flags) 獲取系統(tǒng)中所有可用捆綁包的 BundleInfo。
IBundleInstaller getBundleInstaller() 獲取用于安裝 bundle 的接口。
ListString getBundlesForUid(int uid) 根據(jù)給定的應(yīng)用程序 UID 獲取指定應(yīng)用程序的所有捆綁包名稱。
boolean getClearUserDataFlag(String bundleName, String moduleName) 根據(jù)給定的包名稱獲取指定應(yīng)用程序的類型。
default ListFormInfo getFormsByApp(String bundleName) 已棄用。 請改用 getFormsInfoByApp(java.lang.String) 。
default ListFormInfo getFormsByModule(String bundleName, String moduleName) 已棄用。 請改用 getFormsInfoByModule(java.lang.String,java.lang.String) 。
ListFormInfo getFormsInfoByApp(String bundleName) 獲取設(shè)備上指定的ohos應(yīng)用提供的FormInfo對象。
ListFormInfo getFormsInfoByModule(String bundleName, String moduleName) 獲取設(shè)備上指定應(yīng)用模塊提供的FormInfo對象。
ListShortcutInfo getHomeShortcutInfos() 獲取所有主屏幕快捷方式。
Intent getLaunchIntentForBundle(String bundleName) 根據(jù)給定的包名稱獲取啟動應(yīng)用程序主要功能的意圖。
AbilityInfo getModuleMainAbility(String bundleName, String moduleName) 通過 bundleName 和 moduleName 獲取 mainAbility 信息。
String getNameForUid(int uid) 獲取與給定 UID 關(guān)聯(lián)的正式名稱。
PermissionDef getPermissionDef(String permissionName) 獲取指定權(quán)限的詳細(xì)信息。
OptionalListPermissionDef getPermissionDefByGroup(String permissionGroupName) 獲取指定權(quán)限組中所有權(quán)限的信息。
OptionalPermissionGroupDef getPermissionGroupDef(String permissionGroupName) 獲取指定權(quán)限組的信息。
ListShortcutInfo getShortcutInfos(String bundleName) 獲取有關(guān)應(yīng)用程序快捷方式的信息。
ListString getSystemAvailableCapabilities() 獲取系統(tǒng)中可用的ability。
int getUidByBundleName(String bundleName, int userId) 根據(jù)給定的包名稱和用戶 ID 獲取應(yīng)用程序 UID。
boolean hasSystemCapability(String name) 檢查系統(tǒng)是否具有指定的ability。
boolean isAbilityEnabled(AbilityInfo abilityInfo) 檢查是否啟用了指定的ability。
boolean isApplicationEnabled(String bundleName) 檢查是否啟用了指定的應(yīng)用程序。
boolean isHomeShortcutSupported() 檢查是否可以將快捷方式添加到應(yīng)用程序所在的主屏幕。
boolean isSafeMode() 檢查當(dāng)前設(shè)備是否已在安全模式下啟動。
boolean isShortcutExist(String shortcutId) 檢查指定的快捷方式是否可用。
int isShortcutExist(String shortcutId, int flag) 檢查指定的快捷方式是否可用。
ListAbilityInfo queryAbilityByIntent(Intent intent, int flags, int userId) 根據(jù)給定的意圖查詢所有 AbilityInfo 信息。
void registerAllPermissionsChanged(IRemoteObject callback) 注冊一個(gè)回調(diào)來監(jiān)聽所有 UID 的權(quán)限變化。
void registerPermissionsChanged(int[] uids, IRemoteObject callback) 注冊一個(gè)回調(diào),用于監(jiān)聽指定 UID 的權(quán)限變化。
void setAbilityEnabled(AbilityInfo abilityInfo, boolean isEnabled) 設(shè)置是否啟用指定的能力。
void setApplicationEnabled(String bundleName, boolean isEnabled) 設(shè)置是否啟用指定的應(yīng)用程序。
boolean setClearUserDataFlag(String packageName, boolean flag) 根據(jù)給定的包名稱獲取指定應(yīng)用程序的類型。
boolean setFormEnabled(FormBaseInfo baseInfo, boolean isEnabled) 設(shè)置表單啟用或禁用。
int startBackupSession(IBackupSessionCallback callback) 啟動備份或恢復(fù)會話。
void startShortcut(String shortcutId, String bundleName) 根據(jù)給定的快捷方式 ID 和包名稱啟動快捷方式。
void unregisterPermissionsChanged(IRemoteObject callback) 取消注冊指定的回調(diào)以偵聽權(quán)限更改。
boolean updateShortcuts(ListShortcutInfo shortcutInfos) 更新有關(guān)已添加的指定主屏幕快捷方式的信息。
從接口 ohos.rpc.IRemoteBroker 繼承的方法
asObject

字段詳細(xì)信息

ERROR_CODE_DOWNLOAD_FAILED

static final int ERROR_CODE_DOWNLOAD_FAILED

表示下載失敗

ERROR_CODE_INSTALL_FAILED

static final int ERROR_CODE_INSTALL_FAILED

表示安裝失敗

ERROR_CODE_QUERY_FAILED

static final int ERROR_CODE_QUERY_FAILED

表示查詢失敗

GET_ABILITY_INFO_WITH_APPLICATION

static final int GET_ABILITY_INFO_WITH_APPLICATION

表示要返回的捆綁信息包括 AbilityInfo 中的應(yīng)用程序信息。

值為 0x00000004。

GET_ABILITY_INFO_WITH_PERMISSION

static final int GET_ABILITY_INFO_WITH_PERMISSION

表示要返回的捆綁信息包括 AbilityInfo 中的權(quán)限信息。

值為 0x00000002。

GET_APPLICATION_INFO_WITH_PERMISSION

static final int GET_APPLICATION_INFO_WITH_PERMISSION

表示要返回的捆綁信息包括 ApplicationInfo 中的權(quán)限信息。

值為 0x00000008。

GET_BUNDLE_DEFAULT

static final int GET_BUNDLE_DEFAULT

表示要返回的捆綁包信息不包括ability信息。

值為 0x00000000。

GET_BUNDLE_WITH_ABILITIES

static final int GET_BUNDLE_WITH_ABILITIES

表示要返回的捆綁包信息包括ability信息。

值為 0x00000001。

GET_BUNDLE_WITH_REQUESTED_PERMISSION

static final int GET_BUNDLE_WITH_REQUESTED_PERMISSION

表示要返回的捆綁信息包括請求的權(quán)限信息。

值為 0x00000010。

PERMISSION_DENIED

static final int PERMISSION_DENIED

表示應(yīng)用程序沒有特定權(quán)限。

權(quán)限檢查時(shí),如果應(yīng)用程序沒有特定權(quán)限或其他原因檢查失敗,則返回該值。

PERMISSION_GRANTED

static final int PERMISSION_GRANTED

表示應(yīng)用程序已被授予特定權(quán)限。

在權(quán)限檢查時(shí),如果應(yīng)用程序已經(jīng)擁有特定權(quán)限,則返回此值。 否則,返回 PERMISSION_DENIED。

QUERY_SHORTCUT_HOME

static final int QUERY_SHORTCUT_HOME

查詢主頁快捷方式的標(biāo)志。

SHORTCUT_EXISTENCE_EXISTS

static final int SHORTCUT_EXISTENCE_EXISTS

表示存在快捷方式。

SHORTCUT_EXISTENCE_NOT_EXISTS

static final int SHORTCUT_EXISTENCE_NOT_EXISTS

表示該快捷方式不存在。

SHORTCUT_EXISTENCE_UNKNOW

static final int SHORTCUT_EXISTENCE_UNKNOW

表示存在未知快捷方式。

SIGNATURE_MATCHED

static final int SIGNATURE_MATCHED

表示兩個(gè)捆綁包具有相同的簽名。

SIGNATURE_NOT_MATCHED

static final int SIGNATURE_NOT_MATCHED

表示兩個(gè)捆綁包具有不同的簽名。

SIGNATURE_UNKNOWN_BUNDLE

static final int SIGNATURE_UNKNOWN_BUNDLE

表示系統(tǒng)中未安裝兩個(gè)捆綁包之一。

方法詳情

getBundleInfo

BundleInfo getBundleInfo(String bundleName, int flags) throws RemoteException

根據(jù)給定的包名稱獲取 BundleInfo。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 權(quán)限。 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限為簽名|特權(quán)級別, ohos.permission.GET_BUNDLE_INFO 權(quán)限為普通級別。

要返回的 BundleInfo 對象中包含的信息取決于 flags 參數(shù)的值。

  • 0x00000000: 返回基本的 BundleInfo 對象。
  • 0x00000001: 返回指定了ability信息的 BundleInfo 對象。
  • Other value: 返回與 0x00000000 相同的結(jié)果。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示要查詢的應(yīng)用程序包名稱。
flags 指示用于指定將返回的 BundleInfo 中包含的信息的標(biāo)志。

返回:

返回 BundleInfo 對象。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

getBundleInfo

BundleInfo getBundleInfo(String networkId, String bundleName, int flags) throws RemoteException

根據(jù)給定的 networkId 和包名稱獲取 BundleInfo。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 權(quán)限。 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限為簽名|特權(quán)級別, ohos.permission.GET_BUNDLE_INFO 權(quán)限為普通級別。

要返回的 BundleInfo 對象中包含的信息取決于 flags 參數(shù)的值。

  • 0x00000000: 返回基本的 BundleInfo 對象。
  • 0x00000001: 返回指定了ability信息的 BundleInfo 對象。
  • Other value: 返回與 0x00000000 相同的結(jié)果。

參數(shù):

參數(shù)名稱 參數(shù)描述
networkId 表示局域網(wǎng)中的設(shè)備networkId。
bundleName 指示要查詢的應(yīng)用程序包名稱。
flags 指示用于指定將返回的 BundleInfo 中包含的信息的標(biāo)志。

返回:

返回 BundleInfo 對象。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

getBundleInstaller

IBundleInstaller getBundleInstaller() throws RemoteException

獲取用于安裝 bundle 的接口。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.INSTALL_BUNDLE 權(quán)限。

返回:

返回 IBundleInstaller 接口。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

getApplicationInfo

ApplicationInfo getApplicationInfo(String bundleName, int flags, int userId) throws RemoteException

根據(jù)給定的包名稱獲取 ApplicationInfo。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 權(quán)限。 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限為簽名|特權(quán)級別, ohos.permission.GET_BUNDLE_INFO 權(quán)限為普通級別。

要返回的 ApplicationInfo 對象中包含的信息取決于 flags 參數(shù)的值。

  • 0x00000000: 返回基本的 ApplicationInfo 對象。
  • 0x00000008: 返回具有指定權(quán)限的 ApplicationInfo 對象。
  • Other value: 返回與 0x00000000 相同的結(jié)果。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示要查詢的應(yīng)用程序包名稱。
flags 指示用于指定將返回的 ApplicationInfo 對象中包含的信息的標(biāo)志。
userId 表示用戶標(biāo)識

返回:

返回 ApplicationInfo 對象。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

checkPermission

int checkPermission(String bundleName, String permission)

檢查指定的包是否已被授予特定權(quán)限。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示要檢查的捆綁包的名稱。
permission 表示檢查的權(quán)限。

返回:

如果 bundle 有權(quán)限,則返回 0; 否則返回 -1。

queryAbilityByIntent

ListAbilityInfo queryAbilityByIntent(Intent intent, int flags, int userId) throws RemoteException

根據(jù)給定的意圖查詢所有 AbilityInfo 信息。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 權(quán)限。 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限為簽名|特權(quán)級別, ohos.permission.GET_BUNDLE_INFO 權(quán)限為普通級別。

要返回的 AbilityInfo 對象中包含的信息取決于 flags 參數(shù)的值。

  • 0x00000000: 返回基本 AbilityInfo 對象。
  • 0x00000002: 返回具有指定權(quán)限的 AbilityInfo 對象。
  • 0x00000004: 返回指定 applicationInfo 的 AbilityInfo 對象。
  • Other value: 返回與 0x00000000 相同的結(jié)果。

參數(shù):

參數(shù)名稱 參數(shù)描述
intent 指示包含要查詢的應(yīng)用程序包名稱的 Intent。
flags 指示用于指定將返回的 AbilityInfo 對象中包含的信息的標(biāo)志。
userId 表示用戶標(biāo)識

返回:

返回 AbilityInfo 對象的列表。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

getBundleInfos

ListBundleInfo getBundleInfos(int flags) throws RemoteException

獲取系統(tǒng)中所有可用捆綁包的 BundleInfo。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限。 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限屬于簽名|特權(quán)級別。

要返回的 BundleInfo 對象中包含的信息取決于 flags 參數(shù)的值。

  • 0x00000000: 返回基本的 BundleInfo 對象。
  • 0x00000001: 返回具有指定ability信息的 BundleInfo 對象。
  • Other value: 返回與 0x00000000 相同的結(jié)果。

參數(shù):

參數(shù)名稱 參數(shù)描述
flags 指示用于指定將返回的 BundleInfo 中包含的信息的標(biāo)志。

返回:

返回 BundleInfo 對象的列表。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

getUidByBundleName

int getUidByBundleName(String bundleName, int userId) throws RemoteException

根據(jù)給定的包名稱和用戶 ID 獲取應(yīng)用程序 UID。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 或 ohos.permission.GET_BUNDLE_INFO 權(quán)限。 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限為簽名|特權(quán)級別, ohos.permission.GET_BUNDLE_INFO 權(quán)限為普通級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示應(yīng)用程序的捆綁包名稱。
userId 表示用戶標(biāo)識

Returns:

返回應(yīng)用程序的UID

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

getBundlesForUid

ListString getBundlesForUid(int uid) throws RemoteException

根據(jù)給定的應(yīng)用程序 UID 獲取指定應(yīng)用程序的所有捆綁包名稱。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限。 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限屬于簽名|特權(quán)級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
uid 表示應(yīng)用程序UID

返回:

返回捆綁包名稱的列表。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

registerAllPermissionsChanged

void registerAllPermissionsChanged(IRemoteObject callback) throws RemoteException

注冊一個(gè)回調(diào)來監(jiān)聽所有 UID 的權(quán)限變化。

調(diào)用此方法后,當(dāng)任何 UID 的權(quán)限發(fā)生變化時(shí),都會通知調(diào)用者。 您可以調(diào)用 unregisterPermissionsChanged(ohos.rpc.IRemoteObject) 取消注冊監(jiān)聽器。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.LISTEN_PERMISSION_CHANGE 權(quán)限。 ohos.permission.LISTEN_PERMISSION_CHANGE 權(quán)限屬于簽名|特權(quán)級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
callback 表示要注冊的回調(diào)方法。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

registerPermissionsChanged

void registerPermissionsChanged(int[] uids, IRemoteObject callback) throws RemoteException

注冊一個(gè)回調(diào),用于監(jiān)聽指定 UID 的權(quán)限變化。

調(diào)用該方法后,當(dāng)給定UID的權(quán)限發(fā)生變化時(shí),會通知調(diào)用者。 您可以調(diào)用 unregisterPermissionsChanged(ohos.rpc.IRemoteObject) 取消注冊監(jiān)聽器。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.LISTEN_PERMISSION_CHANGE 權(quán)限。 ohos.permission.LISTEN_PERMISSION_CHANGE 權(quán)限屬于簽名|特權(quán)級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
uids 表示將監(jiān)控其權(quán)限更改的UID列表。
callback 表示要注冊的回調(diào)方法。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

unregisterPermissionsChanged

void unregisterPermissionsChanged(IRemoteObject callback) throws RemoteException

取消注冊指定的回調(diào)以偵聽權(quán)限更改。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.LISTEN_PERMISSION_CHANGE 權(quán)限。 ohos.permission.LISTEN_PERMISSION_CHANGE 權(quán)限屬于簽名|特權(quán)級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
callback 表示要注銷的回調(diào)方法。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

getApplicationInfos

ListApplicationInfo getApplicationInfos(int flags, int userId) throws RemoteException

獲取指定用戶的所有已安裝應(yīng)用程序的信息。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 或 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限。 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限為普通級別, ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限為簽名|特權(quán)級別。

要返回的 ApplicationInfo 對象中包含的信息取決于 flags 參數(shù)的值。

  • 0x00000000: 返回基本的 ApplicationInfo 對象。
  • 0x00000008: 返回具有指定權(quán)限的 ApplicationInfo 對象。
  • Other value: 返回與 0x00000000 相同的結(jié)果。

參數(shù):

參數(shù)名稱 參數(shù)描述
flags 指示用于指定將返回的 ApplicationInfo 對象中包含的信息的標(biāo)志。
userId 表示用戶標(biāo)識

返回:

返回 ApplicationInfo 對象的列表。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

getSystemAvailableCapabilities

ListString getSystemAvailableCapabilities()

獲取系統(tǒng)中可用的能力。

返回:

返回系統(tǒng)中可用功能的列表。

hasSystemCapability

boolean hasSystemCapability(String name)

檢查系統(tǒng)是否具有指定的能力。

參數(shù):

參數(shù)名稱 參數(shù)描述
name 指示要檢查的系統(tǒng)功能的名稱。

返回:

如果 name 指定的給定功能在系統(tǒng)中可用,則返回 true; 否則返回 false。

getBundleGids

int[] getBundleGids(String bundleName)

獲取與指定捆綁包關(guān)聯(lián)的所有組 ID 的數(shù)組。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示應(yīng)用程序的捆綁包名稱。

返回:

返回一個(gè) int 數(shù)組,其中包含與指定捆綁包關(guān)聯(lián)的組 ID。

checkPublicKeys

int checkPublicKeys(String firstBundleName, String secondBundleName) throws RemoteException

檢查兩個(gè)捆綁包的公鑰是否相同。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限。 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限為正常級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
firstBundleName 指示要比較的捆綁包的名稱。
secondBundleName 指示要比較的另一個(gè)捆綁包的名稱。

返回:

如果未找到至少一個(gè)給定的捆綁包,則返回 SIGNATURE_UNKNOWN_BUNDLE; 如果它們的公鑰不同,則返回 SIGNATURE_NOT_MATCHED; 如果它們的公鑰相同,則返回 SIGNATURE_MATCHED。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。

getNameForUid

String getNameForUid(int uid) throws RemoteException

獲取與給定 UID 關(guān)聯(lián)的正式名稱。 正式名稱永遠(yuǎn)不會改變,但 UID 可以。 因此,如果要存儲有關(guān) UID 的信息,則應(yīng)存儲其正式名稱而不是原始 UID。

參數(shù):

參數(shù)名稱 參數(shù)描述
uid 表示應(yīng)用程序的UID。

返回:

如果在 config.json 文件中配置了 shared-userid,則以 shared-userid:uid 格式返回與 UID 關(guān)聯(lián)的唯一名稱; 否則返回包名。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。

getBundleArchiveInfo

BundleInfo getBundleArchiveInfo(String hapFilePath, int flags)

獲取有關(guān) ohos ability包 (HAP) 中包含的應(yīng)用程序包的信息。

要返回的 BundleInfo 對象中包含的信息取決于 flags 參數(shù)的值。

  • 0x00000000: 返回基本的 BundleInfo 對象。
  • 0x00000001: 返回指定了ability信息的 BundleInfo 對象。
  • Other value: 返回與 0x00000000 相同的結(jié)果。

參數(shù):

參數(shù)名稱 參數(shù)描述
hapFilePath HAP存儲路徑。 路徑應(yīng)該是當(dāng)前應(yīng)用程序數(shù)據(jù)目錄的相對路徑。
flags 指示用于指定要返回的 BundleInfo 對象中包含的信息的標(biāo)志。

返回:

返回 BundleInfo 對象。

isSafeMode

boolean isSafeMode()

檢查當(dāng)前設(shè)備是否已在安全模式下啟動。

返回:

如果設(shè)備處于安全模式,則返回 true; 否則返回 false。

getLaunchIntentForBundle

Intent getLaunchIntentForBundle(String bundleName) throws RemoteException

根據(jù)給定的包名稱獲取啟動應(yīng)用程序主要功能的意圖。 應(yīng)用程序的主要ability是在應(yīng)用程序的 config.json 文件中設(shè)置 Intent.ACTION_HOME 和 Intent.ENTITY_HOME intent過濾器的ability。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限。 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限屬于簽名|特權(quán)級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示應(yīng)用程序的捆綁包名稱。

返回:

返回啟動應(yīng)用程序主要ability的intent(如果有); 如果給定的捆綁包不存在或不包含任何主要ability,則返回 null。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

setApplicationEnabled

void setApplicationEnabled(String bundleName, boolean isEnabled) throws IllegalArgumentException

設(shè)置是否啟用指定的應(yīng)用程序。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.CHANGE_ABILITY_ENABLED_STATE 權(quán)限。 ohos.permission.CHANGE_ABILITY_ENABLED_STATE 權(quán)限屬于簽名|特權(quán)級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示應(yīng)用程序的捆綁包名稱。
isEnabled 指定是否啟用應(yīng)用程序。 值 true 表示啟用它,值 false 表示禁用它。

Throws:

Throw名稱 Throw描述
IllegalArgumentException 如果給定的包不存在,則拋出此異常。
SecurityException 引發(fā)此異常以指示安全違規(guī)。

setAbilityEnabled

void setAbilityEnabled(AbilityInfo abilityInfo, boolean isEnabled) throws IllegalArgumentException

設(shè)置是否啟用指定的ability。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.CHANGE_ABILITY_ENABLED_STATE 權(quán)限。 ohos.permission.CHANGE_ABILITY_ENABLED_STATE 權(quán)限屬于簽名|特權(quán)級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
abilityInfo 表示有關(guān)設(shè)置ability的信息。
isEnabled 指定是否啟用該ability。 值 true 表示啟用它,值 false 表示禁用它。

Throws:

Throw名稱 Throw描述
IllegalArgumentException 如果給定的ability不存在,則拋出此異常。
SecurityException 引發(fā)此異常以指示安全違規(guī)。

isApplicationEnabled

boolean isApplicationEnabled(String bundleName) throws IllegalArgumentException

檢查是否啟用了指定的應(yīng)用程序。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示應(yīng)用程序的捆綁包名稱。

返回:

如果應(yīng)用程序已啟用,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
IllegalArgumentException 如果給定的包不存在,則拋出此異常。

isAbilityEnabled

boolean isAbilityEnabled(AbilityInfo abilityInfo) throws IllegalArgumentException

檢查是否啟用了指定的ability。

參數(shù):

參數(shù)名稱 參數(shù)描述
abilityInfo 表示有關(guān)檢查ability的信息。

返回:

如果啟用該能力,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
IllegalArgumentException 如果給定的ability不存在,則拋出此異常。

startBackupSession

int startBackupSession(IBackupSessionCallback callback)

啟動備份或恢復(fù)會話。 應(yīng)該在執(zhí)行備份或恢復(fù)任務(wù)之前調(diào)用此方法。

參數(shù):

參數(shù)名稱 參數(shù)描述
callback 指示用于通知應(yīng)用程序備份或恢復(fù)任務(wù)狀態(tài)的IBackupSessionCallback。

返回:

如果會話成功啟動,則返回一個(gè)正整數(shù),用作進(jìn)一步任務(wù)處理的會話 ID; 如果發(fā)生常見故障,則返回 -1;如果您的應(yīng)用程序無權(quán)調(diào)用此方法,則返回 -2。

executeBackupTask

int executeBackupTask(int sessionId, String taskCmd)

執(zhí)行備份或恢復(fù)任務(wù)。

參數(shù):

參數(shù)名稱 參數(shù)描述
sessionId 指示備份或恢復(fù)任務(wù)的會話 ID。
taskCmd 指示要執(zhí)行的任務(wù)命令。

返回:

任務(wù)啟動成功返回0; 如果發(fā)生常見故障,則返回 -1; 如果您的應(yīng)用程序無權(quán)調(diào)用此方法,則返回 -2; 如果不支持任務(wù)命令,則返回 -3;如果已發(fā)出任務(wù)命令,則返回 -4。

finishBackupSession

int finishBackupSession(int sessionId)

完成備份或恢復(fù)會話。

參數(shù):

參數(shù)名稱 參數(shù)描述
sessionId 指示要完成的會話的 ID。

返回:

如果會話成功結(jié)束,則返回 0; 如果發(fā)生常見故障,則返回 -1; 如果您的應(yīng)用程序無權(quán)調(diào)用此方法,則返回 -2。

getShortcutInfos

ListShortcutInfo getShortcutInfos(String bundleName) throws RemoteException

獲取有關(guān)應(yīng)用程序快捷方式的信息。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 和 ohos.permission.MANAGE_SHORTCUTS 權(quán)限。 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限為普通級別, ohos.permission.MANAGE_SHORTCUTS 權(quán)限為簽名級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示應(yīng)用程序的捆綁包名稱。

返回:

返回包含有關(guān)應(yīng)用程序的快捷方式信息的 ShortcutInfo 對象列表。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

getPermissionDef

PermissionDef getPermissionDef(String permissionName)

獲取指定權(quán)限的詳細(xì)信息。

參數(shù):

參數(shù)名稱 參數(shù)描述
permissionName 表示 ohos 權(quán)限的名稱。

返回:

返回包含有關(guān)給定 ohos 權(quán)限的詳細(xì)信息的 PermissionDef 對象。

getPermissionGroupDef

OptionalPermissionGroupDef getPermissionGroupDef(String permissionGroupName)

獲取指定權(quán)限組的信息。

參數(shù):

參數(shù)名稱 參數(shù)描述
permissionGroupName 權(quán)限組名稱

返回:

返回包含有關(guān)給定權(quán)限組的詳細(xì)信息的 PermissionGroupDef 對象。

getPermissionDefByGroup

OptionalListPermissionDef getPermissionDefByGroup(String permissionGroupName)

獲取指定權(quán)限組中所有權(quán)限的信息。

參數(shù):

參數(shù)名稱 參數(shù)描述
permissionGroupName 權(quán)限組名稱

返回:

返回 PermissionDef 對象,其中包含有關(guān)給定權(quán)限組中所有權(quán)限的詳細(xì)信息。

cleanBundleCacheFiles

void cleanBundleCacheFiles(String bundleName, ICleanCacheCallback callback)

清除指定應(yīng)用程序的緩存數(shù)據(jù)。

要使用此方法,您的應(yīng)用程序必須已獲得 ohos.permission.REMOVE_CACHE_FILES 權(quán)限。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 表示要清除緩存數(shù)據(jù)的應(yīng)用的bundle名稱。
callback 表示為返回操作結(jié)果而調(diào)用的回調(diào)。 有關(guān)詳細(xì)信息,請參閱 ICleanCacheCallback。

Throws:

Throw名稱 Throw描述
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

startShortcut

void startShortcut(String shortcutId, String bundleName) throws RemoteException

根據(jù)給定的快捷方式 ID 和包名稱啟動快捷方式。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.MANAGE_SHORTCUTS 權(quán)限。 ohos.permission.MANAGE_SHORTCUTS 權(quán)限屬于簽名級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
shortcutId 指示要啟動的快捷方式的 ID。
bundleName BundleName 表示快捷方式所屬的應(yīng)用程序的包名。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 如果您的應(yīng)用程序沒有所需的權(quán)限,則引發(fā)此異常。

getAppType

String getAppType(String bundleName) throws RemoteException

根據(jù)給定的包名稱獲取指定應(yīng)用程序的類型。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限。 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限為正常級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示應(yīng)用程序的捆綁包名稱。

返回:

如果應(yīng)用程序是系統(tǒng)應(yīng)用程序,則返回系統(tǒng); 如果在 Ohos AppGallery 中發(fā)布,則返回正常; 如果由第三方供應(yīng)商發(fā)布,則返回其他; 如果查詢失敗,則返回一個(gè)空字符串。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。

isShortcutExist

int isShortcutExist(String shortcutId, int flag)

檢查指定的快捷方式是否可用。

參數(shù):

參數(shù)名稱 參數(shù)描述
shortcutId 表示要檢查的快捷方式的ID。
flag 指示要檢查的快捷方式的類型。 目前,只有主屏幕快捷方式 IBundleManager#QUERY_SHORTCUT_HOME 可用。

返回:

如果指定的快捷方式可用,則返回 IBundleManager#SHORTCUT_EXISTENCE_EXISTS; 如果不可用,則返回 IBundleManager#SHORTCUT_EXISTENCE_NOT_EXISTS; 如果發(fā)生錯(cuò)誤,則返回 IBundleManager.SHORTCUT_EXISTENCE_UNKNOW。

isShortcutExist

boolean isShortcutExist(String shortcutId)

檢查指定的快捷方式是否可用。

參數(shù):

參數(shù)名稱 參數(shù)描述
shortcutId 表示要檢查的快捷方式的ID。

返回:

如果指定的快捷方式可用,則返回 true; 否則返回 false。

isHomeShortcutSupported

boolean isHomeShortcutSupported()

檢查是否可以將快捷方式添加到應(yīng)用程序所在的主屏幕。

返回:

如果可以將快捷方式添加到主屏幕,則返回 true; 否則返回 false。

addHomeShortcut

boolean addHomeShortcut(ShortcutInfo shortcutInfo) throws IllegalArgumentException, IllegalStateException

添加將固定在主屏幕上的主屏幕快捷方式。

參數(shù):

參數(shù)名稱 參數(shù)描述
shortcutInfo 指示包含有關(guān)要添加的主屏幕快捷方式信息的 ShortcutInfo 對象。 必須指定此參數(shù)的 id、label 和 intent 屬性。

返回:

如果快捷方式添加成功,則返回 true; 否則返回 false。

Throws:

Throw名稱 Throw描述
IllegalArgumentException 如果shortcutInfo 參數(shù)的id、label 或intents 屬性為null,或者要添加的快捷方式已存在但被禁用,則引發(fā)此異常。
IllegalStateException 如果調(diào)用應(yīng)用程序在后臺運(yùn)行,則引發(fā)此異常。

updateShortcuts

boolean updateShortcuts(ListShortcutInfo shortcutInfos)

更新有關(guān)已添加的指定主屏幕快捷方式的信息。

參數(shù):

參數(shù)名稱 參數(shù)描述
shortcutInfos 指示要更新的快捷方式列表。

返回:

如果操作成功,則返回 true; 否則返回 false。

disableHomeShortcuts

void disableHomeShortcuts(ListString shortcutIds) throws IllegalArgumentException

禁用不再使用的指定主屏幕快捷方式。

參數(shù):

參數(shù)名稱 參數(shù)描述
shortcutIds 指示要禁用的快捷方式 ID 列表。

Throws:

Throw名稱 Throw描述
IllegalArgumentException 如果在 shortcutIds 中指定了靜態(tài)快捷方式,則引發(fā)此異常。

enableHomeShortcuts

void enableHomeShortcuts(ListString shortcutIds) throws IllegalArgumentException

啟用指定的主屏幕快捷方式。

參數(shù):

參數(shù)名稱 參數(shù)描述
shortcutIds 指示要啟用的快捷方式 ID 列表。

Throws:

Throw名稱 Throw描述
IllegalArgumentException 如果在 shortcutIds 中指定了靜態(tài)快捷方式,則引發(fā)此異常。

getHomeShortcutInfos

ListShortcutInfo getHomeShortcutInfos()

獲取所有主屏幕快捷方式

返回:

返回所有主屏幕快捷方式的列表。

getAllPermissionGroupDefs

OptionalListPermissionGroupDef getAllPermissionGroupDefs()

獲取系統(tǒng)中所有已知的權(quán)限組。

返回:

返回包含權(quán)限組信息的 PermissionGroupDef 對象列表。

getAppsGrantedPermissions

ListString getAppsGrantedPermissions(String[] permissions) throws RemoteException

獲取具有指定權(quán)限的應(yīng)用程序列表。

權(quán)限:SystemPermission.GET_BUNDLE_INFO_PRIVILEGED

參數(shù):

參數(shù)名稱 參數(shù)描述
permissions 表示權(quán)限數(shù)組。

返回:

返回具有指定權(quán)限的應(yīng)用程序列表。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。
SecurityException 引發(fā)此異常以指示安全違規(guī)。

getAbilityIcon

PixelMap getAbilityIcon(String bundleName, String className) throws RemoteException

獲取指定能力的圖標(biāo)。

權(quán)限:SystemPermission.GET_BUNDLE_INFO、SystemPermission.GET_BUNDLE_INFO_PRIVILEGED

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 表示該ability所屬的應(yīng)用程序的捆綁包名稱。
className 表示ability的類名。

返回:

返回表示指定ability圖標(biāo)的 PixelMap 對象。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。

getAbilityLabel

String getAbilityLabel(String bundleName, String className) throws RemoteException

獲取指定ability的標(biāo)簽。

權(quán)限:SystemPermission.GET_BUNDLE_INFO、SystemPermission.GET_BUNDLE_INFO_PRIVILEGED

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 表示該ability所屬的應(yīng)用程序的捆綁包名稱。
className 表示ability的類名。

返回:

返回表示指定ability的標(biāo)簽。

Throws:

Throw名稱 Throw描述
RemoteException 如果系統(tǒng)無法獲取捆綁管理器服務(wù),則拋出此異常。

getAllFormsInfo

ListFormInfo getAllFormsInfo() throws RemoteException

獲取設(shè)備上所有ohos應(yīng)用提供的FormInfo對象。

權(quán)限:SystemPermission.GET_BUNDLE_INFO_PRIVILEGED

返回:

如果獲得,則返回 FormInfo 對象的列表; 如果設(shè)備上沒有可用的 FormInfo,則返回一個(gè)空列表。

Throws:

Throw名稱 Throw描述
RemoteException 如果由于應(yīng)用程序和包管理器服務(wù)之間的連接錯(cuò)誤而無法獲取 FormInfo,則拋出此異常。
SecurityException 如果未授予應(yīng)用程序 SystemPermission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限,則引發(fā)此異常。

getAllForms

@Deprecated default ListFormInfo getAllForms() throws RemoteException

已棄用。 請改用 getAllFormsInfo()。

獲取設(shè)備上所有ohos應(yīng)用提供的FormInfo對象。

權(quán)限:SystemPermission.GET_BUNDLE_INFO_PRIVILEGED

返回:

如果獲得,則返回 FormInfo 對象的列表; 如果設(shè)備上沒有可用的 FormInfo,則返回一個(gè)空列表。

Throws:

Throw名稱 Throw描述
RemoteException 如果由于應(yīng)用程序和包管理器服務(wù)之間的連接錯(cuò)誤而無法獲取 FormInfo,則拋出此異常。
SecurityException 如果未授予應(yīng)用程序 SystemPermission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限,則引發(fā)此異常。

getFormsInfoByApp

ListFormInfo getFormsInfoByApp(String bundleName) throws RemoteException

獲取設(shè)備上指定的ohos應(yīng)用提供的FormInfo對象。 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限是簽名|特權(quán)級別, ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限是普通級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示 ohos 應(yīng)用程序的捆綁包名稱。 具體來說,它是在 Harmony 應(yīng)用程序的 config.json 文件的 app 標(biāo)簽中定義的 bundleName 屬性的值。

返回:

如果獲得,則返回 FormInfo 對象的列表; 如果指定的應(yīng)用程序沒有提供 FormInfo,則返回一個(gè)空列表。

Throws:

Throw名稱 Throw描述
RemoteException 如果由于應(yīng)用程序和包管理器服務(wù)之間的連接錯(cuò)誤而無法獲取 FormInfo,則拋出此異常。
SecurityException 如果未授予應(yīng)用程序 SystemPermission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限,則引發(fā)此異常。

getFormsByApp

@Deprecated default ListFormInfo getFormsByApp(String bundleName) throws RemoteException

已棄用。 請改用 getFormsInfoByApp(java.lang.String) 。

獲取設(shè)備上指定的ohos應(yīng)用提供的FormInfo對象。

權(quán)限:SystemPermission.GET_BUNDLE_INFO_PRIVILEGED

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示 ohos 應(yīng)用程序的捆綁包名稱。 具體來說,它是在 Harmony 應(yīng)用程序的 config.json 文件的 app 標(biāo)簽中定義的 bundleName 屬性的值。

返回:

如果獲得,則返回 FormInfo 對象的列表; 如果指定的應(yīng)用程序沒有提供 FormInfo,則返回一個(gè)空列表。

Throws:

Throw名稱 Throw描述
RemoteException 如果由于應(yīng)用程序和包管理器服務(wù)之間的連接錯(cuò)誤而無法獲取 FormInfo,則拋出此異常。
SecurityException 如果未授予應(yīng)用程序 SystemPermission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限,則引發(fā)此異常。

getFormsInfoByModule

ListFormInfo getFormsInfoByModule(String bundleName, String moduleName) throws RemoteException

獲取設(shè)備上指定應(yīng)用模塊提供的FormInfo對象。 ohos.permission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限是簽名|特權(quán)級別, ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限是普通級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示 ohos 應(yīng)用程序的捆綁包名稱。 具體來說,它是在 Harmony 應(yīng)用程序的 config.json 文件的 app 標(biāo)簽中定義的 bundleName 屬性的值。
moduleName 表示 ohos 應(yīng)用的模塊名稱。 具體來說,它是 Harmony 應(yīng)用程序的 config.json 文件的模塊標(biāo)簽中定義的 distro 屬性的 moduleName 子屬性的值。

返回:

如果獲得,則返回 FormInfo 對象的列表; 如果指定的應(yīng)用程序模塊沒有提供 FormInfo,則返回一個(gè)空列表。

Throws:

Throw名稱 Throw描述
RemoteException 如果由于應(yīng)用程序和包管理器服務(wù)之間的連接錯(cuò)誤而無法獲取 FormInfo,則拋出此異常。
SecurityException 如果未授予應(yīng)用程序 SystemPermission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限,則引發(fā)此異常。

getFormsByModule

@Deprecated default ListFormInfo getFormsByModule(String bundleName, String moduleName) throws RemoteException

已棄用。 請改用 getFormsInfoByModule(java.lang.String,java.lang.String) 。

獲取設(shè)備上指定應(yīng)用模塊提供的FormInfo對象。

權(quán)限:SystemPermission.GET_BUNDLE_INFO_PRIVILEGED

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示 ohos 應(yīng)用程序的捆綁包名稱。 具體來說,它是在 Harmony 應(yīng)用程序的 config.json 文件的 app 標(biāo)簽中定義的 bundleName 屬性的值。
moduleName 表示 ohos 應(yīng)用的模塊名稱。 具體來說,它是 Harmony 應(yīng)用程序的 config.json 文件的模塊標(biāo)簽中定義的 distro 屬性的 moduleName 子屬性的值。

返回:

如果獲得,則返回 FormInfo 對象的列表; 如果指定的應(yīng)用程序模塊沒有提供 FormInfo,則返回一個(gè)空列表。

Throws:

Throw名稱 Throw描述
RemoteException 如果由于應(yīng)用程序和包管理器服務(wù)之間的連接錯(cuò)誤而無法獲取 FormInfo,則拋出此異常。
SecurityException 如果未授予應(yīng)用程序 SystemPermission.GET_BUNDLE_INFO_PRIVILEGED 權(quán)限,則引發(fā)此異常。

getModuleMainAbility

AbilityInfo getModuleMainAbility(String bundleName, String moduleName) throws RemoteException

通過 bundleName 和 moduleName 獲取 mainAbility 信息。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示 ohos 應(yīng)用程序的捆綁包名稱。
moduleName 表示 ohos 應(yīng)用的模塊名稱。

返回:

匹配 bundleName 和 moduleName 的能力信息信息。

Throws:

Throw名稱 Throw描述
RemoteException 函數(shù) sendRequest 可能會拋出 RemoteException。

getClearUserDataFlag

boolean getClearUserDataFlag(String bundleName, String moduleName)

根據(jù)給定的包名稱獲取指定應(yīng)用程序的類型。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限。 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限為正常級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
bundleName 指示 ohos 應(yīng)用程序的捆綁包名稱。
moduleName 表示 ohos 應(yīng)用的模塊名稱。

返回:

如果操作成功執(zhí)行,則為 true,否則為 false 或未找到模塊。

setClearUserDataFlag

boolean setClearUserDataFlag(String packageName, boolean flag)

根據(jù)給定的包名稱獲取指定應(yīng)用程序的類型。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限。 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限為正常級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
packageName 表示應(yīng)用程序的包名。
flag 指示要清除的標(biāo)志。

返回:

如果操作更新成功,則為 true,否則為 false。

setFormEnabled

boolean setFormEnabled(FormBaseInfo baseInfo, boolean isEnabled) throws IllegalArgumentException, RemoteException, SecurityException

設(shè)置表單啟用或禁用。

要使用此方法,您需要向系統(tǒng)請求 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限。 ohos.permission.GET_OTHER_USERS_BUNDLE_INFO 權(quán)限為正常級別。

參數(shù):

參數(shù)名稱 參數(shù)描述
FormBaseInfo 表格信息
isEnabled 表單是否啟用

返回:

受信任的捆綁包名稱。

Throws:

Throw名稱 Throw描述
IllegalArgumentException 如果 FormBaseInfo 無效。
RemoteException 如果應(yīng)用程序和包管理器服務(wù)之間的連接錯(cuò)誤。
SecurityException 如果表單不屬于調(diào)用者。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號