提交 8d1b7bee 编写于 作者: S shuaiyutao

update bundle api doc

Signed-off-by: Nshuaiyutao <shuaiyutao1@huawei.com>
上级 6dcb02df
# Bundle模块(JS端SDK接口) # Bundle模块(JS端SDK接口)
## 导入模块 ## 导入模块
``` ```
import bundle from '@ohos.bundle'; import bundle from '@ohos.bundle';
``` ```
## 权限列表 ## 系统能力
SystemCapability.BundleManager.BundleFramework
## 权限列表
## bundle.getApplicationInfo
getApplicationInfo(bundleName: string, bundleFlags: number, userId: number): Promise\<ApplicationInfo>
## bundle.getApplicationInfo
根据给定的bundle名称获取ApplicationInfo,通过Promise获取返回值。
getApplicationInfo(bundleName: string, bundleFlags: number, userId: number): Promise\<ApplicationInfo>
**参数:**
以异步方法根据给定的包名获取ApplicationInfo,使用Promise形式返回结果。
| 名称 | 类型 | 必填 | 描述 |
| ----------- | ------ | ---- | ------------------------------------------------------- | **需要权限:**
| bundleName | string | 是 | 应用名 |
| bundleFlags | number | 是 | 0:返回默认app信息<<br/>8:返回包含permissions的app信息 | ohos.permission.GET_BUNDLE_INFO_PRIVILEGED,ohos.permission.GET_BUNDLE_INFO
| userId | number | 是 | 用户ID |
**参数:**
**返回值:**
| 名称 | 类型 | 必填 | 描述 |
| 类型 | 说明 | | ----------- | ------ | ---- | ------------------------------------------------------------ |
| ----------- | -------- | | bundleName | string | 是 | 要查询的应用程序包名称。 |
| Promise\<ApplicationInfo> | 返回值为Promise对象,Promise中包含应用信息。 | | bundleFlags | number | 是 | 用于指定返回的应用信息对象中包含信息的标记。默认值:0,取值范围:大于等于0 |
| userId | number | 是 | 用户ID |
**示例:**
**返回值:**
```
bundle.getApplicationInfo('com.example.myapplicationInstall', 8, 0).then((data) => { | 类型 | 说明 |
console.info("name: for begin"); | ----------- | -------- |
console.info("name:" + data.name); | Promise\<ApplicationInfo> | Promise形式返回应用程序信息。 |
console.info("bundleName:" + data.bundleName);
console.info("description:" + data.description); **示例:**
console.info("descriptionId:" + data.descriptionId);
console.info("iconPath:" + data.iconPath); ```js
console.info("iconId:" + data.iconId); bundle.getApplicationInfo('com.example.myapplicationInstall', 8, 0).then((data) => {
console.info("label:" + data.label); console.info("name: for begin");
console.info("labelId:" + data.labelId); console.info("name:" + data.name);
console.info("deviceId:" + data.deviceId); console.info("bundleName:" + data.bundleName);
console.info("signatureKey:" + data.signatureKey); console.info("description:" + data.description);
console.info("process:" + data.process); console.info("descriptionId:" + data.descriptionId);
console.info("isSystemApp:" + data.isSystemApp); console.info("iconPath:" + data.iconPath);
console.info("isLauncherApp:" + data.isLauncherApp); console.info("iconId:" + data.iconId);
console.info("supportedModes:" + data.supportedModes); console.info("label:" + data.label);
console.info("labelId:" + data.labelId);
console.info('getApplicationInfo permissions length [' + data.permissions.length + ']'); console.info("deviceId:" + data.deviceId);
for (var j = 0; j < data.permissions.length; j++) { console.info("signatureKey:" + data.signatureKey);
console.info("permissions[" + j + "]:" + data.permissions[j]); console.info("process:" + data.process);
} console.info("isSystemApp:" + data.isSystemApp);
console.info('getApplicationInfo moduleSourceDirs length [' + data.moduleSourceDirs.length + ']'); console.info("isLauncherApp:" + data.isLauncherApp);
for (var j = 0; j < data.moduleSourceDirs.length; j++) { console.info("supportedModes:" + data.supportedModes);
console.info("moduleSourceDirs[" + j + "]:" + data.moduleSourceDirs[j]);
} console.info('getApplicationInfo permissions length [' + data.permissions.length + ']');
console.info('getApplicationInfo moduleInfos length [' + data.moduleInfos.length + ']'); for (var j = 0; j < data.permissions.length; j++) {
for (var j = 0; j < data.moduleInfos.length; j++) { console.info("permissions[" + j + "]:" + data.permissions[j]);
console.info("moduleInfos[" + j + "]moduleName:" + data.moduleInfos[j].moduleName); }
console.info("moduleInfos[" + j + "]moduleSourceDir:" + data.moduleInfos[j].moduleSourceDir); console.info('getApplicationInfo moduleSourceDirs length [' + data.moduleSourceDirs.length + ']');
} for (var j = 0; j < data.moduleSourceDirs.length; j++) {
console.info("entryDir:" + data.entryDir); console.info("moduleSourceDirs[" + j + "]:" + data.moduleSourceDirs[j]);
console.info("codePath:" + data.codePath); }
console.info("dataDir:" + data.dataDir); console.info('getApplicationInfo moduleInfos length [' + data.moduleInfos.length + ']');
console.info("dataBaseDir:" + data.dataBaseDir); for (var j = 0; j < data.moduleInfos.length; j++) {
console.info("cacheDir:" + data.cacheDir); console.info("moduleInfos[" + j + "]moduleName:" + data.moduleInfos[j].moduleName);
}) console.info("moduleInfos[" + j + "]moduleSourceDir:" + data.moduleInfos[j].moduleSourceDir);
``` }
console.info("entryDir:" + data.entryDir);
console.info("codePath:" + data.codePath);
console.info("dataDir:" + data.dataDir);
## bundle.getApplicationInfo console.info("dataBaseDir:" + data.dataBaseDir);
console.info("cacheDir:" + data.cacheDir);
getApplicationInfo(bundleName: string, bundleFlags: number, userId: number, callback: AsyncCallback\<ApplicationInfo>): void })
```
根据给定的bundle名称获取ApplicationInfo,通过回调函数获取返回值。
**参数:**
## bundle.getApplicationInfo
| 名称 | 类型 | 必填 | 描述 |
| ----------- | ------------------------------- | ---- | ------------------------------------------------------- | getApplicationInfo(bundleName: string, bundleFlags: number, userId: number, callback: AsyncCallback\<ApplicationInfo>): void
| bundleName | string | 是 | 应用名 |
| bundleFlags | number | 是 | 0:返回默认app信息<<br/>8:返回包含permissions的app信息 | 以异步方法根据给定的包名获取ApplicationInfo,使用callback形式返回结果。
| userId | number | 是 | 用户ID |
| callback | AsyncCallback\<ApplicationInfo> | 是 | 回调方法 | **需要权限:**
**示例:** ohos.permission.GET_BUNDLE_INFO_PRIVILEGED,ohos.permission.GET_BUNDLE_INFO
``` **参数:**
bundle.getApplicationInfo('com.example.myapplicationInstall', 8, 0, OnReceiveEvent);
| 名称 | 类型 | 必填 | 描述 |
function OnReceiveEvent(err, data) { | ----------- | ------------------------------- | ---- | ------------------------------------------------------------ |
console.info("name: for begin"); | bundleName | string | 是 | 要查询的应用程序包名称。 |
console.info("name:" + data.name); | bundleFlags | number | 是 | 用于指定返回的应用信息对象中包含信息的标记。默认值:0,取值范围:大于等于0 |
console.info("bundleName:" + data.bundleName); | userId | number | 是 | 用户ID |
console.info("description:" + data.description); | callback | AsyncCallback\<ApplicationInfo> | 是 | 程序启动作为入参的回调函数,返回应用程序信息。 |
console.info("descriptionId:" + data.descriptionId);
console.info("iconPath:" + data.iconPath); **示例:**
console.info("iconId:" + data.iconId);
console.info("label:" + data.label); ```js
console.info("labelId:" + data.labelId); bundle.getApplicationInfo('com.example.myapplicationInstall', 8, 0, OnReceiveEvent);
console.info("deviceId:" + data.deviceId);
console.info("signatureKey:" + data.signatureKey); function OnReceiveEvent(err, data) {
console.info("process:" + data.process); console.info("name: for begin");
console.info("isSystemApp:" + data.isSystemApp); console.info("name:" + data.name);
console.info("isLauncherApp:" + data.isLauncherApp); console.info("bundleName:" + data.bundleName);
console.info("supportedModes:" + data.supportedModes); console.info("description:" + data.description);
console.info("descriptionId:" + data.descriptionId);
console.info('getApplicationInfo permissions length [' + data.permissions.length + ']'); console.info("iconPath:" + data.iconPath);
for (var j = 0; j < data.permissions.length; j++) { console.info("iconId:" + data.iconId);
console.info("permissions[" + j + "]:" + data.permissions[j]); console.info("label:" + data.label);
} console.info("labelId:" + data.labelId);
console.info('getApplicationInfo moduleSourceDirs length [' + data.moduleSourceDirs.length + ']'); console.info("deviceId:" + data.deviceId);
for (var j = 0; j < data.moduleSourceDirs.length; j++) { console.info("signatureKey:" + data.signatureKey);
console.info("moduleSourceDirs[" + j + "]:" + data.moduleSourceDirs[j]); console.info("process:" + data.process);
} console.info("isSystemApp:" + data.isSystemApp);
console.info('getApplicationInfo moduleInfos length [' + data.moduleInfos.length + ']'); console.info("isLauncherApp:" + data.isLauncherApp);
for (var j = 0; j < data.moduleInfos.length; j++) { console.info("supportedModes:" + data.supportedModes);
console.info("moduleInfos[" + j + "]moduleName:" + data.moduleInfos[j].moduleName);
console.info("moduleInfos[" + j + "]moduleSourceDir:" + data.moduleInfos[j].moduleSourceDir); console.info('getApplicationInfo permissions length [' + data.permissions.length + ']');
} for (var j = 0; j < data.permissions.length; j++) {
console.info("entryDir:" + data.entryDir); console.info("permissions[" + j + "]:" + data.permissions[j]);
console.info("codePath:" + data.codePath); }
console.info("dataDir:" + data.dataDir); console.info('getApplicationInfo moduleSourceDirs length [' + data.moduleSourceDirs.length + ']');
console.info("dataBaseDir:" + data.dataBaseDir); for (var j = 0; j < data.moduleSourceDirs.length; j++) {
console.info("cacheDir:" + data.cacheDir); console.info("moduleSourceDirs[" + j + "]:" + data.moduleSourceDirs[j]);
} }
``` console.info('getApplicationInfo moduleInfos length [' + data.moduleInfos.length + ']');
for (var j = 0; j < data.moduleInfos.length; j++) {
console.info("moduleInfos[" + j + "]moduleName:" + data.moduleInfos[j].moduleName);
console.info("moduleInfos[" + j + "]moduleSourceDir:" + data.moduleInfos[j].moduleSourceDir);
## bundle.getAllBundleInfo }
console.info("entryDir:" + data.entryDir);
getAllBundleInfo(bundleFlag: BundleFlag): Promise<Array\<BundleInfo>> console.info("codePath:" + data.codePath);
console.info("dataDir:" + data.dataDir);
获取系统中所有可用的包信息,通过Promise获取返回值。 console.info("dataBaseDir:" + data.dataBaseDir);
console.info("cacheDir:" + data.cacheDir);
**参数:** }
```
| 名称 | 类型 | 必填 | 描述 |
| ---------- | ---------- | ---- | ----------------------------------------------------------- |
| bundleFlag | BundleFlag | 是 | 0:返回默认BundleInfo<br>1:返回包含abilityInfo的BundleInfo |
## bundle.getAllBundleInfo
**返回值:**
getAllBundleInfo(bundleFlag: BundleFlag): Promise<Array\<BundleInfo>>
| 类型 | 说明 |
| --------------------------- | ---------------------------------------------- | 以异步方法获取系统中所有可用的BundleInfo,使用Promise形式返回结果。
| Promise<Array\<BundleInfo>> | 返回值为Promise对象,Promise中包含包信息列表。 |
**需要权限:**
**示例:**
ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
```
bundle.getAllBundleInfo(0).then((data) => { **参数:**
for (var i = 0; i < data.length; i++) {
console.info("index[" + i + "].name: for begin"); | 名称 | 类型 | 必填 | 描述 |
console.info("index[" + i + "].name:" + data[i].name); | ---------- | ---------- | ---- | ----------------------------------------------------------- |
console.info("index[" + i + "].label:" + data[i].label); | bundleFlag | BundleFlag | 是 | 0:返回默认BundleInfo<br>1:返回包含abilityInfo的BundleInfo |
console.info("index[" + i + "].description:" + data[i].description);
console.info("index[" + i + "].vendor:" + data[i].vendor); **返回值:**
console.info("index[" + i + "].versionCode:" + data[i].versionCode);
console.info("index[" + i + "].versionName:" + data[i].versionName); | 类型 | 说明 |
console.info("index[" + i + "].jointUserId:" + data[i].jointUserId); | --------------------------- | ----------------------------------- |
console.info("index[" + i + "].minSdkVersion:" + data[i].minSdkVersion); | Promise<Array\<BundleInfo>> | Promise形式返回所有可用的BundleInfo |
console.info("index[" + i + "].maxSdkVersion:" + data[i].maxSdkVersion);
console.info("index[" + i + "].mainEntry:" + data[i].mainEntry); **示例:**
console.info("index[" + i + "].cpuAbi:" + data[i].cpuAbi);
console.info("index[" + i + "].appId:" + data[i].appId); ```js
console.info("index[" + i + "].compatibleVersion:" + data[i].compatibleVersion); bundle.getAllBundleInfo(0).then((data) => {
console.info("index[" + i + "].targetVersion:" + data[i].targetVersion); for (var i = 0; i < data.length; i++) {
console.info("index[" + i + "].releaseType:" + data[i].releaseType); console.info("index[" + i + "].name: for begin");
console.info("index[" + i + "].uid:" + data[i].uid); console.info("index[" + i + "].name:" + data[i].name);
console.info("index[" + i + "].gid:" + data[i].gid); console.info("index[" + i + "].label:" + data[i].label);
console.info("index[" + i + "].seInfo:" + data[i].seInfo); console.info("index[" + i + "].description:" + data[i].description);
console.info("index[" + i + "].entryModuleName:" + data[i].entryModuleName); console.info("index[" + i + "].vendor:" + data[i].vendor);
console.info("index[" + i + "].isKeepAlive:" + data[i].isKeepAlive); console.info("index[" + i + "].versionCode:" + data[i].versionCode);
console.info("index[" + i + "].isNativeApp:" + data[i].isNativeApp); console.info("index[" + i + "].versionName:" + data[i].versionName);
console.info("index[" + i + "].installTime:" + data[i].installTime); console.info("index[" + i + "].jointUserId:" + data[i].jointUserId);
console.info("index[" + i + "].updateTime:" + data[i].updateTime); console.info("index[" + i + "].minSdkVersion:" + data[i].minSdkVersion);
console.info("index[" + i + "].appInfo.name:" + data[i].applicationInfo.name); console.info("index[" + i + "].maxSdkVersion:" + data[i].maxSdkVersion);
console.info("index[" + i + "].appInfo.bundleName:" + data[i].applicationInfo.bundleName); console.info("index[" + i + "].mainEntry:" + data[i].mainEntry);
console.info('getAllBundleInfo reqPermissions length [' + data[i].reqPermissions.length + ']'); console.info("index[" + i + "].cpuAbi:" + data[i].cpuAbi);
for (var j = 0; j < data[i].reqPermissions.length; j++) { console.info("index[" + i + "].appId:" + data[i].appId);
console.info("index[" + i + "]reqPermissions[" + j + "]:" + data[i].reqPermissions[j]); console.info("index[" + i + "].compatibleVersion:" + data[i].compatibleVersion);
} console.info("index[" + i + "].targetVersion:" + data[i].targetVersion);
console.info('getAllBundleInfo defPermissions length [' + data[i].defPermissions.length + ']'); console.info("index[" + i + "].releaseType:" + data[i].releaseType);
for (var j = 0; j < data[i].defPermissions.length; j++) { console.info("index[" + i + "].uid:" + data[i].uid);
console.info("index[" + i + "]defPermissions[" + j + "]:" + data[i].defPermissions[j]); console.info("index[" + i + "].gid:" + data[i].gid);
} console.info("index[" + i + "].seInfo:" + data[i].seInfo);
console.info("index[" + i + "].entryModuleName:" + data[i].entryModuleName);
console.info('getAllBundleInfo hapModuleNames length [' + data[i].hapModuleNames.length + ']'); console.info("index[" + i + "].isKeepAlive:" + data[i].isKeepAlive);
for (var j = 0; j < data[i].hapModuleNames.length; j++) { console.info("index[" + i + "].isNativeApp:" + data[i].isNativeApp);
console.info("index[" + i + "]hapModuleNames[" + j + "]:" + data[i].hapModuleNames[j]); console.info("index[" + i + "].installTime:" + data[i].installTime);
} console.info("index[" + i + "].updateTime:" + data[i].updateTime);
console.info('getAllBundleInfo moduleNames length [' + data[i].moduleNames.length + ']'); console.info("index[" + i + "].appInfo.name:" + data[i].applicationInfo.name);
for (var j = 0; j < data[i].moduleNames.length; j++) { console.info("index[" + i + "].appInfo.bundleName:" + data[i].applicationInfo.bundleName);
console.info("index[" + i + "]moduleNames[" + j + "]:" + data[i].moduleNames[j]); console.info('getAllBundleInfo reqPermissions length [' + data[i].reqPermissions.length + ']');
} for (var j = 0; j < data[i].reqPermissions.length; j++) {
console.info('getAllBundleInfo modulePublicDirs length [' + data[i].modulePublicDirs.length + ']'); console.info("index[" + i + "]reqPermissions[" + j + "]:" + data[i].reqPermissions[j]);
for (var j = 0; j < data[i].modulePublicDirs.length; j++) { }
console.info("index[" + i + "]modulePublicDirs[" + j + "]:" + data[i].modulePublicDirs[j]); console.info('getAllBundleInfo defPermissions length [' + data[i].defPermissions.length + ']');
} for (var j = 0; j < data[i].defPermissions.length; j++) {
console.info('getAllBundleInfo moduleDirs length [' + data[i].moduleDirs.length + ']'); console.info("index[" + i + "]defPermissions[" + j + "]:" + data[i].defPermissions[j]);
for (var j = 0; j < data[i].moduleDirs.length; j++) { }
console.info("index[" + i + "]moduleDirs[" + j + "]:" + data[i].moduleDirs[j]);
} console.info('getAllBundleInfo hapModuleNames length [' + data[i].hapModuleNames.length + ']');
console.info('getAllBundleInfo moduleResPaths length [' + data[i].moduleResPaths.length + ']'); for (var j = 0; j < data[i].hapModuleNames.length; j++) {
for (var j = 0; j < data[i].moduleResPaths.length; j++) { console.info("index[" + i + "]hapModuleNames[" + j + "]:" + data[i].hapModuleNames[j]);
console.info("index[" + i + "]moduleResPaths[" + j + "]:" + data[i].moduleResPaths[j]); }
} console.info('getAllBundleInfo moduleNames length [' + data[i].moduleNames.length + ']');
console.info('getAllBundleInfo abilityInfo length [' + data[i].abilityInfos.length + ']'); for (var j = 0; j < data[i].moduleNames.length; j++) {
for (var j = 0; j < data[i].abilityInfos.length; j++) { console.info("index[" + i + "]moduleNames[" + j + "]:" + data[i].moduleNames[j]);
console.info("index[" + i + "]abilityInfos[" + j + "]name:" + data[i].abilityInfos[j].name); }
console.info("index[" + i + "]abilityInfos[" + j + "]package:" + data[i].abilityInfos[j].package); console.info('getAllBundleInfo modulePublicDirs length [' + data[i].modulePublicDirs.length + ']');
} for (var j = 0; j < data[i].modulePublicDirs.length; j++) {
} console.info("index[" + i + "]modulePublicDirs[" + j + "]:" + data[i].modulePublicDirs[j]);
}) }
``` console.info('getAllBundleInfo moduleDirs length [' + data[i].moduleDirs.length + ']');
for (var j = 0; j < data[i].moduleDirs.length; j++) {
console.info("index[" + i + "]moduleDirs[" + j + "]:" + data[i].moduleDirs[j]);
}
## bundle.getAllBundleInfo console.info('getAllBundleInfo moduleResPaths length [' + data[i].moduleResPaths.length + ']');
for (var j = 0; j < data[i].moduleResPaths.length; j++) {
getAllBundleInfo(bundleFlag: BundleFlag, callback: AsyncCallback<Array\<BundleInfo>>): void console.info("index[" + i + "]moduleResPaths[" + j + "]:" + data[i].moduleResPaths[j]);
}
获取系统中所有可用的包信息,通过回调函数获取返回值。 console.info('getAllBundleInfo abilityInfo length [' + data[i].abilityInfos.length + ']');
for (var j = 0; j < data[i].abilityInfos.length; j++) {
**参数:** console.info("index[" + i + "]abilityInfos[" + j + "]name:" + data[i].abilityInfos[j].name);
console.info("index[" + i + "]abilityInfos[" + j + "]package:" + data[i].abilityInfos[j].package);
| 名称 | 类型 | 必填 | 描述 | }
| ---------- | --------------------------------- | ---- | ------------------------------------------------------------ | }
| bundleFlag | BundleFlag | 是 | 0:返回默认BundleInfo<br/>1:返回包含abilityInfo的BundleInfo | })
| callback | AsyncCallback<Array\<BundleInfo>> | 是 | 回调方法 | ```
**示例:**
``` ## bundle.getAllBundleInfo
bundle.getAllBundleInfo(0, OnReceiveEvent);
getAllBundleInfo(bundleFlag: BundleFlag, callback: AsyncCallback<Array\<BundleInfo>>): void
function OnReceiveEvent(err, data) {
console.info('xxx getAllBundleInfo data length [' + data.length + ']'); 以异步方法获取系统中所有可用的BundleInfo,使用callback形式返回结果。
for (var i = 0; i < data.length; i++) {
console.info("index[" + i + "].name: for begin"); **需要权限:**
console.info("index[" + i + "].name:" + data[i].name);
console.info("index[" + i + "].label:" + data[i].label); ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
console.info("index[" + i + "].description:" + data[i].description);
console.info("index[" + i + "].vendor:" + data[i].vendor); **参数:**
console.info("index[" + i + "].versionCode:" + data[i].versionCode);
console.info("index[" + i + "].versionName:" + data[i].versionName); | 名称 | 类型 | 必填 | 描述 |
console.info("index[" + i + "].jointUserId:" + data[i].jointUserId); | ---------- | --------------------------------- | ---- | ------------------------------------------------------------ |
console.info("index[" + i + "].minSdkVersion:" + data[i].minSdkVersion); | bundleFlag | BundleFlag | 是 | 0:返回默认BundleInfo<br/>1:返回包含abilityInfo的BundleInfo |
console.info("index[" + i + "].maxSdkVersion:" + data[i].maxSdkVersion); | callback | AsyncCallback<Array\<BundleInfo>> | 是 | 程序启动作为入参的回调函数,返回所有可用的BundleInfo。 |
console.info("index[" + i + "].mainEntry:" + data[i].mainEntry);
console.info("index[" + i + "].cpuAbi:" + data[i].cpuAbi); **示例:**
console.info("index[" + i + "].appId:" + data[i].appId);
console.info("index[" + i + "].compatibleVersion:" + data[i].compatibleVersion); ```js
console.info("index[" + i + "].targetVersion:" + data[i].targetVersion); bundle.getAllBundleInfo(0, OnReceiveEvent);
console.info("index[" + i + "].releaseType:" + data[i].releaseType);
console.info("index[" + i + "].uid:" + data[i].uid); function OnReceiveEvent(err, data) {
console.info("index[" + i + "].gid:" + data[i].gid); console.info('xxx getAllBundleInfo data length [' + data.length + ']');
console.info("index[" + i + "].seInfo:" + data[i].seInfo); for (var i = 0; i < data.length; i++) {
console.info("index[" + i + "].entryModuleName:" + data[i].entryModuleName); console.info("index[" + i + "].name: for begin");
console.info("index[" + i + "].isKeepAlive:" + data[i].isKeepAlive); console.info("index[" + i + "].name:" + data[i].name);
console.info("index[" + i + "].isNativeApp:" + data[i].isNativeApp); console.info("index[" + i + "].label:" + data[i].label);
console.info("index[" + i + "].installTime:" + data[i].installTime); console.info("index[" + i + "].description:" + data[i].description);
console.info("index[" + i + "].updateTime:" + data[i].updateTime); console.info("index[" + i + "].vendor:" + data[i].vendor);
console.info("index[" + i + "].appInfo.name:" + data[i].applicationInfo.name); console.info("index[" + i + "].versionCode:" + data[i].versionCode);
console.info("index[" + i + "].appInfo.bundleName:" + data[i].applicationInfo.bundleName); console.info("index[" + i + "].versionName:" + data[i].versionName);
console.info('getAllBundleInfo reqPermissions length [' + data[i].reqPermissions.length + ']'); console.info("index[" + i + "].jointUserId:" + data[i].jointUserId);
for (var j = 0; j < data[i].reqPermissions.length; j++) { console.info("index[" + i + "].minSdkVersion:" + data[i].minSdkVersion);
console.info("index[" + i + "]reqPermissions[" + j + "]:" + data[i].reqPermissions[j]); console.info("index[" + i + "].maxSdkVersion:" + data[i].maxSdkVersion);
} console.info("index[" + i + "].mainEntry:" + data[i].mainEntry);
console.info('getAllBundleInfo defPermissions length [' + data[i].defPermissions.length + ']'); console.info("index[" + i + "].cpuAbi:" + data[i].cpuAbi);
for (var j = 0; j < data[i].defPermissions.length; j++) { console.info("index[" + i + "].appId:" + data[i].appId);
console.info("index[" + i + "]defPermissions[" + j + "]:" + data[i].defPermissions[j]); console.info("index[" + i + "].compatibleVersion:" + data[i].compatibleVersion);
} console.info("index[" + i + "].targetVersion:" + data[i].targetVersion);
console.info("index[" + i + "].releaseType:" + data[i].releaseType);
console.info('getAllBundleInfo hapModuleNames length [' + data[i].hapModuleNames.length + ']'); console.info("index[" + i + "].uid:" + data[i].uid);
for (var j = 0; j < data[i].hapModuleNames.length; j++) { console.info("index[" + i + "].gid:" + data[i].gid);
console.info("index[" + i + "]hapModuleNames[" + j + "]:" + data[i].hapModuleNames[j]); console.info("index[" + i + "].seInfo:" + data[i].seInfo);
} console.info("index[" + i + "].entryModuleName:" + data[i].entryModuleName);
console.info('getAllBundleInfo moduleNames length [' + data[i].moduleNames.length + ']'); console.info("index[" + i + "].isKeepAlive:" + data[i].isKeepAlive);
for (var j = 0; j < data[i].moduleNames.length; j++) { console.info("index[" + i + "].isNativeApp:" + data[i].isNativeApp);
console.info("index[" + i + "]moduleNames[" + j + "]:" + data[i].moduleNames[j]); console.info("index[" + i + "].installTime:" + data[i].installTime);
} console.info("index[" + i + "].updateTime:" + data[i].updateTime);
console.info('getAllBundleInfo modulePublicDirs length [' + data[i].modulePublicDirs.length + ']'); console.info("index[" + i + "].appInfo.name:" + data[i].applicationInfo.name);
for (var j = 0; j < data[i].modulePublicDirs.length; j++) { console.info("index[" + i + "].appInfo.bundleName:" + data[i].applicationInfo.bundleName);
console.info("index[" + i + "]modulePublicDirs[" + j + "]:" + data[i].modulePublicDirs[j]); console.info('getAllBundleInfo reqPermissions length [' + data[i].reqPermissions.length + ']');
} for (var j = 0; j < data[i].reqPermissions.length; j++) {
console.info('getAllBundleInfo moduleDirs length [' + data[i].moduleDirs.length + ']'); console.info("index[" + i + "]reqPermissions[" + j + "]:" + data[i].reqPermissions[j]);
for (var j = 0; j < data[i].moduleDirs.length; j++) { }
console.info("index[" + i + "]moduleDirs[" + j + "]:" + data[i].moduleDirs[j]); console.info('getAllBundleInfo defPermissions length [' + data[i].defPermissions.length + ']');
} for (var j = 0; j < data[i].defPermissions.length; j++) {
console.info('getAllBundleInfo moduleResPaths length [' + data[i].moduleResPaths.length + ']'); console.info("index[" + i + "]defPermissions[" + j + "]:" + data[i].defPermissions[j]);
for (var j = 0; j < data[i].moduleResPaths.length; j++) { }
console.info("index[" + i + "]moduleResPaths[" + j + "]:" + data[i].moduleResPaths[j]);
} console.info('getAllBundleInfo hapModuleNames length [' + data[i].hapModuleNames.length + ']');
console.info('getAllBundleInfo abilityInfo length [' + data[i].abilityInfos.length + ']'); for (var j = 0; j < data[i].hapModuleNames.length; j++) {
for (var j = 0; j < data[i].abilityInfos.length; j++) { console.info("index[" + i + "]hapModuleNames[" + j + "]:" + data[i].hapModuleNames[j]);
console.info("index[" + i + "]abilityInfos[" + j + "]name:" + data[i].abilityInfos[j].name); }
console.info("index[" + i + "]abilityInfos[" + j + "]package:" + data[i].abilityInfos[j].package); console.info('getAllBundleInfo moduleNames length [' + data[i].moduleNames.length + ']');
} for (var j = 0; j < data[i].moduleNames.length; j++) {
} console.info("index[" + i + "]moduleNames[" + j + "]:" + data[i].moduleNames[j]);
} }
``` console.info('getAllBundleInfo modulePublicDirs length [' + data[i].modulePublicDirs.length + ']');
for (var j = 0; j < data[i].modulePublicDirs.length; j++) {
console.info("index[" + i + "]modulePublicDirs[" + j + "]:" + data[i].modulePublicDirs[j]);
}
## bundle.getBundleInfo console.info('getAllBundleInfo moduleDirs length [' + data[i].moduleDirs.length + ']');
for (var j = 0; j < data[i].moduleDirs.length; j++) {
getBundleInfo(bundleName: string, bundleFlags: number): Promise\<BundleInfo> console.info("index[" + i + "]moduleDirs[" + j + "]:" + data[i].moduleDirs[j]);
}
根据bundle名称获取BundleInfo,通过Promise获取返回值。 console.info('getAllBundleInfo moduleResPaths length [' + data[i].moduleResPaths.length + ']');
for (var j = 0; j < data[i].moduleResPaths.length; j++) {
**参数:** console.info("index[" + i + "]moduleResPaths[" + j + "]:" + data[i].moduleResPaths[j]);
}
| 名称 | 类型 | 必填 | 描述 | console.info('getAllBundleInfo abilityInfo length [' + data[i].abilityInfos.length + ']');
| ----------- | ------ | ---- | ------------------------------------------------------------ | for (var j = 0; j < data[i].abilityInfos.length; j++) {
| bundleName | string | 是 | 包名 | console.info("index[" + i + "]abilityInfos[" + j + "]name:" + data[i].abilityInfos[j].name);
| bundleFlags | number | 是 | 0:返回默认BundleInfo<br/>1:返回包含abilityInfo的BundleInfo | console.info("index[" + i + "]abilityInfos[" + j + "]package:" + data[i].abilityInfos[j].package);
}
**返回值:** }
}
| 类型 | 说明 | ```
| -------------------- | ------------------------------------------ |
| Promise\<BundleInfo> | 返回值为Promise对象,Promise中包含包信息。 |
**示例:** ## bundle.getBundleInfo
``` getBundleInfo(bundleName: string, bundleFlags: number): Promise\<BundleInfo>
bundle.getBundleInfo('com.example.myapplicationInstall', 1).then((data) => {
console.info("name:" + data.name); 以异步方法根据给定的包名获取BundleInfo,使用Promise形式返回结果。
console.info("label:" + data.label);
console.info("description:" + data.description); **需要权限:**
console.info("vendor:" + data.vendor);
console.info("versionCode:" + data.versionCode); ohos.permission.GET_BUNDLE_INFO_PRIVILEGED,ohos.permission.GET_BUNDLE_INFO
console.info("versionName:" + data.versionName);
console.info("jointUserId:" + data.jointUserId); **参数:**
console.info("minSdkVersion:" + data.minSdkVersion);
console.info("maxSdkVersion:" + data.maxSdkVersion); | 名称 | 类型 | 必填 | 描述 |
console.info("mainEntry:" + data.mainEntry); | ----------- | ------ | ---- | ------------------------------------------------------------ |
console.info("cpuAbi:" + data.cpuAbi); | bundleName | string | 是 | 包名 |
console.info("appId:" + data.appId); | bundleFlags | number | 是 | 0:返回默认BundleInfo<br/>1:返回包含abilityInfo的BundleInfo |
console.info("compatibleVersion:" + data.compatibleVersion);
console.info("targetVersion:" + data.targetVersion); **返回值:**
console.info("releaseType:" + data.releaseType);
console.info("uid:" + data.uid); | 类型 | 说明 |
console.info("gid:" + data.gid); | -------------------- | ------------------------------------------ |
console.info("seInfo:" + data.seInfo); | Promise\<BundleInfo> | 返回值为Promise对象,Promise中包含包信息。 |
console.info("entryModuleName:" + data.entryModuleName);
console.info("isKeepAlive:" + data.isKeepAlive); **示例:**
console.info("isNativeApp:" + data.isNativeApp);
console.info("installTime:" + data.installTime); ```js
console.info("updateTime:" + data.updateTime); bundle.getBundleInfo('com.example.myapplicationInstall', 1).then((data) => {
console.info("appInfo.name:" + data.applicationInfo.name); console.info("name:" + data.name);
console.info("appInfo.bundleName:" + data.applicationInfo.bundleName); console.info("label:" + data.label);
console.info('getBundleInfo reqPermissions length [' + data.reqPermissions.length + ']'); console.info("description:" + data.description);
for (var j = 0; j < data.reqPermissions.length; j++) { console.info("vendor:" + data.vendor);
console.info("reqPermissions[" + j + "]:" + data.reqPermissions[j]); console.info("versionCode:" + data.versionCode);
} console.info("versionName:" + data.versionName);
console.info('getBundleInfo defPermissions length [' + data.defPermissions.length + ']'); console.info("jointUserId:" + data.jointUserId);
for (var j = 0; j < data.defPermissions.length; j++) { console.info("minSdkVersion:" + data.minSdkVersion);
console.info("defPermissions[" + j + "]:" + data.defPermissions[j]); console.info("maxSdkVersion:" + data.maxSdkVersion);
} console.info("mainEntry:" + data.mainEntry);
console.info("cpuAbi:" + data.cpuAbi);
console.info('getBundleInfo hapModuleNames length [' + data.hapModuleNames.length + ']'); console.info("appId:" + data.appId);
for (var j = 0; j < data.hapModuleNames.length; j++) { console.info("compatibleVersion:" + data.compatibleVersion);
console.info("hapModuleNames[" + j + "]:" + data.hapModuleNames[j]); console.info("targetVersion:" + data.targetVersion);
} console.info("releaseType:" + data.releaseType);
console.info('getBundleInfo moduleNames length [' + data.moduleNames.length + ']'); console.info("uid:" + data.uid);
for (var j = 0; j < data.moduleNames.length; j++) { console.info("gid:" + data.gid);
console.info("moduleNames[" + j + "]:" + data.moduleNames[j]); console.info("seInfo:" + data.seInfo);
} console.info("entryModuleName:" + data.entryModuleName);
console.info('getBundleInfo modulePublicDirs length [' + data.modulePublicDirs.length + ']'); console.info("isKeepAlive:" + data.isKeepAlive);
for (var j = 0; j < data.modulePublicDirs.length; j++) { console.info("isNativeApp:" + data.isNativeApp);
console.info("modulePublicDirs[" + j + "]:" + data.modulePublicDirs[j]); console.info("installTime:" + data.installTime);
} console.info("updateTime:" + data.updateTime);
console.info('getBundleInfo moduleDirs length [' + data.moduleDirs.length + ']'); console.info("appInfo.name:" + data.applicationInfo.name);
for (var j = 0; j < data.moduleDirs.length; j++) { console.info("appInfo.bundleName:" + data.applicationInfo.bundleName);
console.info("moduleDirs[" + j + "]:" + data.moduleDirs[j]); console.info('getBundleInfo reqPermissions length [' + data.reqPermissions.length + ']');
} for (var j = 0; j < data.reqPermissions.length; j++) {
console.info('getBundleInfo moduleResPaths length [' + data.moduleResPaths.length + ']'); console.info("reqPermissions[" + j + "]:" + data.reqPermissions[j]);
for (var j = 0; j < data.moduleResPaths.length; j++) { }
console.info("moduleResPaths[" + j + "]:" + data.moduleResPaths[j]); console.info('getBundleInfo defPermissions length [' + data.defPermissions.length + ']');
} for (var j = 0; j < data.defPermissions.length; j++) {
console.info('getBundleInfo abilityInfo length [' + data.abilityInfos.length + ']'); console.info("defPermissions[" + j + "]:" + data.defPermissions[j]);
for (var j = 0; j < data.abilityInfos.length; j++) { }
console.info("abilityInfos[" + j + "]name:" + data.abilityInfos[j].name);
console.info("abilityInfos[" + j + "]package:" + data.abilityInfos[j].package); console.info('getBundleInfo hapModuleNames length [' + data.hapModuleNames.length + ']');
} for (var j = 0; j < data.hapModuleNames.length; j++) {
}) console.info("hapModuleNames[" + j + "]:" + data.hapModuleNames[j]);
``` }
console.info('getBundleInfo moduleNames length [' + data.moduleNames.length + ']');
for (var j = 0; j < data.moduleNames.length; j++) {
console.info("moduleNames[" + j + "]:" + data.moduleNames[j]);
## bundle.getBundleInfo }
console.info('getBundleInfo modulePublicDirs length [' + data.modulePublicDirs.length + ']');
getBundleInfo(bundleName: string, bundleFlags: number, callback: AsyncCallback\<BundleInfo>): void for (var j = 0; j < data.modulePublicDirs.length; j++) {
console.info("modulePublicDirs[" + j + "]:" + data.modulePublicDirs[j]);
根据bundle名称获取BundleInfo,通过回调函数获取返回值。 }
console.info('getBundleInfo moduleDirs length [' + data.moduleDirs.length + ']');
**参数:** for (var j = 0; j < data.moduleDirs.length; j++) {
console.info("moduleDirs[" + j + "]:" + data.moduleDirs[j]);
| 名称 | 类型 | 必填 | 描述 | }
| ----------- | -------------------------- | ---- | ------------------------------------------------------------ | console.info('getBundleInfo moduleResPaths length [' + data.moduleResPaths.length + ']');
| bundleName | string | 是 | 包名 | for (var j = 0; j < data.moduleResPaths.length; j++) {
| bundleFlags | number | 是 | 0:返回默认BundleInfo<br/>1:返回包含abilityInfo的BundleInfo | console.info("moduleResPaths[" + j + "]:" + data.moduleResPaths[j]);
| callback | AsyncCallback\<BundleInfo> | 是 | 回调方法 | }
console.info('getBundleInfo abilityInfo length [' + data.abilityInfos.length + ']');
**示例:** for (var j = 0; j < data.abilityInfos.length; j++) {
console.info("abilityInfos[" + j + "]name:" + data.abilityInfos[j].name);
``` console.info("abilityInfos[" + j + "]package:" + data.abilityInfos[j].package);
bundle.getBundleInfo('com.example.myapplicationInstall', 1, OnReceiveEvent); }
})
function OnReceiveEvent(err, data) { ```
console.info("name:" + data.name);
console.info("label:" + data.label);
console.info("description:" + data.description);
console.info("vendor:" + data.vendor); ## bundle.getBundleInfo
console.info("versionCode:" + data.versionCode);
console.info("versionName:" + data.versionName); getBundleInfo(bundleName: string, bundleFlags: number, callback: AsyncCallback\<BundleInfo>): void
console.info("jointUserId:" + data.jointUserId);
console.info("minSdkVersion:" + data.minSdkVersion); 以异步方法根据给定的包名获取BundleInfo,使用callback形式返回结果。
console.info("maxSdkVersion:" + data.maxSdkVersion);
console.info("mainEntry:" + data.mainEntry); **需要权限:**
console.info("cpuAbi:" + data.cpuAbi);
console.info("appId:" + data.appId); ohos.permission.GET_BUNDLE_INFO_PRIVILEGED,ohos.permission.GET_BUNDLE_INFO
console.info("compatibleVersion:" + data.compatibleVersion);
console.info("targetVersion:" + data.targetVersion); **参数:**
console.info("releaseType:" + data.releaseType);
console.info("uid:" + data.uid); | 名称 | 类型 | 必填 | 描述 |
console.info("gid:" + data.gid); | ----------- | -------------------------- | ---- | ------------------------------------------------------------ |
console.info("seInfo:" + data.seInfo); | bundleName | string | 是 | 包名 |
console.info("entryModuleName:" + data.entryModuleName); | bundleFlags | number | 是 | 0:返回默认BundleInfo<br/>1:返回包含abilityInfo的BundleInfo |
console.info("isKeepAlive:" + data.isKeepAlive); | callback | AsyncCallback\<BundleInfo> | 是 | 程序启动作为入参的回调函数,返回包信息。 |
console.info("isNativeApp:" + data.isNativeApp);
console.info("installTime:" + data.installTime); **示例:**
console.info("updateTime:" + data.updateTime);
console.info("appInfo.name:" + data.applicationInfo.name); ```js
console.info("appInfo.bundleName:" + data.applicationInfo.bundleName); bundle.getBundleInfo('com.example.myapplicationInstall', 1, OnReceiveEvent);
console.info('getBundleInfo reqPermissions length [' + data.reqPermissions.length + ']');
for (var j = 0; j < data.reqPermissions.length; j++) { function OnReceiveEvent(err, data) {
console.info("reqPermissions[" + j + "]:" + data.reqPermissions[j]); console.info("name:" + data.name);
} console.info("label:" + data.label);
console.info('getBundleInfo defPermissions length [' + data.defPermissions.length + ']'); console.info("description:" + data.description);
for (var j = 0; j < data.defPermissions.length; j++) { console.info("vendor:" + data.vendor);
console.info("defPermissions[" + j + "]:" + data.defPermissions[j]); console.info("versionCode:" + data.versionCode);
} console.info("versionName:" + data.versionName);
console.info("jointUserId:" + data.jointUserId);
console.info('getBundleInfo hapModuleNames length [' + data.hapModuleNames.length + ']'); console.info("minSdkVersion:" + data.minSdkVersion);
for (var j = 0; j < data.hapModuleNames.length; j++) { console.info("maxSdkVersion:" + data.maxSdkVersion);
console.info("hapModuleNames[" + j + "]:" + data.hapModuleNames[j]); console.info("mainEntry:" + data.mainEntry);
} console.info("cpuAbi:" + data.cpuAbi);
console.info('getBundleInfo moduleNames length [' + data.moduleNames.length + ']'); console.info("appId:" + data.appId);
for (var j = 0; j < data.moduleNames.length; j++) { console.info("compatibleVersion:" + data.compatibleVersion);
console.info("moduleNames[" + j + "]:" + data.moduleNames[j]); console.info("targetVersion:" + data.targetVersion);
} console.info("releaseType:" + data.releaseType);
console.info('getBundleInfo modulePublicDirs length [' + data.modulePublicDirs.length + ']'); console.info("uid:" + data.uid);
for (var j = 0; j < data.modulePublicDirs.length; j++) { console.info("gid:" + data.gid);
console.info("modulePublicDirs[" + j + "]:" + data.modulePublicDirs[j]); console.info("seInfo:" + data.seInfo);
} console.info("entryModuleName:" + data.entryModuleName);
console.info('getBundleInfo moduleDirs length [' + data.moduleDirs.length + ']'); console.info("isKeepAlive:" + data.isKeepAlive);
for (var j = 0; j < data.moduleDirs.length; j++) { console.info("isNativeApp:" + data.isNativeApp);
console.info("moduleDirs[" + j + "]:" + data.moduleDirs[j]); console.info("installTime:" + data.installTime);
} console.info("updateTime:" + data.updateTime);
console.info('getBundleInfo moduleResPaths length [' + data.moduleResPaths.length + ']'); console.info("appInfo.name:" + data.applicationInfo.name);
for (var j = 0; j < data.moduleResPaths.length; j++) { console.info("appInfo.bundleName:" + data.applicationInfo.bundleName);
console.info("moduleResPaths[" + j + "]:" + data.moduleResPaths[j]); console.info('getBundleInfo reqPermissions length [' + data.reqPermissions.length + ']');
} for (var j = 0; j < data.reqPermissions.length; j++) {
console.info('getBundleInfo abilityInfo length [' + data.abilityInfos.length + ']'); console.info("reqPermissions[" + j + "]:" + data.reqPermissions[j]);
for (var j = 0; j < data.abilityInfos.length; j++) { }
console.info("abilityInfos[" + j + "]name:" + data.abilityInfos[j].name); console.info('getBundleInfo defPermissions length [' + data.defPermissions.length + ']');
console.info("abilityInfos[" + j + "]package:" + data.abilityInfos[j].package); for (var j = 0; j < data.defPermissions.length; j++) {
} console.info("defPermissions[" + j + "]:" + data.defPermissions[j]);
} }
```
console.info('getBundleInfo hapModuleNames length [' + data.hapModuleNames.length + ']');
for (var j = 0; j < data.hapModuleNames.length; j++) {
console.info("hapModuleNames[" + j + "]:" + data.hapModuleNames[j]);
## bundle.getAllApplicationInfo }
console.info('getBundleInfo moduleNames length [' + data.moduleNames.length + ']');
getAllApplicationInfo(bundleFlags: number, userId: number): Promise<Array\<ApplicationInfo>> for (var j = 0; j < data.moduleNames.length; j++) {
console.info("moduleNames[" + j + "]:" + data.moduleNames[j]);
获取指定用户下所有已安装的应用信息,通过Promise获取返回值。 }
console.info('getBundleInfo modulePublicDirs length [' + data.modulePublicDirs.length + ']');
**参数:** for (var j = 0; j < data.modulePublicDirs.length; j++) {
console.info("modulePublicDirs[" + j + "]:" + data.modulePublicDirs[j]);
| 名称 | 类型 | 必填 | 描述 | }
| ----------- | ------ | ---- | ------------------------------------------------------- | console.info('getBundleInfo moduleDirs length [' + data.moduleDirs.length + ']');
| bundleFlags | number | 是 | 0:返回默认app信息<<br/>8:返回包含permissions的app信息 | for (var j = 0; j < data.moduleDirs.length; j++) {
| userId | number | 是 | 用户ID | console.info("moduleDirs[" + j + "]:" + data.moduleDirs[j]);
}
**返回值:** console.info('getBundleInfo moduleResPaths length [' + data.moduleResPaths.length + ']');
for (var j = 0; j < data.moduleResPaths.length; j++) {
| 类型 | 说明 | console.info("moduleResPaths[" + j + "]:" + data.moduleResPaths[j]);
| -------------------------------- | ------------------------------------------------ | }
| Promise<Array\<ApplicationInfo>> | 返回值为Promise对象,Promise中包含应用信息列表。 | console.info('getBundleInfo abilityInfo length [' + data.abilityInfos.length + ']');
for (var j = 0; j < data.abilityInfos.length; j++) {
**示例:** console.info("abilityInfos[" + j + "]name:" + data.abilityInfos[j].name);
console.info("abilityInfos[" + j + "]package:" + data.abilityInfos[j].package);
``` }
bundle.getAllApplicationInfo(8, 0).then((data) => { }
console.info('xxx getAllApplicationInfo data length [' + data.length + ']'); ```
for (var i = 0; i < data.length; i++) {
console.info("index[" + i + "].name: for begin");
console.info("index[" + i + "].name:" + data[i].name);
console.info("index[" + i + "].bundleName:" + data[i].bundleName); ## bundle.getAllApplicationInfo
console.info("index[" + i + "].description:" + data[i].description);
console.info("index[" + i + "].descriptionId:" + data[i].descriptionId); getAllApplicationInfo(bundleFlags: number, userId: number): Promise<Array\<ApplicationInfo>>
console.info("index[" + i + "].iconPath:" + data[i].iconPath);
console.info("index[" + i + "].iconId:" + data[i].iconId); 获取指定用户下所有已安装的应用信息,通过Promise获取返回值。
console.info("index[" + i + "].label:" + data[i].label);
console.info("index[" + i + "].labelId:" + data[i].labelId); **需要权限:**
console.info("index[" + i + "].deviceId:" + data[i].deviceId);
console.info("index[" + i + "].signatureKey:" + data[i].signatureKey); ohos.permission.GET_BUNDLE_INFO_PRIVILEGED,ohos.permission.GET_BUNDLE_INFO
console.info("index[" + i + "].process:" + data[i].process);
console.info("index[" + i + "].isSystemApp:" + data[i].isSystemApp); **参数:**
console.info("index[" + i + "].isLauncherApp:" + data[i].isLauncherApp);
console.info("index[" + i + "].supportedModes:" + data[i].supportedModes); | 名称 | 类型 | 必填 | 描述 |
| ----------- | ------ | ---- | ------------------------------------------------------ |
console.info('getAllApplicationInfo Async permissions length [' + data[i].permissions.length + ']'); | bundleFlags | number | 是 | 0:返回默认应用信息<<br/>8:返回包含权限信息的应用信息 |
for (var j = 0; j < data[i].permissions.length; j++) { | userId | number | 是 | 用户ID |
console.info("index[" + i + "]permissions[" + j + "]:" + data[i].permissions[j]);
} **返回值:**
console.info('getAllApplicationInfo Async moduleSourceDirs length [' + data[i].moduleSourceDirs.length + ']');
for (var j = 0; j < data[i].moduleSourceDirs.length; j++) { | 类型 | 说明 |
console.info("index[" + i + "]moduleSourceDirs[" + j + "]:" + data[i].moduleSourceDirs[j]); | -------------------------------- | ------------------------------------------------ |
} | Promise<Array\<ApplicationInfo>> | 返回值为Promise对象,Promise中包含应用信息列表。 |
console.info('getAllApplicationInfo Async moduleInfos length [' + data[i].moduleInfos.length + ']');
for (var j = 0; j < data[i].moduleInfos.length; j++) { **示例:**
console.info("index[" + i + "]moduleInfos[" + j + "]moduleName:" + data[i].moduleInfos[j].moduleName);
console.info("index[" + i + "]moduleInfos[" + j + "]moduleSourceDir:" + data[i].moduleInfos[j].moduleSourceDir); ```js
} bundle.getAllApplicationInfo(8, 0).then((data) => {
console.info("index[" + i + "].entryDir:" + data[i].entryDir); console.info('xxx getAllApplicationInfo data length [' + data.length + ']');
console.info("index[" + i + "].codePath:" + data[i].codePath); for (var i = 0; i < data.length; i++) {
console.info("index[" + i + "].dataDir:" + data[i].dataDir); console.info("index[" + i + "].name: for begin");
console.info("index[" + i + "].dataBaseDir:" + data[i].dataBaseDir); console.info("index[" + i + "].name:" + data[i].name);
console.info("index[" + i + "].cacheDir:" + data[i].cacheDir); console.info("index[" + i + "].bundleName:" + data[i].bundleName);
} console.info("index[" + i + "].description:" + data[i].description);
}) console.info("index[" + i + "].descriptionId:" + data[i].descriptionId);
``` console.info("index[" + i + "].iconPath:" + data[i].iconPath);
console.info("index[" + i + "].iconId:" + data[i].iconId);
console.info("index[" + i + "].label:" + data[i].label);
console.info("index[" + i + "].labelId:" + data[i].labelId);
## bundle.getAllApplicationInfo console.info("index[" + i + "].deviceId:" + data[i].deviceId);
console.info("index[" + i + "].signatureKey:" + data[i].signatureKey);
getAllApplicationInfo(bundleFlags: number, userId: number, callback: AsyncCallback<Array\<ApplicationInfo>>): void console.info("index[" + i + "].process:" + data[i].process);
console.info("index[" + i + "].isSystemApp:" + data[i].isSystemApp);
获取指定用户下所有已安装的应用信息,通过回调函数获取返回值。 console.info("index[" + i + "].isLauncherApp:" + data[i].isLauncherApp);
console.info("index[" + i + "].supportedModes:" + data[i].supportedModes);
**参数:**
console.info('getAllApplicationInfo Async permissions length [' + data[i].permissions.length + ']');
| 名称 | 类型 | 必填 | 描述 | for (var j = 0; j < data[i].permissions.length; j++) {
| ----------- | -------------------------------------- | ---- | ------------------------------------------------------- | console.info("index[" + i + "]permissions[" + j + "]:" + data[i].permissions[j]);
| bundleFlags | number | 是 | 0:返回默认app信息<<br/>8:返回包含permissions的app信息 | }
| userId | number | 是 | 用户ID | console.info('getAllApplicationInfo Async moduleSourceDirs length [' + data[i].moduleSourceDirs.length + ']');
| callback | AsyncCallback<Array\<ApplicationInfo>> | 是 | 回调方法 | for (var j = 0; j < data[i].moduleSourceDirs.length; j++) {
console.info("index[" + i + "]moduleSourceDirs[" + j + "]:" + data[i].moduleSourceDirs[j]);
**示例:** }
console.info('getAllApplicationInfo Async moduleInfos length [' + data[i].moduleInfos.length + ']');
``` for (var j = 0; j < data[i].moduleInfos.length; j++) {
bundle.getAllApplicationInfo(8, 0, OnReceiveEvent); console.info("index[" + i + "]moduleInfos[" + j + "]moduleName:" + data[i].moduleInfos[j].moduleName);
console.info("index[" + i + "]moduleInfos[" + j + "]moduleSourceDir:" + data[i].moduleInfos[j].moduleSourceDir);
function OnReceiveEvent(err, data) { }
console.info('xxx getAllApplicationInfo data length [' + data.length + ']'); console.info("index[" + i + "].entryDir:" + data[i].entryDir);
for (var i = 0; i < data.length; i++) { console.info("index[" + i + "].codePath:" + data[i].codePath);
console.info("index[" + i + "].name: for begin"); console.info("index[" + i + "].dataDir:" + data[i].dataDir);
console.info("index[" + i + "].name:" + data[i].name); console.info("index[" + i + "].dataBaseDir:" + data[i].dataBaseDir);
console.info("index[" + i + "].bundleName:" + data[i].bundleName); console.info("index[" + i + "].cacheDir:" + data[i].cacheDir);
console.info("index[" + i + "].description:" + data[i].description); }
console.info("index[" + i + "].descriptionId:" + data[i].descriptionId); })
console.info("index[" + i + "].iconPath:" + data[i].iconPath); ```
console.info("index[" + i + "].iconId:" + data[i].iconId);
console.info("index[" + i + "].label:" + data[i].label);
console.info("index[" + i + "].labelId:" + data[i].labelId);
console.info("index[" + i + "].deviceId:" + data[i].deviceId); ## bundle.getAllApplicationInfo
console.info("index[" + i + "].signatureKey:" + data[i].signatureKey);
console.info("index[" + i + "].process:" + data[i].process); getAllApplicationInfo(bundleFlags: number, userId: number, callback: AsyncCallback<Array\<ApplicationInfo>>): void
console.info("index[" + i + "].isSystemApp:" + data[i].isSystemApp);
console.info("index[" + i + "].isLauncherApp:" + data[i].isLauncherApp); 获取指定用户下所有已安装的应用信息,通过回调函数获取返回值。
console.info("index[" + i + "].supportedModes:" + data[i].supportedModes);
**需要权限:**
console.info('getAllApplicationInfo Async permissions length [' + data[i].permissions.length + ']');
for (var j = 0; j < data[i].permissions.length; j++) { ohos.permission.GET_BUNDLE_INFO_PRIVILEGED,ohos.permission.GET_BUNDLE_INFO
console.info("index[" + i + "]permissions[" + j + "]:" + data[i].permissions[j]);
} **参数:**
console.info('getAllApplicationInfo Async moduleSourceDirs length [' + data[i].moduleSourceDirs.length + ']');
for (var j = 0; j < data[i].moduleSourceDirs.length; j++) { | 名称 | 类型 | 必填 | 描述 |
console.info("index[" + i + "]moduleSourceDirs[" + j + "]:" + data[i].moduleSourceDirs[j]); | ----------- | -------------------------------------- | ---- | ------------------------------------------------------ |
} | bundleFlags | number | 是 | 0:返回默认应用信息<<br/>8:返回包含权限信息的应用信息 |
console.info('getAllApplicationInfo Async moduleInfos length [' + data[i].moduleInfos.length + ']'); | userId | number | 是 | 用户ID |
for (var j = 0; j < data[i].moduleInfos.length; j++) { | callback | AsyncCallback<Array\<ApplicationInfo>> | 是 | 程序启动作为入参的回调函数,返回应用信息列表。 |
console.info("index[" + i + "]moduleInfos[" + j + "]moduleName:" + data[i].moduleInfos[j].moduleName);
console.info("index[" + i + "]moduleInfos[" + j + "]moduleSourceDir:" + data[i].moduleInfos[j].moduleSourceDir); **示例:**
}
console.info("index[" + i + "].entryDir:" + data[i].entryDir); ```js
console.info("index[" + i + "].codePath:" + data[i].codePath); bundle.getAllApplicationInfo(8, 0, OnReceiveEvent);
console.info("index[" + i + "].dataDir:" + data[i].dataDir);
console.info("index[" + i + "].dataBaseDir:" + data[i].dataBaseDir); function OnReceiveEvent(err, data) {
console.info("index[" + i + "].cacheDir:" + data[i].cacheDir); console.info('xxx getAllApplicationInfo data length [' + data.length + ']');
} for (var i = 0; i < data.length; i++) {
} console.info("index[" + i + "].name: for begin");
``` console.info("index[" + i + "].name:" + data[i].name);
console.info("index[" + i + "].bundleName:" + data[i].bundleName);
console.info("index[" + i + "].description:" + data[i].description);
console.info("index[" + i + "].descriptionId:" + data[i].descriptionId);
## bundle.queryAbilityByWant console.info("index[" + i + "].iconPath:" + data[i].iconPath);
console.info("index[" + i + "].iconId:" + data[i].iconId);
queryAbilityByWant(want: Want, bundleFlags: number, userId: number): Promise<Array\<AbilityInfo>> console.info("index[" + i + "].label:" + data[i].label);
console.info("index[" + i + "].labelId:" + data[i].labelId);
通过Want获取对应的Ability信息,通过Promise获取返回值。 console.info("index[" + i + "].deviceId:" + data[i].deviceId);
console.info("index[" + i + "].signatureKey:" + data[i].signatureKey);
**参数:** console.info("index[" + i + "].process:" + data[i].process);
console.info("index[" + i + "].isSystemApp:" + data[i].isSystemApp);
| 名称 | 类型 | 必填 | 描述 | console.info("index[" + i + "].isLauncherApp:" + data[i].isLauncherApp);
| ----------- | ------------- | ---- | ------------------------------------------------------------ | console.info("index[" + i + "].supportedModes:" + data[i].supportedModes);
| want | [Want](#want) | 是 | 指定Want信息 |
| bundleFlags | number | 是 | 0:返回默认BundleInfo<br/>1:返回包含abilityInfo的BundleInfo | console.info('getAllApplicationInfo Async permissions length [' + data[i].permissions.length + ']');
| userId | number | 是 | 用户ID | for (var j = 0; j < data[i].permissions.length; j++) {
console.info("index[" + i + "]permissions[" + j + "]:" + data[i].permissions[j]);
**返回值:** }
| 类型 | 说明 | console.info('getAllApplicationInfo Async moduleSourceDirs length [' + data[i].moduleSourceDirs.length + ']');
| ---------------------------- | ----------------------------------------------- | for (var j = 0; j < data[i].moduleSourceDirs.length; j++) {
| Promise<Array\<AbilityInfo>> | 返回值为Promise对象,Promise中包含Ability信息。 | console.info("index[" + i + "]moduleSourceDirs[" + j + "]:" + data[i].moduleSourceDirs[j]);
}
**示例:** console.info('getAllApplicationInfo Async moduleInfos length [' + data[i].moduleInfos.length + ']');
for (var j = 0; j < data[i].moduleInfos.length; j++) {
``` console.info("index[" + i + "]moduleInfos[" + j + "]moduleName:" + data[i].moduleInfos[j].moduleName);
bundle.queryAbilityByWant({ console.info("index[" + i + "]moduleInfos[" + j + "]moduleSourceDir:" + data[i].moduleInfos[j].moduleSourceDir);
want: { }
action: "action.system.home", console.info("index[" + i + "].entryDir:" + data[i].entryDir);
entities: ["entity.system.home"], console.info("index[" + i + "].codePath:" + data[i].codePath);
elementName: { console.info("index[" + i + "].dataDir:" + data[i].dataDir);
deviceId: "0", console.info("index[" + i + "].dataBaseDir:" + data[i].dataBaseDir);
bundleName: "com.example.myapplicationInstall", console.info("index[" + i + "].cacheDir:" + data[i].cacheDir);
abilityName: "com.example.myapplication.MainAbility", }
}, }
} ```
}, 1, 0,
}).then((data) => {
console.info("name:" + data.name);
console.info("label:" + data.label); ## bundle.queryAbilityByWant
console.info("description:" + data.description);
console.info("iconPath:" + data.iconPath); queryAbilityByWant(want: Want, bundleFlags: number, userId?: number): Promise<Array\<AbilityInfo>>
console.info("visible:" + data.visible);
console.info("kind:" + data.kind); 以异步方法根据给定的意图获取Ability信息,使用Promise形式返回结果。
console.info("uri:" + data.uri);
console.info("process:" + data.process); **需要权限:**
console.info("package:" + data.package);
console.info("bundleName:" + data.bundleName); ohos.permission.GET_BUNDLE_INFO_PRIVILEGED,ohos.permission.GET_BUNDLE_INFO
console.info("moduleName:" + data.moduleName);
console.info("applicationName:" + data.applicationName); **参数:**
console.info("deviceId:" + data.deviceId);
console.info("codePath:" + data.codePath); | 名称 | 类型 | 必填 | 描述 |
console.info("resourcePath:" + data.resourcePath); | ----------- | ------ | ---- | ------------------------------------------------------------ |
console.info("libPath:" + data.libPath); | want | Want | 是 | 包含要查询的应用程序包名称的意图。 |
| bundleFlags | number | 是 | 0:返回默认AbilityInfo<br/>2:返回包含权限信息的AbilityInfo<br/>4:返回包含应用信息的AbilityInfo |
console.info('queryAbilityInfo permissions length [' + data.permissions.length + ']'); | userId | number | 否 | 用户ID。默认值:调用方所在用户,取值范围:大于等于0 |
for (var j = 0; j < data.permissions.length; j++) {
console.info("permissions[" + j + "]:" + data.permissions[j]); **返回值:**
}
console.info('queryAbilityInfo deviceTypes length [' + data.deviceTypes.length + ']'); | 类型 | 说明 |
for (var j = 0; j < data.deviceTypes.length; j++) { | ---------------------------- | ---------------------------- |
console.info("deviceTypes[" + j + "]:" + data.deviceTypes[j]); | Promise<Array\<AbilityInfo>> | Promise形式返回Ability信息。 |
}
console.info('queryAbilityInfo deviceCapabilities length [' + data.deviceCapabilities.length + ']'); **示例:**
for (var j = 0; j < data.deviceCapabilities.length; j++) {
console.info("deviceCapabilities[" + j + "]:" + data.deviceCapabilities[j]); ```js
} bundle.queryAbilityByWant({
console.info("appInfo.name:" + data.applicationInfo.name); want: {
console.info("appInfo.bundleName:" + data.applicationInfo.bundleName); action: "action.system.home",
// ability type: 0:UNKNOWN, 1:PAGE, 2:SERVICE, 3:DATA entities: ["entity.system.home"],
console.info("type:" + data.type); elementName: {
// orientation: 0:UNSPECIFIED, 1:LANDSCAPE, 2:PORTRAIT, 3:FOLLOWRECENT, deviceId: "0",
console.info("orientation:" + data.orientation); bundleName: "com.example.myapplicationInstall",
// launchMode: 0:SINGLETON, 1:SINGLETOP, 2:STANDARD abilityName: "com.example.myapplication.MainAbility",
console.info("launchMode:" + data.launchMode); },
}
// the enum of AbilityType }, 1, 0,
console.info("AbilityType:" + bundle.AbilityType.UNKNOWN); }).then((data) => {
console.info("AbilityType:" + bundle.AbilityType.PAGE); console.info("name:" + data.name);
console.info("AbilityType:" + bundle.AbilityType.SERVICE); console.info("label:" + data.label);
console.info("AbilityType:" + bundle.AbilityType.DATA); console.info("description:" + data.description);
if (data.type == bundle.AbilityType.PAGE) { console.info("iconPath:" + data.iconPath);
console.info("this AbilityType is PAGE"); console.info("visible:" + data.visible);
} console.info("kind:" + data.kind);
// the enum of DisplayOrientation console.info("uri:" + data.uri);
console.info("DisplayOrientation:" + bundle.DisplayOrientation.UNSPECIFIED); console.info("process:" + data.process);
console.info("DisplayOrientation:" + bundle.DisplayOrientation.LANDSCAPE); console.info("package:" + data.package);
console.info("DisplayOrientation:" + bundle.DisplayOrientation.PORTRAIT); console.info("bundleName:" + data.bundleName);
console.info("DisplayOrientation:" + bundle.DisplayOrientation.FOLLOWRECENT); console.info("moduleName:" + data.moduleName);
if (data.orientation == bundle.DisplayOrientation.UNSPECIFIED) { console.info("applicationName:" + data.applicationName);
console.info("this DisplayOrientation is UNSPECIFIED"); console.info("deviceId:" + data.deviceId);
} console.info("codePath:" + data.codePath);
// the enum of LaunchMode console.info("resourcePath:" + data.resourcePath);
console.info("LaunchMode:" + bundle.LaunchMode.SINGLETON); console.info("libPath:" + data.libPath);
console.info("LaunchMode:" + bundle.LaunchMode.SINGLETOP);
console.info("LaunchMode:" + bundle.LaunchMode.STANDARD); console.info('queryAbilityInfo permissions length [' + data.permissions.length + ']');
if (data.launchMode == bundle.LaunchMode.STANDARD) { for (var j = 0; j < data.permissions.length; j++) {
console.info("this LaunchMode is STANDARD"); console.info("permissions[" + j + "]:" + data.permissions[j]);
} }
console.info('queryAbilityInfo deviceTypes length [' + data.deviceTypes.length + ']');
}) for (var j = 0; j < data.deviceTypes.length; j++) {
``` console.info("deviceTypes[" + j + "]:" + data.deviceTypes[j]);
}
console.info('queryAbilityInfo deviceCapabilities length [' + data.deviceCapabilities.length + ']');
for (var j = 0; j < data.deviceCapabilities.length; j++) {
## bundle.queryAbilityByWant console.info("deviceCapabilities[" + j + "]:" + data.deviceCapabilities[j]);
}
queryAbilityByWant(want: Want, bundleFlags: number, userId: number, callback: AsyncCallback<Array\<AbilityInfo>>): void console.info("appInfo.name:" + data.applicationInfo.name);
console.info("appInfo.bundleName:" + data.applicationInfo.bundleName);
通过Want获取对应的Ability信息,通过回调函数获取返回值。 // ability type: 0:UNKNOWN, 1:PAGE, 2:SERVICE, 3:DATA
console.info("type:" + data.type);
**参数:** // orientation: 0:UNSPECIFIED, 1:LANDSCAPE, 2:PORTRAIT, 3:FOLLOWRECENT,
console.info("orientation:" + data.orientation);
| 名称 | 类型 | 必填 | 描述 | // launchMode: 0:SINGLETON, 1:SINGLETOP, 2:STANDARD
| ----------- | ---------------------------------- | ---- | ------------------------------------------------------------ | console.info("launchMode:" + data.launchMode);
| want | [Want](#want) | 是 | 指定Want信息 |
| bundleFlags | number | 是 | 0:返回默认BundleInfo<br/>1:返回包含abilityInfo的BundleInfo | // the enum of AbilityType
| userId | number | 是 | 用户ID | console.info("AbilityType:" + bundle.AbilityType.UNKNOWN);
| callback | AsyncCallback<Array\<AbilityInfo>> | 是 | 回调方法 | console.info("AbilityType:" + bundle.AbilityType.PAGE);
console.info("AbilityType:" + bundle.AbilityType.SERVICE);
**示例:** console.info("AbilityType:" + bundle.AbilityType.DATA);
if (data.type == bundle.AbilityType.PAGE) {
``` console.info("this AbilityType is PAGE");
bundle.queryAbilityByWant( }
{ // the enum of DisplayOrientation
want: { console.info("DisplayOrientation:" + bundle.DisplayOrientation.UNSPECIFIED);
action: "action.system.home", console.info("DisplayOrientation:" + bundle.DisplayOrientation.LANDSCAPE);
entities: ["entity.system.home"], console.info("DisplayOrientation:" + bundle.DisplayOrientation.PORTRAIT);
elementName: { console.info("DisplayOrientation:" + bundle.DisplayOrientation.FOLLOWRECENT);
deviceId: "0", if (data.orientation == bundle.DisplayOrientation.UNSPECIFIED) {
bundleName: "com.example.myapplicationInstall", console.info("this DisplayOrientation is UNSPECIFIED");
abilityName: "com.example.myapplication.MainAbility", }
}, // the enum of LaunchMode
} console.info("LaunchMode:" + bundle.LaunchMode.SINGLETON);
}, 1, 0, console.info("LaunchMode:" + bundle.LaunchMode.SINGLETOP);
}, OnReceiveEvent); console.info("LaunchMode:" + bundle.LaunchMode.STANDARD);
if (data.launchMode == bundle.LaunchMode.STANDARD) {
function OnReceiveEvent(err, data) { console.info("this LaunchMode is STANDARD");
console.info("name:" + data.name); }
console.info("label:" + data.label);
console.info("description:" + data.description); })
console.info("iconPath:" + data.iconPath); ```
console.info("visible:" + data.visible);
console.info("kind:" + data.kind);
console.info("uri:" + data.uri);
console.info("process:" + data.process); ## bundle.queryAbilityByWant
console.info("package:" + data.package);
console.info("bundleName:" + data.bundleName); queryAbilityByWant(want: Want, bundleFlags: number, userId: number, callback: AsyncCallback<Array\<AbilityInfo>>): void
console.info("moduleName:" + data.moduleName);
console.info("applicationName:" + data.applicationName); 以异步方法根据给定的意图获取Ability信息,使用callback形式返回结果。
console.info("deviceId:" + data.deviceId);
console.info("codePath:" + data.codePath); **参数:**
console.info("resourcePath:" + data.resourcePath);
console.info("libPath:" + data.libPath); | 名称 | 类型 | 必填 | 描述 |
| ----------- | ---------------------------------- | ---- | ------------------------------------------------------------ |
console.info('queryAbilityInfo permissions length [' + data.permissions.length + ']'); | want | Want | 是 | 指示包含要查询的应用程序包名称的意图。 |
for (var j = 0; j < data.permissions.length; j++) { | bundleFlags | number | 是 | 0:返回默认AbilityInfo<br/>2:返回包含权限信息的AbilityInfo<br/>4:返回包含应用信息的AbilityInfo |
console.info("permissions[" + j + "]:" + data.permissions[j]); | userId | number | 是 | 用户ID |
} | callback | AsyncCallback<Array\<AbilityInfo>> | 是 | 程序启动作为入参的回调函数,返回Ability信息。 |
console.info('queryAbilityInfo deviceTypes length [' + data.deviceTypes.length + ']');
for (var j = 0; j < data.deviceTypes.length; j++) { **示例:**
console.info("deviceTypes[" + j + "]:" + data.deviceTypes[j]);
} ```js
console.info('queryAbilityInfo deviceCapabilities length [' + data.deviceCapabilities.length + ']'); bundle.queryAbilityByWant(
for (var j = 0; j < data.deviceCapabilities.length; j++) { {
console.info("deviceCapabilities[" + j + "]:" + data.deviceCapabilities[j]); want: {
} action: "action.system.home",
console.info("appInfo.name:" + data.applicationInfo.name); entities: ["entity.system.home"],
console.info("appInfo.bundleName:" + data.applicationInfo.bundleName); elementName: {
// ability type: 0:UNKNOWN, 1:PAGE, 2:SERVICE, 3:DATA deviceId: "0",
console.info("type:" + data.type); bundleName: "com.example.myapplicationInstall",
// orientation: 0:UNSPECIFIED, 1:LANDSCAPE, 2:PORTRAIT, 3:FOLLOWRECENT, abilityName: "com.example.myapplication.MainAbility",
console.info("orientation:" + data.orientation); },
// launchMode: 0:SINGLETON, 1:SINGLETOP, 2:STANDARD }
console.info("launchMode:" + data.launchMode); }, 1, 0,
}, OnReceiveEvent);
// the enum of AbilityType
console.info("AbilityType:" + bundle.AbilityType.UNKNOWN); function OnReceiveEvent(err, data) {
console.info("AbilityType:" + bundle.AbilityType.PAGE); console.info("name:" + data.name);
console.info("AbilityType:" + bundle.AbilityType.SERVICE); console.info("label:" + data.label);
console.info("AbilityType:" + bundle.AbilityType.DATA); console.info("description:" + data.description);
if (data.type == bundle.AbilityType.PAGE) { console.info("iconPath:" + data.iconPath);
console.info("this AbilityType is PAGE"); console.info("visible:" + data.visible);
} console.info("kind:" + data.kind);
// the enum of DisplayOrientation console.info("uri:" + data.uri);
console.info("DisplayOrientation:" + bundle.DisplayOrientation.UNSPECIFIED); console.info("process:" + data.process);
console.info("DisplayOrientation:" + bundle.DisplayOrientation.LANDSCAPE); console.info("package:" + data.package);
console.info("DisplayOrientation:" + bundle.DisplayOrientation.PORTRAIT); console.info("bundleName:" + data.bundleName);
console.info("DisplayOrientation:" + bundle.DisplayOrientation.FOLLOWRECENT); console.info("moduleName:" + data.moduleName);
if (data.orientation == bundle.DisplayOrientation.UNSPECIFIED) { console.info("applicationName:" + data.applicationName);
console.info("this DisplayOrientation is UNSPECIFIED"); console.info("deviceId:" + data.deviceId);
} console.info("codePath:" + data.codePath);
// the enum of LaunchMode console.info("resourcePath:" + data.resourcePath);
console.info("LaunchMode:" + bundle.LaunchMode.SINGLETON); console.info("libPath:" + data.libPath);
console.info("LaunchMode:" + bundle.LaunchMode.SINGLETOP);
console.info("LaunchMode:" + bundle.LaunchMode.STANDARD); console.info('queryAbilityInfo permissions length [' + data.permissions.length + ']');
if (data.launchMode == bundle.LaunchMode.STANDARD) { for (var j = 0; j < data.permissions.length; j++) {
console.info("this LaunchMode is STANDARD"); console.info("permissions[" + j + "]:" + data.permissions[j]);
} }
} console.info('queryAbilityInfo deviceTypes length [' + data.deviceTypes.length + ']');
``` for (var j = 0; j < data.deviceTypes.length; j++) {
console.info("deviceTypes[" + j + "]:" + data.deviceTypes[j]);
}
console.info('queryAbilityInfo deviceCapabilities length [' + data.deviceCapabilities.length + ']');
## bundle.getPermissionDef for (var j = 0; j < data.deviceCapabilities.length; j++) {
console.info("deviceCapabilities[" + j + "]:" + data.deviceCapabilities[j]);
getPermissionDef(permissionName: string): Promise\<BundleInfo> }
console.info("appInfo.name:" + data.applicationInfo.name);
获取指定权限的详细信息,通过Promise获取返回值。 console.info("appInfo.bundleName:" + data.applicationInfo.bundleName);
// ability type: 0:UNKNOWN, 1:PAGE, 2:SERVICE, 3:DATA
**参数:** console.info("type:" + data.type);
// orientation: 0:UNSPECIFIED, 1:LANDSCAPE, 2:PORTRAIT, 3:FOLLOWRECENT,
| 名称 | 类型 | 必填 | 描述 | console.info("orientation:" + data.orientation);
| -------------- | ------ | ---- | ------ | // launchMode: 0:SINGLETON, 1:SINGLETOP, 2:STANDARD
| permissionName | string | 是 | 权限名 | console.info("launchMode:" + data.launchMode);
**返回值:** // the enum of AbilityType
| 类型 | 说明 | console.info("AbilityType:" + bundle.AbilityType.UNKNOWN);
| -------------------- | -------------------- | console.info("AbilityType:" + bundle.AbilityType.PAGE);
| Promise\<BundleInfo> | 返回值为bundle信息。 | console.info("AbilityType:" + bundle.AbilityType.SERVICE);
console.info("AbilityType:" + bundle.AbilityType.DATA);
**示例:** if (data.type == bundle.AbilityType.PAGE) {
console.info("this AbilityType is PAGE");
``` }
bundle.getPermissionDef('com.permission.CAMERA').then((data) => { // the enum of DisplayOrientation
console.info("permissionName:" + data.permissionName); console.info("DisplayOrientation:" + bundle.DisplayOrientation.UNSPECIFIED);
console.info("bundleName:" + data.bundleName); console.info("DisplayOrientation:" + bundle.DisplayOrientation.LANDSCAPE);
console.info("grantMode:" + data.grantMode); console.info("DisplayOrientation:" + bundle.DisplayOrientation.PORTRAIT);
console.info("availableScope:" + data.availableScope); console.info("DisplayOrientation:" + bundle.DisplayOrientation.FOLLOWRECENT);
console.info("label:" + data.label); if (data.orientation == bundle.DisplayOrientation.UNSPECIFIED) {
console.info("labelId:" + data.labelId); console.info("this DisplayOrientation is UNSPECIFIED");
}) }
``` // the enum of LaunchMode
console.info("LaunchMode:" + bundle.LaunchMode.SINGLETON);
console.info("LaunchMode:" + bundle.LaunchMode.SINGLETOP);
console.info("LaunchMode:" + bundle.LaunchMode.STANDARD);
## bundle.getPermissionDef if (data.launchMode == bundle.LaunchMode.STANDARD) {
console.info("this LaunchMode is STANDARD");
getPermissionDef(permissionName: string, callback: AsyncCallback\<PermissionDef>): void }
}
获取指定权限的详细信息,通过回调函数获取返回值。 ```
**参数:** ## bundle.queryAbilityByWant
| 名称 | 类型 | 必填 | 描述 | queryAbilityByWant(want: Want, bundleFlags: number, callback: AsyncCallback<Array<AbilityInfo>>): void
| -------------- | ----------------------------- | ---- | -------- |
| permissionName | string | 是 | 权限名 | 以异步方法根据给定的意图获取Ability信息,使用callback形式返回结果。
| callback | AsyncCallback\<PermissionDef> | 是 | 回调方法 |
**参数:**
**示例:**
| 名称 | 类型 | 必填 | 描述 |
``` | ----------- | ---------------------------------- | ---- | ------------------------------------------------------------ |
bundle.getBundleInstaller().then((data) => { | want | Want | 是 | 指示包含要查询的应用程序包名称的意图。 |
data.getPermissionDef('com.permission.CAMERA', OnReceiveEvent); | bundleFlags | number | 是 | 0:返回默认AbilityInfo<br/>2:返回包含权限信息的AbilityInfo<br/>4:返回包含应用信息的AbilityInfo |
| callback | AsyncCallback<Array\<AbilityInfo>> | 是 | 程序启动作为入参的回调函数,返回Ability信息。 |
function OnReceiveEvent(err, data) {
console.info("permissionName:" + data.permissionName); **示例:**
console.info("bundleName:" + data.bundleName);
console.info("grantMode:" + data.grantMode); ```js
console.info("availableScope:" + data.availableScope); bundle.queryAbilityByWant(
console.info("label:" + data.label); {
console.info("labelId:" + data.labelId); want: {
} action: "action.system.home",
}) entities: ["entity.system.home"],
``` elementName: {
deviceId: "0",
bundleName: "com.example.myapplicationInstall",
abilityName: "com.example.myapplication.MainAbility",
## bundle.getBundleArchiveInfo },
}
getBundleArchiveInfo(hapFilePath: string, bundleFlags: number): Promise\<BundleInfo> }, 1,
}, OnReceiveEvent);
获取HAP包含的应用包信息,通过Promise获取返回值。
function OnReceiveEvent(err, data) {
**参数:** console.info("name:" + data.name);
console.info("label:" + data.label);
| 名称 | 类型 | 必填 | 描述 | console.info("description:" + data.description);
| ----------- | ------ | ---- | ------------------------------------------------------------ | console.info("iconPath:" + data.iconPath);
| hapFilePath | string | 是 | hap包文件路径 | console.info("visible:" + data.visible);
| bundleFlags | number | 是 | 0:返回默认BundleInfo<br/>1:返回包含abilityInfo的BundleInfo | console.info("kind:" + data.kind);
console.info("uri:" + data.uri);
**返回值:** console.info("process:" + data.process);
| 类型 | 说明 | console.info("package:" + data.package);
| -------------------- | -------------------- | console.info("bundleName:" + data.bundleName);
| Promise\<BundleInfo> | 返回值为bundle信息。 | console.info("moduleName:" + data.moduleName);
console.info("applicationName:" + data.applicationName);
**示例:** console.info("deviceId:" + data.deviceId);
console.info("codePath:" + data.codePath);
``` console.info("resourcePath:" + data.resourcePath);
bundle.getBundleArchiveInfo('/data/test.hap', 1).then((data) => { console.info("libPath:" + data.libPath);
console.info("name:" + data.name);
console.info("label:" + data.label); console.info('queryAbilityInfo permissions length [' + data.permissions.length + ']');
console.info("description:" + data.description); for (var j = 0; j < data.permissions.length; j++) {
console.info("vendor:" + data.vendor); console.info("permissions[" + j + "]:" + data.permissions[j]);
console.info("versionCode:" + data.versionCode); }
console.info("versionName:" + data.versionName); console.info('queryAbilityInfo deviceTypes length [' + data.deviceTypes.length + ']');
console.info("jointUserId:" + data.jointUserId); for (var j = 0; j < data.deviceTypes.length; j++) {
console.info("minSdkVersion:" + data.minSdkVersion); console.info("deviceTypes[" + j + "]:" + data.deviceTypes[j]);
console.info("maxSdkVersion:" + data.maxSdkVersion); }
console.info("mainEntry:" + data.mainEntry); console.info('queryAbilityInfo deviceCapabilities length [' + data.deviceCapabilities.length + ']');
console.info("cpuAbi:" + data.cpuAbi); for (var j = 0; j < data.deviceCapabilities.length; j++) {
console.info("appId:" + data.appId); console.info("deviceCapabilities[" + j + "]:" + data.deviceCapabilities[j]);
console.info("compatibleVersion:" + data.compatibleVersion); }
console.info("targetVersion:" + data.targetVersion); console.info("appInfo.name:" + data.applicationInfo.name);
console.info("releaseType:" + data.releaseType); console.info("appInfo.bundleName:" + data.applicationInfo.bundleName);
console.info("uid:" + data.uid); // ability type: 0:UNKNOWN, 1:PAGE, 2:SERVICE, 3:DATA
console.info("gid:" + data.gid); console.info("type:" + data.type);
console.info("seInfo:" + data.seInfo); // orientation: 0:UNSPECIFIED, 1:LANDSCAPE, 2:PORTRAIT, 3:FOLLOWRECENT,
console.info("entryModuleName:" + data.entryModuleName); console.info("orientation:" + data.orientation);
console.info("isKeepAlive:" + data.isKeepAlive); // launchMode: 0:SINGLETON, 1:SINGLETOP, 2:STANDARD
console.info("isNativeApp:" + data.isNativeApp); console.info("launchMode:" + data.launchMode);
console.info("installTime:" + data.installTime);
console.info("updateTime:" + data.updateTime); // the enum of AbilityType
console.info("appInfo.name:" + data.applicationInfo.name); console.info("AbilityType:" + bundle.AbilityType.UNKNOWN);
console.info("appInfo.bundleName:" + data.applicationInfo.bundleName); console.info("AbilityType:" + bundle.AbilityType.PAGE);
console.info('getBundleArchiveInfo reqPermissions length [' + data.reqPermissions.length + ']'); console.info("AbilityType:" + bundle.AbilityType.SERVICE);
for (var j = 0; j < data.reqPermissions.length; j++) { console.info("AbilityType:" + bundle.AbilityType.DATA);
console.info("reqPermissions[" + j + "]:" + data.reqPermissions[j]); if (data.type == bundle.AbilityType.PAGE) {
} console.info("this AbilityType is PAGE");
console.info('getBundleArchiveInfo defPermissions length [' + data.defPermissions.length + ']'); }
for (var j = 0; j < data.defPermissions.length; j++) { // the enum of DisplayOrientation
console.info("defPermissions[" + j + "]:" + data.defPermissions[j]); console.info("DisplayOrientation:" + bundle.DisplayOrientation.UNSPECIFIED);
} console.info("DisplayOrientation:" + bundle.DisplayOrientation.LANDSCAPE);
console.info('getBundleArchiveInfo hapModuleNames length [' + data.hapModuleNames.length + ']'); console.info("DisplayOrientation:" + bundle.DisplayOrientation.PORTRAIT);
for (var j = 0; j < data.hapModuleNames.length; j++) { console.info("DisplayOrientation:" + bundle.DisplayOrientation.FOLLOWRECENT);
console.info("hapModuleNames[" + j + "]:" + data.hapModuleNames[j]); if (data.orientation == bundle.DisplayOrientation.UNSPECIFIED) {
} console.info("this DisplayOrientation is UNSPECIFIED");
console.info('getBundleArchiveInfo moduleNames length [' + data.moduleNames.length + ']'); }
for (var j = 0; j < data.moduleNames.length; j++) { // the enum of LaunchMode
console.info("moduleNames[" + j + "]:" + data.moduleNames[j]); console.info("LaunchMode:" + bundle.LaunchMode.SINGLETON);
} console.info("LaunchMode:" + bundle.LaunchMode.SINGLETOP);
console.info('getBundleArchiveInfo modulePublicDirs length [' + data.modulePublicDirs.length + ']'); console.info("LaunchMode:" + bundle.LaunchMode.STANDARD);
for (var j = 0; j < data.modulePublicDirs.length; j++) { if (data.launchMode == bundle.LaunchMode.STANDARD) {
console.info("modulePublicDirs[" + j + "]:" + data.modulePublicDirs[j]); console.info("this LaunchMode is STANDARD");
} }
console.info('getBundleArchiveInfo moduleDirs length [' + data.moduleDirs.length + ']'); }
for (var j = 0; j < data.moduleDirs.length; j++) { ```
console.info("moduleDirs[" + j + "]:" + data.moduleDirs[j]);
} ## bundle.getBundleArchiveInfo
console.info('getBundleArchiveInfo moduleResPaths length [' + data.moduleResPaths.length + ']');
for (var j = 0; j < data.moduleResPaths.length; j++) { getBundleArchiveInfo(hapFilePath: string, bundleFlags: number): Promise\<BundleInfo>
console.info("moduleResPaths[" + j + "]:" + data.moduleResPaths[j]);
} 以异步方法从给定的HAP中获取BundleInfo,使用Promise形式返回结果。
console.info('getBundleArchiveInfo abilityInfo length [' + data.abilityInfos.length + ']');
for (var j = 0; j < data.abilityInfos.length; j++) { **参数:**
console.info("abilityInfos[" + j + "]name:" + data.abilityInfos[j].name);
console.info("abilityInfos[" + j + "]package:" + data.abilityInfos[j].package); | 名称 | 类型 | 必填 | 描述 |
} | ----------- | ------ | ---- | ------------------------------------------------------------ |
}) | hapFilePath | string | 是 | HAP文件路径 |
``` | bundleFlags | number | 是 | 0:返回默认BundleInfo<br/>1:返回包含abilityInfo的BundleInfo |
## bundle.getBundleArchiveInfo **返回值:**
getBundleArchiveInfo(hapFilePath: string, bundleFlags: number, callback: AsyncCallback\<BundleInfo>): void | 类型 | 说明 |
| -------------------- | ------------------------------------------ |
获取HAP包含的应用包信息,通过回调函数获取返回值。 | Promise\<BundleInfo> | 返回值为Promise对象,Promise中包含包信息。 |
**参数:** **示例:**
| 名称 | 类型 | 必填 | 描述 | ```js
| ----------- | ------------------------- | ---- | ------------------------------------------------------------ | bundle.getBundleArchiveInfo('/data/test.hap', 1).then((data) => {
| hapFilePath | string | 是 | hap包文件路径 | console.info("name:" + data.name);
| bundleFlags | number | 是 | 0:返回默认BundleInfo<br/>1:返回包含abilityInfo的BundleInfo | console.info("label:" + data.label);
| callback | AsyncCallback<BundleInfo> | 是 | 回调方法 | console.info("description:" + data.description);
console.info("vendor:" + data.vendor);
**示例:** console.info("versionCode:" + data.versionCode);
console.info("versionName:" + data.versionName);
``` console.info("jointUserId:" + data.jointUserId);
bundle.getBundleArchiveInfo('/data/test.hap', 1, OnReceiveEvent); console.info("minSdkVersion:" + data.minSdkVersion);
console.info("maxSdkVersion:" + data.maxSdkVersion);
function OnReceiveEvent(err, data) { console.info("mainEntry:" + data.mainEntry);
console.info("name:" + data.name); console.info("cpuAbi:" + data.cpuAbi);
console.info("label:" + data.label); console.info("appId:" + data.appId);
console.info("description:" + data.description); console.info("compatibleVersion:" + data.compatibleVersion);
console.info("vendor:" + data.vendor); console.info("targetVersion:" + data.targetVersion);
console.info("versionCode:" + data.versionCode); console.info("releaseType:" + data.releaseType);
console.info("versionName:" + data.versionName); console.info("uid:" + data.uid);
console.info("jointUserId:" + data.jointUserId); console.info("gid:" + data.gid);
console.info("minSdkVersion:" + data.minSdkVersion); console.info("seInfo:" + data.seInfo);
console.info("maxSdkVersion:" + data.maxSdkVersion); console.info("entryModuleName:" + data.entryModuleName);
console.info("mainEntry:" + data.mainEntry); console.info("isKeepAlive:" + data.isKeepAlive);
console.info("cpuAbi:" + data.cpuAbi); console.info("isNativeApp:" + data.isNativeApp);
console.info("appId:" + data.appId); console.info("installTime:" + data.installTime);
console.info("compatibleVersion:" + data.compatibleVersion); console.info("updateTime:" + data.updateTime);
console.info("targetVersion:" + data.targetVersion); console.info("appInfo.name:" + data.applicationInfo.name);
console.info("releaseType:" + data.releaseType); console.info("appInfo.bundleName:" + data.applicationInfo.bundleName);
console.info("uid:" + data.uid); console.info('getBundleArchiveInfo reqPermissions length [' + data.reqPermissions.length + ']');
console.info("gid:" + data.gid); for (var j = 0; j < data.reqPermissions.length; j++) {
console.info("seInfo:" + data.seInfo); console.info("reqPermissions[" + j + "]:" + data.reqPermissions[j]);
console.info("entryModuleName:" + data.entryModuleName); }
console.info("isKeepAlive:" + data.isKeepAlive); console.info('getBundleArchiveInfo defPermissions length [' + data.defPermissions.length + ']');
console.info("isNativeApp:" + data.isNativeApp); for (var j = 0; j < data.defPermissions.length; j++) {
console.info("installTime:" + data.installTime); console.info("defPermissions[" + j + "]:" + data.defPermissions[j]);
console.info("updateTime:" + data.updateTime); }
console.info("appInfo.name:" + data.applicationInfo.name); console.info('getBundleArchiveInfo hapModuleNames length [' + data.hapModuleNames.length + ']');
console.info("appInfo.bundleName:" + data.applicationInfo.bundleName); for (var j = 0; j < data.hapModuleNames.length; j++) {
console.info('getBundleArchiveInfo reqPermissions length [' + data.reqPermissions.length + ']'); console.info("hapModuleNames[" + j + "]:" + data.hapModuleNames[j]);
for (var j = 0; j < data.reqPermissions.length; j++) { }
console.info("reqPermissions[" + j + "]:" + data.reqPermissions[j]); console.info('getBundleArchiveInfo moduleNames length [' + data.moduleNames.length + ']');
} for (var j = 0; j < data.moduleNames.length; j++) {
console.info('getBundleArchiveInfo defPermissions length [' + data.defPermissions.length + ']'); console.info("moduleNames[" + j + "]:" + data.moduleNames[j]);
for (var j = 0; j < data.defPermissions.length; j++) { }
console.info("defPermissions[" + j + "]:" + data.defPermissions[j]); console.info('getBundleArchiveInfo modulePublicDirs length [' + data.modulePublicDirs.length + ']');
} for (var j = 0; j < data.modulePublicDirs.length; j++) {
console.info('getBundleArchiveInfo hapModuleNames length [' + data.hapModuleNames.length + ']'); console.info("modulePublicDirs[" + j + "]:" + data.modulePublicDirs[j]);
for (var j = 0; j < data.hapModuleNames.length; j++) { }
console.info("hapModuleNames[" + j + "]:" + data.hapModuleNames[j]); console.info('getBundleArchiveInfo moduleDirs length [' + data.moduleDirs.length + ']');
} for (var j = 0; j < data.moduleDirs.length; j++) {
console.info('getBundleArchiveInfo moduleNames length [' + data.moduleNames.length + ']'); console.info("moduleDirs[" + j + "]:" + data.moduleDirs[j]);
for (var j = 0; j < data.moduleNames.length; j++) { }
console.info("moduleNames[" + j + "]:" + data.moduleNames[j]); console.info('getBundleArchiveInfo moduleResPaths length [' + data.moduleResPaths.length + ']');
} for (var j = 0; j < data.moduleResPaths.length; j++) {
console.info('getBundleArchiveInfo modulePublicDirs length [' + data.modulePublicDirs.length + ']'); console.info("moduleResPaths[" + j + "]:" + data.moduleResPaths[j]);
for (var j = 0; j < data.modulePublicDirs.length; j++) { }
console.info("modulePublicDirs[" + j + "]:" + data.modulePublicDirs[j]); console.info('getBundleArchiveInfo abilityInfo length [' + data.abilityInfos.length + ']');
} for (var j = 0; j < data.abilityInfos.length; j++) {
console.info('getBundleArchiveInfo moduleDirs length [' + data.moduleDirs.length + ']'); console.info("abilityInfos[" + j + "]name:" + data.abilityInfos[j].name);
for (var j = 0; j < data.moduleDirs.length; j++) { console.info("abilityInfos[" + j + "]package:" + data.abilityInfos[j].package);
console.info("moduleDirs[" + j + "]:" + data.moduleDirs[j]); }
} })
console.info('getBundleArchiveInfo moduleResPaths length [' + data.moduleResPaths.length + ']'); ```
for (var j = 0; j < data.moduleResPaths.length; j++) {
console.info("moduleResPaths[" + j + "]:" + data.moduleResPaths[j]); ## bundle.getBundleArchiveInfo
}
console.info('getBundleArchiveInfo abilityInfo length [' + data.abilityInfos.length + ']'); getBundleArchiveInfo(hapFilePath: string, bundleFlags: number, callback: AsyncCallback\<BundleInfo>): void
for (var j = 0; j < data.abilityInfos.length; j++) {
console.info("abilityInfos[" + j + "]name:" + data.abilityInfos[j].name); 以异步方法从给定的HAP中获取BundleInfo,使用callback形式返回结果。
console.info("abilityInfos[" + j + "]package:" + data.abilityInfos[j].package);
} **参数:**
}
``` | 名称 | 类型 | 必填 | 描述 |
| ----------- | ------------------------- | ---- | ------------------------------------------------------------ |
## install | hapFilePath | string | 是 | HAP文件路径 |
| bundleFlags | number | 是 | 0:返回默认BundleInfo<br/>1:返回包含abilityInfo的BundleInfo |
install(bundleFilePaths: Array\<string>, param: InstallParam, callback: AsyncCallback\<InstallStatus>): void | callback | AsyncCallback<BundleInfo> | 是 | 程序启动作为入参的回调函数,返回包信息。 |
安装hap包。 **示例:**
**参数:** ```js
bundle.getBundleArchiveInfo('/data/test.hap', 1, OnReceiveEvent);
| 名称 | 类型 | 必填 | 描述 |
| --------------- | ---------------------------------------------- | ---- | ------------------------------------------------------------ | function OnReceiveEvent(err, data) {
| bundleFilePaths | Array\<string> | 是 | 安装用包路径 | console.info("name:" + data.name);
| param | InstallParam | 是 | userId:用户ID<br/>installFlag:安装标识。<br/> NORMAL:安装/卸载<br/> REPLACE_EXISTING:更新<br/>isKeepData:卸载时是否保留运行时数据 | console.info("label:" + data.label);
| callback | AsyncCallback<[InstallStatus](#installstatus)> | 是 | 回调方法 | console.info("description:" + data.description);
console.info("vendor:" + data.vendor);
**示例:** console.info("versionCode:" + data.versionCode);
console.info("versionName:" + data.versionName);
``` console.info("jointUserId:" + data.jointUserId);
bundle.getBundleInstaller().then((data) => { console.info("minSdkVersion:" + data.minSdkVersion);
data.install(['/data/test.hap'], { console.info("maxSdkVersion:" + data.maxSdkVersion);
param: { console.info("mainEntry:" + data.mainEntry);
userId: 0, console.info("cpuAbi:" + data.cpuAbi);
isKeepData: false console.info("appId:" + data.appId);
} console.info("compatibleVersion:" + data.compatibleVersion);
}, OnReceiveinstallEvent); console.info("targetVersion:" + data.targetVersion);
console.info("releaseType:" + data.releaseType);
function OnReceiveinstallEvent(err, data) { console.info("uid:" + data.uid);
console.info("name: for begin"); console.info("gid:" + data.gid);
console.info("install result code:" + data.status); console.info("seInfo:" + data.seInfo);
console.info("install result msg:" + data.statusMessage); console.info("entryModuleName:" + data.entryModuleName);
} console.info("isKeepAlive:" + data.isKeepAlive);
}) console.info("isNativeApp:" + data.isNativeApp);
``` console.info("installTime:" + data.installTime);
console.info("updateTime:" + data.updateTime);
## uninstall console.info("appInfo.name:" + data.applicationInfo.name);
console.info("appInfo.bundleName:" + data.applicationInfo.bundleName);
uninstall(bundleName: string, param: InstallParam, callback: AsyncCallback\<InstallStatus>): void console.info('getBundleArchiveInfo reqPermissions length [' + data.reqPermissions.length + ']');
for (var j = 0; j < data.reqPermissions.length; j++) {
卸载hap包。 console.info("reqPermissions[" + j + "]:" + data.reqPermissions[j]);
}
**参数:** console.info('getBundleArchiveInfo defPermissions length [' + data.defPermissions.length + ']');
for (var j = 0; j < data.defPermissions.length; j++) {
| 名称 | 类型 | 必填 | 描述 | console.info("defPermissions[" + j + "]:" + data.defPermissions[j]);
| ---------- | ---------------------------------------------- | ---- | ------------------------------------------------------------ | }
| bundleName | string | 是 | 卸载用包名 | console.info('getBundleArchiveInfo hapModuleNames length [' + data.hapModuleNames.length + ']');
| param | InstallParam | 是 | userId:用户ID<br/>installFlag:安装标识。<br/> NORMAL:安装/卸载<br/> REPLACE_EXISTING:更新<br/>isKeepData:卸载时是否保留运行时数据 | for (var j = 0; j < data.hapModuleNames.length; j++) {
| callback | AsyncCallback<[InstallStatus](#installstatus)> | 是 | 回调方法 | console.info("hapModuleNames[" + j + "]:" + data.hapModuleNames[j]);
}
**示例:** console.info('getBundleArchiveInfo moduleNames length [' + data.moduleNames.length + ']');
for (var j = 0; j < data.moduleNames.length; j++) {
``` console.info("moduleNames[" + j + "]:" + data.moduleNames[j]);
bundle.getBundleInstaller().then((data) => { }
data.uninstall('com.example.myapplication', { console.info('getBundleArchiveInfo modulePublicDirs length [' + data.modulePublicDirs.length + ']');
param: { for (var j = 0; j < data.modulePublicDirs.length; j++) {
userId: 0, console.info("modulePublicDirs[" + j + "]:" + data.modulePublicDirs[j]);
isKeepData: false }
} console.info('getBundleArchiveInfo moduleDirs length [' + data.moduleDirs.length + ']');
}, OnReceiveinstallEvent); for (var j = 0; j < data.moduleDirs.length; j++) {
console.info("moduleDirs[" + j + "]:" + data.moduleDirs[j]);
function OnReceiveinstallEvent(err, data) { }
console.info("name: for begin"); console.info('getBundleArchiveInfo moduleResPaths length [' + data.moduleResPaths.length + ']');
console.info("uninstall result code:" + data.status); for (var j = 0; j < data.moduleResPaths.length; j++) {
console.info("uninstall result msg:" + data.statusMessage); console.info("moduleResPaths[" + j + "]:" + data.moduleResPaths[j]);
} }
}) console.info('getBundleArchiveInfo abilityInfo length [' + data.abilityInfos.length + ']');
``` for (var j = 0; j < data.abilityInfos.length; j++) {
console.info("abilityInfos[" + j + "]name:" + data.abilityInfos[j].name);
## bundle.getAllShortcutInfo console.info("abilityInfos[" + j + "]package:" + data.abilityInfos[j].package);
}
getAllShortcutInfo(bundleName: string): Promise\<ShortcutInfo> }
```
获取指定bundle名的shortcut信息,通过Promise获取返回值。
## bundle.getBundleInstaller
**参数:**
getBundleInstaller(): Promise<BundleInstaller>
| 名称 | 类型 | 必填 | 描述 |
| ---------- | ------ | ---- | -------- | 以异步方法获取BundleInstaller,使用Promise形式返回结果。
| bundleName | string | 是 | bundle名 |
**返回值:**
**返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| ---------------------- | -------------------- | | ------------------------ | --------------------------------------------------- |
| Promise\<ShortcutInfo> | 返回值为bundle信息。 | | Promise<BundleInstaller> | 返回值为Promise对象,Promise中包含BundleInstaller。 |
**示例:** **示例:**
``` ```js
bundle.getAllShortcutInfo('com.example.third1').then((data) => { bundle.getBundleInstaller().then((data) => {
... data.install(['/data/test.hap'], {
}); param: {
``` userId: 0,
installFlag: 1,
isKeepData: false
}
## bundle.getAllShortcutInfo }, OnReceiveinstallEvent);
getAllShortcutInfo(bundleName: string, callback: AsyncCallback<Array\<ShortcutInfo>>): void function OnReceiveinstallEvent(err, data) {
console.info("name: for begin");
获取指定bundle名的shortcut信息,通过回调函数获取返回值。 console.info("install result code:" + data.status);
console.info("install result msg:" + data.statusMessage);
**参数:** }
})
| 名称 | 类型 | 必填 | 描述 | ```
| ---------- | --------------------------- | ---- | -------- |
| bundleName | string | 是 | bundle名 | ## bundle.getBundleInstaller
| callback | AsyncCallback<ShortcutInfo> | 是 | 回调方法 |
getBundleInstaller(callback: AsyncCallback<BundleInstaller>): void;
**示例:**
以异步方法从给定的HAP中获取BundleInstaller,使用callback形式返回结果。
```
bundle.getAllShortcutInfo('com.example.third1', OnReceiveEvent); **参数:**
function OnReceiveEvent(err, data) { | 名称 | 类型 | 必填 | 描述 |
... | -------- | ------------------------------ | ---- | ------------------------------------------------- |
} | callback | AsyncCallback<BundleInstaller> | 是 | 程序启动作为入参的回调函数,返回BundleInstaller。 |
```
**示例:**
## bundle.checkPermission
```js
checkPermission(bundleName: string, permission: string): Promise\<GrantStatus> bundle.getBundleInstaller((err, data)=>{
data.uninstall('com.example.myapplication', {
校验应用是否具有指定权限,通过Promise获取返回值。 userId: 0,
installFlag: 1,
**参数:** isKeepData: false
}, OnReceiveinstallEvent);
| 名称 | 类型 | 必填 | 描述 |
| ---------- | ------ | ---- | -------- | function OnReceiveinstallEvent(err, data) {
| bundleName | string | 是 | bundle名 | console.info("name: for begin");
| permission | string | 是 | 权限名 | console.info("uninstall result code:" + data.status);
console.info("uninstall result msg:" + data.statusMessage);
**返回值:** }
| 类型 | 说明 | })
| --------------------- | -------------------- | ```
| Promise\<GrantStatus> | 返回值为bundle信息。 |
## bundle.getAllShortcutInfo
**示例:**
getAllShortcutInfo(bundleName: string): Promise<Array<ShortcutInfo>>
```
bundle.getModuleUsageRecords('com.example.actsbmscheckpermissiontest', 'com.permission.CAMERA').then((data) => { 以异步方法获取指定bundle的Shortcut信息,使用Promise形式返回结果。
...
}); **参数:**
```
| 名称 | 类型 | 必填 | 描述 |
## bundle.checkPermission | ---------- | ------ | ---- | -------- |
| bundleName | string | 是 | bundle名 |
checkPermission(bundleName: string, permission: string, callback: AsyncCallback\<GrantStatus>): void
**返回值:**
校验应用是否具有指定权限,通过回调函数获取返回值。 | 类型 | 说明 |
| ----------------------------- | ---------------------------------------------------- |
**参数:** | Promise\<Array<ShortcutInfo>> | 返回值为Promise对象,Promise中包含Shortcut信息列表。 |
| 名称 | 类型 | 必填 | 描述 | **示例:**
| ---------- | --------------------------- | ---- | -------- |
| bundleName | string | 是 | bundle名 | ```js
| permission | string | 是 | 权限名 | bundle.getAllShortcutInfo('com.example.third1').then((data) => {
| callback | AsyncCallback\<GrantStatus> | 是 | 回调方法 | console.log("getAllShortcutInfo data:" + data);
});
**示例:** ```
```
bundle.checkPermission('com.example.actsbmscheckpermissiontest', 'com.permission.CAMERA', OnReceiveEvent);
## bundle.getAllShortcutInfo
function OnReceiveEvent(err, data) {
... getAllShortcutInfo(bundleName: string, callback: AsyncCallback<Array\<ShortcutInfo>>): void
}
``` 以异步方法获取指定bundle的Shortcut信息,使用callback形式返回结果。
## Want **参数:**
| 名称 | 读写属性 | 类型 | 必填 | 描述 | | 名称 | 类型 | 必填 | 描述 |
| ----------- | -------- | --------------------------- | ---- | ------------------------------------------------------------ | | ---------- | ------------------------------------ | ---- | -------------------------------------------------- |
| elementName | 只读 | [ElementName](#elementname) | 是 | 表示运行指定Ability的ElementName。 | | bundleName | string | 是 | bundle名 |
| uri | 只读 | string | 否 | 表示Uri描述。 | | callback | AsyncCallback<<Array\<ShortcutInfo>> | 是 | 程序启动作为入参的回调函数,返回Shortcut信息列表。 |
| flags | 只读 | int | 否 | Ability的flag,表示处理Want的方式。 |
| type | 只读 | string | 否 | Want中的type属性是指由Want的URI所指示的资源的MIME类型。 | **示例:**
| action | 只读 | string | 否 | 表示动作,通常使用系统预置Action,应用也可以自定义Action。 |
| want_param | 只读 | {[key: string]: any} | 否 | want_param是一种支持自定义的数据结构,开发者可以通过want_param传递某些请求所需的额外信息。 | ```js
| entities | 只读 | Array\<string> | 否 | 表示类别,通常使用系统预置Entity,应用也可以自定义Entity。 | bundle.getAllShortcutInfo('com.example.third1', OnReceiveEvent);
## ElementName function OnReceiveEvent(err, data) {
console.log("getAllShortcutInfo data:" + data);
| 名称 | 读写属性 | 类型 | 必填 | 描述 | }
| ----------- | -------- | ------ | ---- | ------------------------------------------------------------ | ```
| deviceId | 只读 | string | 否 | 表示运行指定Ability的设备ID。 |
| bundleName | 只读 | string | 是 | 表示包描述。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 | ## bundle.checkPermission
| abilityName | 只读 | string | 是 | 表示待启动的Ability名称。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 |
checkPermission(bundleName: string, permission: string): Promise\<GrantStatus>
## InstallStatus
以异步方法校验指定bundle是否具有指定权限,使用Promise形式返回结果。
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------- | -------- | ---------------- | ---- | ------------------------------------------------------------ | **参数:**
| status | 只读 | InstallErrorCode | 是 | 安装结果code<br/>SUCCESS = 0<br/>STATUS_INSTALL_FAILURE = 1<br/>STATUS_INSTALL_FAILURE_ABORTED = 2,<br/>STATUS_INSTALL_FAILURE_INVALID = 3<br/>STATUS_INSTALL_FAILURE_CONFLICT = 4<br/>STATUS_INSTALL_FAILURE_STORAGE = 5<br/>STATUS_INSTALL_FAILURE_INCOMPATIBLE = 6<br/>STATUS_INSTALL_FAILURE_DOWNLOAD_TIMEOUT = 0x0B<br/>STATUS_INSTALL_FAILURE_DOWNLOAD_FAILED = 0x0C<br/>STATUS_ABILITY_NOT_FOUND = 0x40<br/>STATUS_BMS_SERVICE_ERROR = 0x41 |
| statusMessage | 只读 | string | 是 | 安装结果Message | | 名称 | 类型 | 必填 | 描述 |
| ---------- | ------ | ---- | -------- |
| bundleName | string | 是 | bundle名 |
| permission | string | 是 | 权限名 |
**返回值:**
| 类型 | 说明 |
| --------------------- | ------------------------------------------------------------ |
| Promise\<GrantStatus> | 返回值为Promise对象,Promise中包含校验结果。<br/>-1: 未授权 <br/>0: 已授权 |
**示例:**
```js
bundle.checkPermission('com.example.actsbmscheckpermissiontest', 'com.permission.CAMERA').then((data) => {
console.log("checkPermission data:" + data);
});
```
## bundle.checkPermission
checkPermission(bundleName: string, permission: string, callback: AsyncCallback\<GrantStatus>): void
以异步方法校验指定bundle是否具有指定权限,使用callback形式返回结果。
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ---------- | --------------------------- | ---- | ------------------------------------------------------------ |
| bundleName | string | 是 | bundle名 |
| permission | string | 是 | 权限名 |
| callback | AsyncCallback\<GrantStatus> | 是 | 程序启动作为入参的回调函数,返回校验结果。<br/>-1: 未授权 <br/>0: 已授权 |
**示例:**
```js
bundle.checkPermission('com.example.actsbmscheckpermissiontest', 'com.permission.CAMERA', OnReceiveEvent);
function OnReceiveEvent(err, data) {
console.log("checkPermission data:" + data);
}
```
## ElementName
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ----------- | -------- | ------ | ---- | ------------------------------------------------------------ |
| deviceId | 只读 | string | 否 | 表示运行指定Ability的设备ID。 |
| bundleName | 只读 | string | 是 | 表示包描述。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 |
| abilityName | 只读 | string | 是 | 表示待启动的Ability名称。如果在Want中同时指定了BundleName和AbilityName,则Want可以直接匹配到指定的Ability。 |
## InstallStatus
| 名称 | 读写属性 | 类型 | 必填 | 描述 |
| ------------- | -------- | ---------------- | ---- | ------------------------------------------------------------ |
| status | 只读 | InstallErrorCode | 是 | 安装结果code<br/>SUCCESS = 0<br/>STATUS_INSTALL_FAILURE = 1<br/>STATUS_INSTALL_FAILURE_ABORTED = 2,<br/>STATUS_INSTALL_FAILURE_INVALID = 3<br/>STATUS_INSTALL_FAILURE_CONFLICT = 4<br/>STATUS_INSTALL_FAILURE_STORAGE = 5<br/>STATUS_INSTALL_FAILURE_INCOMPATIBLE = 6<br/>STATUS_INSTALL_FAILURE_DOWNLOAD_TIMEOUT = 0x0B<br/>STATUS_INSTALL_FAILURE_DOWNLOAD_FAILED = 0x0C<br/>STATUS_ABILITY_NOT_FOUND = 0x40<br/>STATUS_BMS_SERVICE_ERROR = 0x41 |
| statusMessage | 只读 | string | 是 | 安装结果Message |
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册