Context模塊
Context模塊提供了ability或application的上下文的能力,包括允許訪問特定于應用程序的資源、請求和驗證權限等。
說明:
本模塊首批接口從API version 6開始支持。后續版本的新增接口,采用上角標單獨標記接口的起始版本。
本模塊接口僅可在FA模型下使用。
使用說明
Context對象是在featureAbility中創建實例,并通過featureAbility的getContext()接口返回,因此在使用Context時,必須導入@ohos.ability.featureAbility庫。示例如下:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir()
開發前請熟悉鴻蒙開發指導文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
Context.getOrCreateLocalDir7+
getOrCreateLocalDir(callback: AsyncCallback): void
獲取應用程序的本地根目錄(callback形式)。
如果是第一次調用,將創建目錄。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回應用程序的本地根目錄。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir((err, data)= >{
console.info("data=" + data);
})
Context.getOrCreateLocalDir7+
getOrCreateLocalDir(): Promise
獲取應用程序的本地根目錄(Promise形式)。
如果是第一次調用,將創建目錄。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise | 應用程序的本地根目錄。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateLocalDir().then((data) = > {
console.info("data=" + data);
});
Context.verifyPermission7+
verifyPermission(permission: string, options: PermissionOptions, callback: AsyncCallback): void
驗證系統中運行的特定pid和uid是否允許指定的權限(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
permission | string | 是 | 指定權限的名稱。 |
options | [PermissionOptions] | 是 | 權限選項。 |
callback | AsyncCallback | 是 | 返回權限驗證結果,0有權限,-1無權限。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
import bundle from '@ohos.bundle'
var context = featureAbility.getContext();
bundle.getBundleInfo('com.context.test', 1, (err,datainfo) = >{
context.verifyPermission("com.example.permission", {uid:datainfo.uid});
});
Context.verifyPermission7+
verifyPermission(permission: string, callback: AsyncCallback): void
驗證系統中運行的當前pid和uid是否具有指定的權限(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
permission | string | 是 | 指定權限的名稱。 |
callback | AsyncCallback | 是 | 返回權限驗證結果,0有權限,-1無權限。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.verifyPermission("com.example.permission")
Context.verifyPermission7+
verifyPermission(permission: string, options?: PermissionOptions): Promise
驗證系統中運行的特定pid和uid是否具有指定的權限(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
permission | string | 是 | 指定權限的名稱。 |
options | [PermissionOptions] | 否 | 權限選項。 |
返回值:
類型 | 說明 |
---|---|
Promise | 如果pid和uid具有權限,則使用0進行異步回調;否則使用-1回調。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
var Permission = {pid:1};
context.verifyPermission('com.context.permission',Permission).then((data) = > {
console.info("====================== >verifyPermissionCallback==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.requestPermissionsFromUser7+
requestPermissionsFromUser(permissions: Array, requestCode: number, resultCallback: AsyncCallback[[PermissionRequestResult]]): void
從系統請求某些權限(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
permissions | Array | 是 | 指示要請求的權限列表。此參數不能為null。 |
requestCode | number | 是 | 指示要傳遞給PermissionRequestResult的請求代碼。 |
resultCallback | AsyncCallback[[PermissionRequestResult] | 是 | 返回授權結果信息。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.requestPermissionsFromUser(
["com.example.permission1",
"com.example.permission2",
"com.example.permission3",
"com.example.permission4",
"com.example.permission5"],
1,(err, data)= >{
console.info("==== >requestdata==== >" + JSON.stringify(data));
console.info("==== >requesterrcode==== >" + JSON.stringify(err.code));
}
)
Context.getApplicationInfo7+
getApplicationInfo(callback: AsyncCallback): void
獲取有關當前應用程序的信息(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回當前應用程序的信息。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getApplicationInfo()
Context.getApplicationInfo7+
getApplicationInfo(): Promise
獲取有關當前應用程序的信息(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise | 當前應用程序的信息 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getApplicationInfo().then((data) = > {
console.info("===================== >getApplicationInfoCallback=================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getBundleName7+
getBundleName(callback: AsyncCallback): void
獲取當前ability的捆綁包名稱(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回當前ability的捆綁包名稱。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getBundleName()
Context.getBundleName7+
getBundleName(): Promise
獲取當前ability的捆綁包名稱(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise | 當前ability的捆綁包名稱。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getBundleName().then((data) = > {
console.info("======================= >getBundleNameCallback==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getProcessInfo7+
getProcessInfo(callback: AsyncCallback): void
獲取有關當前進程的信息,包括進程ID和名稱(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回當前進程的信息。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessInfo()
Context.getProcessInfo7+
getProcessInfo(): Promise
獲取有關當前進程的信息,包括進程id和名稱(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise | 當前進程的信息 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessInfo().then((data) = > {
console.info("======================= >getProcessInfoCallback==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getElementName7+
getElementName(callback: AsyncCallback): void
獲取當前ability的ohos.bundle.ElementName對象(callback形式)。
此方法僅適用于頁面功能。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回當前ability的ohos.bundle.ElementName對象。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getElementName()
Context.getElementName7+
getElementName(): Promise
獲取當前能力的ohos.bundle.ElementName對象(Promise形式)。
此方法僅適用于頁面功能。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise | 當前ability的ohos.bundle.ElementName對象。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getElementName().then((data) = > {
console.info("======================= >getElementNameCallback==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getProcessName7+
getProcessName(callback: AsyncCallback): void
獲取當前進程的名稱(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回當前進程的名稱。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessName()
Context.getProcessName7+
getProcessName(): Promise
獲取當前進程的名稱(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise | 返回當前進程的名稱。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getProcessName().then((data) = > {
console.info("======================= >getProcessNameCallback==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getCallingBundle7+
getCallingBundle(callback: AsyncCallback): void
獲取調用ability的包名稱(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回調用ability的包名稱。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCallingBundle()
Context.getCallingBundle7+
getCallingBundle(): Promise
獲取調用ability的包名稱(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise | 調用ability的包名稱 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCallingBundle().then((data) = > {
console.info("====================== >getCallingBundleCallback==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getCacheDir
getCacheDir(callback: AsyncCallback): void
獲取該應用程序的內部存儲目錄(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回該應用程序的內部存儲目錄。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCacheDir((err, data) = > {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
Context.getCacheDir
getCacheDir(): Promise
獲取該應用程序的內部存儲目錄(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise | 獲取該應用程序的內部存儲目錄 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getCacheDir().then((data) = > {
console.info("====================== >getCacheDirPromsie==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getFilesDir
getFilesDir(callback: AsyncCallback): void
獲取內部存儲器上此應用程序的文件目錄(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 返回內部存儲器上此應用程序的文件目錄。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getFilesDir((err, data) = > {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
Context.getFilesDir
getFilesDir(): Promise
獲取內部存儲器上此應用程序的文件目錄(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise | 返回內部存儲器上此應用程序的文件目錄。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getFilesDir().then((data) = > {
console.info("====================== >getFilesDirPromsie==================== >");
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getOrCreateDistributedDir7+
getOrCreateDistributedDir(callback: AsyncCallback): void
獲取Ability或應用的分布式文件路徑。
如果分布式文件路徑不存在,系統將創建一個路徑并返回創建的路徑(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 回調函數,可以在回調函數中處理接口返回值,返回Ability或應用的分布式文件路徑。如果分布式文件路徑不存在,系統將創建一個路徑并返回創建的路徑。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateDistributedDir((err, data) = > {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
Context.getOrCreateDistributedDir7+
getOrCreateDistributedDir(): Promise
獲取Ability或應用的分布式文件路徑。
如果分布式文件路徑不存在,系統將創建一個路徑并返回創建的路徑(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise | Ability或應用的分布式文件路徑。如果是第一次調用,則將創建目錄。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getOrCreateDistributedDir().then((data) = > {
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getAppType7+
getAppType(callback: AsyncCallback): void
獲取此應用的類型(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback | 是 | 回調函數,可以在回調函數中處理接口返回值,返回此應用程序的類型。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAppType((err, data) = > {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
Context.getAppType7+
getAppType(): Promise
獲取此應用的類型(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise | Promise形式返回此應用的類型。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAppType().then((data) = > {
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getHapModuleInfo7+
getHapModuleInfo(callback: AsyncCallback): void
獲取應用的ModuleInfo對象(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback[[HapModuleInfo] | 是 | 回調函數,可以在回調函數中處理接口返回值,返回應用的ModuleInfo對象。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getHapModuleInfo((err, data) = > {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
Context.getHapModuleInfo7+
getHapModuleInfo(): Promise
獲取應用的ModuleInfo對象(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise[[HapModuleInfo] | Promise形式返回應用的ModuleInfo對象。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getHapModuleInfo().then((data) = > {
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getAppVersionInfo7+
getAppVersionInfo(callback: AsyncCallback): void
獲取應用的版本信息(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback[[AppVersionInfo] | 是 | 回調函數,可以在回調函數中處理接口返回值,返回應用版本信息。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAppVersionInfo((err, data) = > {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
Context.getAppVersionInfo7+
getAppVersionInfo(): Promise
獲取應用的版本信息(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise[[AppVersionInfo] | 返回應用版本信息。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAppVersionInfo().then((data) = > {
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getAbilityInfo7+
getAbilityInfo(callback: AsyncCallback): void
查詢當前歸屬Ability詳細信息(callback形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
參數:
名稱 | 類型 | 必填 | 描述 |
---|---|---|---|
callback | AsyncCallback[[AbilityInfo] | 是 | 回調函數,可以在回調函數中處理接口返回值,返回當前歸屬Ability詳細信息。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAbilityInfo((err, data) = > {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
});
Context.getAbilityInfo7+
getAbilityInfo(): Promise
查詢當前歸屬Ability詳細信息(Promise形式)。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Promise[[AbilityInfo] | 返回當前歸屬Ability詳細信息。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext();
context.getAbilityInfo().then((data) = > {
console.info("==== >data==== >" + JSON.stringify(data));
});
Context.getApplicationContext7+
getApplicationContext(): Context
獲取應用上下文信息。
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
返回值:
類型 | 說明 |
---|---|
Context | 返回應用上下文信息。 |
示例:
import featureAbility from '@ohos.ability.featureAbility'
var context = featureAbility.getContext().getApplicationContext();
PermissionOptions7+
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
名稱 | 讀寫屬性 | 類型 | 必填 | 描述 |
---|---|---|---|---|
pid | 只讀 | number | 否 | 進程id。 |
uid | 只讀 | number | 否 | 用戶id。 |
PermissionRequestResult7+
系統能力 :SystemCapability.Ability.AbilityRuntime.Core
名稱 | 讀寫屬性 | 類型 | 必填 | 描述 |
---|---|---|---|---|
requestCode | 只讀 | number | 是 | 用戶傳入的請求代碼。 |
permissions | 只讀 | Array | 是 | 用戶傳入的權限。 |
authResults | 只讀 | Array | 是 | 請求權限的結果。 |
HapModuleInfo7+
Hap模塊信息
名稱 | 類型 | 可讀 | 可寫 | 說明 |
---|---|---|---|---|
name | string | 是 | 否 | 模塊名稱 |
description | string | 是 | 否 | 模塊描述信息 |
descriptionId | number | 是 | 否 | 描述信息ID |
icon | string | 是 | 否 | 模塊圖標 |
label | string | 是 | 否 | 模塊標簽 |
labelId | number | 是 | 否 | 模塊標簽ID |
iconId | number | 是 | 否 | 模塊圖標ID |
backgroundImg | string | 是 | 否 | 模塊背景圖片 |
supportedModes | number | 是 | 否 | 模塊支持的模式 |
reqCapabilities | Array | 是 | 否 | 模塊運行需要的能力 |
deviceTypes | Array | 是 | 否 | 支持運行的設備類型 |
abilityInfo | Array | 是 | 否 | Ability信息 |
moduleName | string | 是 | 否 | 模塊名 |
mainAbilityName | string | 是 | 否 | 入口Ability名稱 |
installationFree | boolean | 是 | 否 | 是否支持免安裝 |
mainElementName | string | 是 | 否 | 入口ability信息 |
AppVersionInfo7+
名稱 | 類型 | 可讀 | 可寫 | 說明 |
---|---|---|---|---|
appName | string | 是 | 否 | 模塊名稱 |
versionCode | number | 是 | 否 | 模塊描述信息 |
versionName | string | 是 | 否 | 描述信息ID |
審核編輯 黃宇
-
接口
+關注
關注
33文章
8575瀏覽量
151019 -
框架
+關注
關注
0文章
403瀏覽量
17475 -
鴻蒙
+關注
關注
57文章
2339瀏覽量
42805
發布評論請先 登錄
相關推薦
評論