0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙開發(fā)接口Ability框架:【(AbilityContext)】

jf_46214456 ? 來源:jf_46214456 ? 作者:jf_46214456 ? 2024-05-13 09:26 ? 次閱讀

AbilityContext

AbilityContext是Ability的上下文環(huán)境,繼承自Context。

AbilityContext模塊提供允許訪問特定于ability的資源的能力,包括對Ability的啟動、停止的設(shè)置、獲取caller通信接口、拉起彈窗請求用戶授權(quán)等。

說明:

本模塊首批接口從API version 9開始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨標(biāo)記接口的起始版本。
本模塊接口僅可在Stage模型下使用。

使用說明

在使用AbilityContext的功能前,需要通過Ability子類實例獲取。

import Ability from '@ohos.application.Ability'
class MainAbility extends Ability {
    onWindowStageCreate(windowStage) {
        let context = this.context;
    }
}

開發(fā)前請熟悉鴻蒙開發(fā)指導(dǎo)文檔:[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]點擊或者復(fù)制轉(zhuǎn)到。

屬性

系統(tǒng)能力 :以下各項對應(yīng)的系統(tǒng)能力均為SystemCapability.Ability.AbilityRuntime.Core

名稱參數(shù)類型可讀可寫說明
abilityInfoAbilityInfoAbilityinfo相關(guān)信息
currentHapModuleInfoHapModuleInfo當(dāng)前hap包的信息
config[Configuration]表示配置信息。

AbilityContext.startAbility

startAbility(want: Want, callback: AsyncCallback): void

啟動Ability。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
callbackAsyncCallbackcallback形式返回啟動結(jié)果

示例:

var want = {
	"deviceId": "",
	"bundleName": "com.extreme.test",
	"abilityName": "MainAbility"
};
this.context.startAbility(want, (error) = > {
    console.log("error.code = " + error.code)
})

AbilityContext.startAbility

startAbility(want: Want, options: StartOptions, callback: AsyncCallback): void

啟動Ability。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
optionsStartOptions啟動Ability所攜帶的參數(shù)。
callbackAsyncCallbackcallback形式返回啟動結(jié)果。

示例:

var want = {
	"deviceId": "",
	"bundleName": "com.extreme.test",
	"abilityName": "MainAbility"
};
var options = {
	windowMode: 0,
};
this.context.startAbility(want, options, (error) = > {
    console.log("error.code = " + error.code)
})

AbilityContext.startAbility

startAbility(want: Want, options?: StartOptions): Promise;

啟動Ability。通過Promise返回結(jié)果。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
optionsStartOptions啟動Ability所攜帶的參數(shù)。

返回值:

類型說明
PromisePromise形式返回啟動結(jié)果。

示例:

var want = {
	"deviceId": "",
	"bundleName": "com.extreme.test",
	"abilityName": "MainAbility"
};
var options = {
	windowMode: 0,
};
this.context.startAbility(want, options)
.then((data) = > {
    console.log('Operation successful.')
}).catch((error) = > {
    console.log('Operation failed.');
})

AbilityContext.startAbilityForResult

startAbilityForResult(want: Want, callback: AsyncCallback): void;

啟動Ability并在結(jié)束的時候返回執(zhí)行結(jié)果。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
callbackAsyncCallback[AbilityResult執(zhí)行結(jié)果回調(diào)函數(shù)。

示例:

this.context.startAbilityForResult(
    {bundleName: "com.extreme.myapplication", abilityName: "MainAbilityDemo2"},
    (error, result) = > {
        console.log("startAbilityForResult AsyncCallback is called, error.code = " + error.code)
        console.log("startAbilityForResult AsyncCallback is called, result.resultCode = " + result.resultCode)
     }
);

AbilityContext.startAbilityForResult

startAbilityForResult(want: Want, options: StartOptions, callback: AsyncCallback): void;

啟動Ability并在結(jié)束的時候返回執(zhí)行結(jié)果。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
optionsStartOptions啟動Ability所攜帶的參數(shù)。
callbackAsyncCallback[AbilityResult]執(zhí)行結(jié)果回調(diào)函數(shù)。

示例:

var options = {
  windowMode: 0,
};
this.context.startAbilityForResult(
    {bundleName: "com.extreme.myapplication", abilityName: "MainAbilityDemo2"}, options,
    (error, result) = > {
        console.log("startAbilityForResult AsyncCallback is called, error.code = " + error.code)
        console.log("startAbilityForResult AsyncCallback is called, result.resultCode = " + result.resultCode)
     }
);

AbilityContext.startAbilityForResult

startAbilityForResult(want: Want, options?: StartOptions): Promise;

啟動Ability并在結(jié)束的時候返回執(zhí)行結(jié)果。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
optionsStartOptions啟動Ability所攜帶的參數(shù)。

返回值:

類型說明
Promise[AbilityResult]Promise形式返回執(zhí)行結(jié)果。

示例:

var options = {
  windowMode: 0,
};
this.context.startAbilityForResult({bundleName: "com.extreme.myapplication", abilityName: "MainAbilityDemo2"}, options).then((result) = > {
    console.log("startAbilityForResult Promise.resolve is called, result.resultCode = " + result.resultCode)
}, (error) = > {
    console.log("startAbilityForResult Promise.Reject is called, error.code = " + error.code)
})

AbilityContext.startAbilityForResultWithAccount

startAbilityForResultWithAccount(want: Want, accountId: number, callback: AsyncCallback): void;

啟動一個Ability并在該Ability帳號銷毀時返回執(zhí)行結(jié)果(callback形式)。

需要權(quán)限 : ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

系統(tǒng)API : 此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
accountIdnumber需要啟動的accountId。
callbackAsyncCallback啟動Ability的回調(diào)函數(shù),返回Ability結(jié)果。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
this.context.startAbilityWithAccount(want, accountId, (err, data) = > {
  console.log('---------- startAbilityWithAccount fail, err:  -----------', err);
  console.log('---------- startAbilityWithAccount success, data:  -----------', data);
});

AbilityContext.startAbilityForResultWithAccount

startAbilityForResultWithAccount(want: Want, accountId: number, options: StartOptions, callback: AsyncCallback): void;

啟動一個Ability并在該Ability帳號銷毀時返回執(zhí)行結(jié)果(callback形式)。

需要權(quán)限 : ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

系統(tǒng)API : 此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
accountIdnumber需要啟動的accountId。
options[StartOptions]啟動Ability所攜帶的參數(shù)。
callbackAsyncCallback啟動Ability的回調(diào)函數(shù)。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
var options = {
  windowMode: 0,
};
this.context.startAbilityForResultWithAccount(want, accountId, options, (err) = > {
  console.log('---------- startAbilityForResultWithAccount fail, err:  -----------', err);
});

AbilityContext.startAbilityForResultWithAccount

startAbilityForResultWithAccount(want: Want, accountId: number, options?: StartOptions): Promise;

啟動一個Ability并在該Ability帳號銷毀時返回執(zhí)行結(jié)果(callback形式)。

需要權(quán)限 : ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

系統(tǒng)API : 此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
accountIdnumber需要啟動的accountId。
options[StartOptions]啟動Ability所攜帶的參數(shù)。

返回值:

類型說明
Promise返回一個Promise,包含Ability結(jié)果。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
var options = {
  windowMode: 0,
};
this.context.startAbilityForResultWithAccount(want, accountId, options)
  .then((data) = > {
      console.log('---------- startAbilityForResultWithAccount success, data:  -----------', data);
  })
  .catch((err) = > {
      console.log('---------- startAbilityForResultWithAccount fail, err:  -----------', err);
  })

AbilityContext.terminateSelf

terminateSelf(callback: AsyncCallback): void;

停止Ability自身。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
callbackAsyncCallback回調(diào)函數(shù),返回接口調(diào)用是否成功的結(jié)果。

示例:

this.context.terminateSelf((err) = > {
    console.log('terminateSelf result:' + JSON.stringify(err));
});

AbilityContext.terminateSelf

terminateSelf(): Promise;

停止Ability自身。通過Promise返回結(jié)果。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

返回值:

類型說明
Promise返回一個Promise,包含接口的結(jié)果。

示例:

this.context.terminateSelf().then((data) = > {
    console.log('success:' + JSON.stringify(data));
}).catch((error) = > {
    console.log('failed:' + JSON.stringify(error));
});

AbilityContext.terminateSelfWithResult

terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback): void;

停止Ability,并返回給調(diào)用startAbilityForResult 接口調(diào)用方的相關(guān)信息。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
parameter[AbilityResult]返回給調(diào)用startAbilityForResult 接口調(diào)用方的相關(guān)信息。
callbackAsyncCallbackcallback形式返回停止結(jié)果。

示例:

this.context.terminateSelfWithResult(
   {
        want: {bundleName: "com.extreme.myapplication", abilityName: "MainAbilityDemo"},
        resultCode: 100
    }, (error) = > {
        console.log("terminateSelfWithResult is called = " + error.code)
    }
);

AbilityContext.terminateSelfWithResult

terminateSelfWithResult(parameter: AbilityResult): Promise;

停止Ability,并返回給調(diào)用startAbilityForResult 接口相關(guān)信息。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
parameter[AbilityResult]返回給startAbilityForResult 調(diào)用方的信息。

返回值:

類型說明
Promisepromise形式返回停止結(jié)果。

示例:

this.context.terminateSelfWithResult(
{
    want: {bundleName: "com.extreme.myapplication", abilityName: "MainAbilityDemo"},
    resultCode: 100
}).then((result) = > {
    console.log("terminateSelfWithResult")
}
)

AbilityContext.connectAbility

connectAbility(want: Want, options: ConnectOptions): number;

使用AbilityInfo.AbilityType.SERVICE模板將當(dāng)前能力連接到一個能力。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

系統(tǒng)API : 此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
options[ConnectOptions]遠(yuǎn)端對象實例。

返回值:

類型說明
number返回Ability連接的結(jié)果code。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var options = {
  onConnect(elementName, remote) { console.log('----------- onConnect -----------') },
  onDisconnect(elementName) { console.log('----------- onDisconnect -----------') },
  onFailed(code) { console.log('----------- onFailed -----------') }
}
const result = this.context.connectAbility(want, options);
console.log('----------- connectAbilityResult: ------------', result);

AbilityContext.connectAbilityWithAccount

connectAbilityWithAccount(want: Want, accountId: number, options: ConnectOptions): number;

使用AbilityInfo.AbilityType.SERVICE模板和account將當(dāng)前能力連接到一個能力。

需要權(quán)限: ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

系統(tǒng)API : 此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
accountIdnumber需要啟動的accountId。
options[ConnectOptions]遠(yuǎn)端對象實例。

返回值:

類型說明
number返回Ability連接的結(jié)果code。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
var options = {
  onConnect(elementName, remote) { console.log('----------- onConnect -----------') },
  onDisconnect(elementName) { console.log('----------- onDisconnect -----------') },
  onFailed(code) { console.log('----------- onFailed -----------') }
}
const result = this.context.connectAbilityWithAccount(want, accountId, options);
console.log('----------- connectAbilityResult: ------------', result);

AbilityContext.disconnectAbility

disconnectAbility(connection: number): Promise;

已成功連接接口。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

系統(tǒng)API : 此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

參數(shù):

參數(shù)名類型必填說明
connectionnumber連接的能力的數(shù)字代碼。

返回值:

類型說明
Promise返回執(zhí)行結(jié)果。

示例:

var connectionNumber = 0;
this.context.disconnectAbility(connectionNumber).then((data) = > {
     console.log('disconnectAbility success, data: ', data);
}).catch((err) = > {
     console.log('disconnectAbility fail, err: ', err);
});

AbilityContext.disconnectAbility

disconnectAbility(connection: number, callback:AsyncCallback): void;

已成功連接接口。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

系統(tǒng)API : 此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

參數(shù):

參數(shù)名類型必填說明
connectionnumber連接的能力的數(shù)字代碼。
callbackAsyncCallback表示指定的回調(diào)方法。

示例:

var connectionNumber = 0;
  this.context.disconnectAbility(connectionNumber, (err) = > {
     console.log('---------- disconnectAbility fail, err: -----------', err);
  });

AbilityContext.startAbilityByCall

startAbilityByCall(want: Want): Promise;

獲取指定通用組件服務(wù)端的caller通信接口, 并且將指定通用組件服務(wù)端拉起并切換到后臺。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
want[Want]傳入需要啟動的ability的信息,包含ability名稱、包名、設(shè)備ID,設(shè)備ID缺省或為空表示啟動本地ability。

返回值:

類型說明
Promise獲取要通訊的caller對象。

示例:

import Ability from '@ohos.application.Ability';
var caller;
export default class MainAbility extends Ability {
    onWindowStageCreate(windowStage) {
        this.context.startAbilityByCall({
            bundleName: "com.example.myservice",
            abilityName: "MainAbility",
            deviceId: ""
        }).then((obj) = > {
            caller = obj;
            console.log('Caller GetCaller Get ' + caller);
        }).catch((e) = > {
            console.log('Caller GetCaller error ' + e);
        });
    }
}

AbilityContext.startAbilityWithAccount

startAbilityWithAccount(want: Want, accountId: number, callback: AsyncCallback): void;

根據(jù)account啟動Ability(callback形式)。

需要權(quán)限 : ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

系統(tǒng)API : 此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
accountIdnumber需要啟動的accountId。
callbackAsyncCallback啟動Ability的回調(diào)函數(shù)。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
this.context.startAbilityWithAccount(want, accountId, (err) = > {
  console.log('---------- startAbilityWithAccount fail, err:  -----------', err);
});

AbilityContext.startAbilityWithAccount

startAbilityWithAccount(want: Want, accountId: number, options: StartOptions, callback: AsyncCallback): void;

根據(jù)account啟動Ability(callback形式)。

需要權(quán)限 : ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

系統(tǒng)API : 此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
accountIdnumber需要啟動的accountId。
options[StartOptions]啟動Ability所攜帶的參數(shù)。
callbackAsyncCallback啟動Ability的回調(diào)函數(shù)。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
var options = {
  windowMode: 0,
};
this.context.startAbilityWithAccount(want, accountId, options, (err) = > {
  console.log('---------- startAbilityWithAccount fail, err:  -----------', err);
});

AbilityContext.startAbilityWithAccount

startAbilityWithAccount(want: Want, accountId: number, options?: StartOptions): Promise;

根據(jù)account啟動Ability(Promise形式)。

需要權(quán)限 : ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

系統(tǒng)API : 此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

參數(shù):

參數(shù)名類型必填說明
want[Want]啟動Ability的want信息。
accountIdnumber需要啟動的accountId。
options[StartOptions]啟動Ability所攜帶的參數(shù)。

示例:

var want = {
  "deviceId": "",
  "bundleName": "com.extreme.test",
  "abilityName": "MainAbility"
};
var accountId = 100;
var options = {
  windowMode: 0,
};
this.context.startAbilityWithAccount(want, accountId, options)
  .then((data) = > {
      console.log('---------- startAbilityWithAccount success, data:  -----------', data);
  })
  .catch((err) = > {
      console.log('---------- startAbilityWithAccount fail, err:  -----------', err);
  })

AbilityContext.requestPermissionsFromUser

requestPermissionsFromUser(permissions: Array, requestCallback: AsyncCallback) : void;

拉起彈窗請求用戶授權(quán)。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
permissionsArray權(quán)限列表。
callbackAsyncCallback[PermissionRequestResult]回調(diào)函數(shù),返回接口調(diào)用是否成功的結(jié)果。

示例:

var permissions=['com.example.permission']
     this.context.requestPermissionsFromUser(permissions,(result) = > {
     console.log('requestPermissionsFromUserresult:' + JSON.stringify(result));
});

AbilityContext.requestPermissionsFromUser

requestPermissionsFromUser(permissions: Array) : Promise;

拉起彈窗請求用戶授權(quán)。通過Promise返回結(jié)果。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
permissionsArray權(quán)限列表。

返回值:

類型說明
Promise[PermissionRequestResult]返回一個Promise,包含接口的結(jié)果。

示例:

var permissions=['com.example.permission']
     this.context.requestPermissionsFromUser(permissions).then((data) = > {
    console.log('success:' + JSON.stringify(data));
}).catch((error) = > {
    console.log('failed:' + JSON.stringify(error));
});

AbilityContext.setMissionLabel

setMissionLabel(label: string, callback:AsyncCallback): void;

設(shè)置ability在任務(wù)中顯示的名稱。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
labelstring顯示名稱。
callbackAsyncCallback回調(diào)函數(shù),返回接口調(diào)用是否成功的結(jié)果。

示例:

this.context.setMissionLabel("test",(result) = > {
    console.log('requestPermissionsFromUserresult:' + JSON.stringify(result));
});

AbilityContext.setMissionLabel

setMissionLabel(label: string): Promise

設(shè)置ability在任務(wù)中顯示的名稱。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
labelstring顯示名稱。

返回值:

類型說明
Promise返回一個Promise,包含接口的結(jié)果。

示例:

this.context.setMissionLabel("test").then((data) = > {
    console.log('success:' + JSON.stringify(data));
}).catch((error) = > {
    console.log('failed:' + JSON.stringify(error));
});

AbilityContext.setMissionIcon

setMissionIcon(icon: image.PixelMap, callback:AsyncCallback): void;

設(shè)置當(dāng)前ability的任務(wù)標(biāo)簽

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

系統(tǒng)API : 此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

參數(shù):

參數(shù)名類型必填說明
iconimage.PixelMap在最近的任務(wù)中顯示的能力圖標(biāo)。
callbackAsyncCallback指定的回調(diào)函數(shù)的結(jié)果。

示例:

import image from '@ohos.multimedia.image'
  var imagePixelMap;
  var color = new ArrayBuffer(0);
  var initializationOptions = {
     size: {
         height: 100,
         width: 100
     }
  };
  image.createPixelMap(color, initializationOptions)
     .then((data) = > {
         imagePixelMap = data;
     })
     .catch((err) = > {
         console.log('--------- createPixelMap fail, err: ---------', err)
     });
  this.context.setMissionIcon(imagePixelMap, (err) = > {
     console.log('---------- setMissionIcon fail, err: -----------', err);
  })

AbilityContext.setMissionIcon

setMissionIcon(icon: image.PixelMap): Promise;

設(shè)置當(dāng)前ability的任務(wù)標(biāo)簽。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

系統(tǒng)API : 此接口為系統(tǒng)接口,三方應(yīng)用不支持調(diào)用。

參數(shù):

參數(shù)名類型必填說明
iconimage.PixelMap在最近的任務(wù)中顯示的能力圖標(biāo)。

返回值:

類型說明
Promise返回一個Promise,包含接口的結(jié)果。

示例:

import image from '@ohos.multimedia.image'
  var imagePixelMap;
  var color = new ArrayBuffer(0);
  var initializationOptions = {
    size: {
        height: 100,
        width: 100
    }
  };
  image.createPixelMap(color, initializationOptions)
    .then((data) = > {
        imagePixelMap = data;
    })
    .catch((err) = > {
        console.log('--------- createPixelMap fail, err: ---------', err)
    });
  this.context.setMissionIcon(imagePixelMap)
    .then((data) = > {
        console.log('-------------- setMissionIcon success, data: -------------', data);
    })
    .catch((err) = > {
        console.log('-------------- setMissionIcon fail, err: -------------', err);
    });

AbilityContext.restoreWindowStage

restoreWindowStage(localStorage: LocalStorage) : void;

恢復(fù)ability中的window stage數(shù)據(jù)。

系統(tǒng)能力 :SystemCapability.Ability.AbilityRuntime.Core

參數(shù):

參數(shù)名類型必填說明
localStorageimage.LocalStorage用于恢復(fù)window stage的存儲數(shù)據(jù)。

搜狗高速瀏覽器截圖20240326151450.png

示例:

var storage = new LocalStorage();
  this.context.restoreWindowStage(storage);

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8596

    瀏覽量

    151145
  • API
    API
    +關(guān)注

    關(guān)注

    2

    文章

    1500

    瀏覽量

    62011
  • 框架
    +關(guān)注

    關(guān)注

    0

    文章

    403

    瀏覽量

    17483
  • 鴻蒙
    +關(guān)注

    關(guān)注

    57

    文章

    2351

    瀏覽量

    42849
收藏 人收藏

    評論

    相關(guān)推薦

    鴻蒙開發(fā)接口Ability框架:【@ohos.application.Ability (Ability)】

    Ability模塊提供對Ability生命周期、上下文環(huán)境等調(diào)用管理的能力,包括Ability創(chuàng)建、銷毀、轉(zhuǎn)儲客戶端信息等。
    的頭像 發(fā)表于 04-30 17:42 ?2267次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【@ohos.application.<b class='flag-5'>Ability</b> (<b class='flag-5'>Ability</b>)】

    鴻蒙開發(fā)接口Ability框架:【@ohos.ability.featureAbility (FeatureAbility模塊)】

    FeatureAbility模塊提供帶有UI設(shè)計與用戶交互的能力,包括啟動新的ability、獲取dataAbilityHelper、設(shè)置此Page Ability、獲取當(dāng)前Ability對應(yīng)的窗口,連接服務(wù)等。
    的頭像 發(fā)表于 05-06 16:31 ?1002次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【@ohos.<b class='flag-5'>ability</b>.featureAbility (FeatureAbility模塊)】

    鴻蒙開發(fā)接口Ability框架:【@ohos.application.missionManager (missionManager)】

    表示Ability對應(yīng)任務(wù)信息的枚舉。
    的頭像 發(fā)表于 05-08 09:19 ?900次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【@ohos.application.missionManager (missionManager)】

    鴻蒙開發(fā)接口Ability框架:【@ohos.ability.particleAbility (particleAbility模塊)】

    particleAbility模塊提供了Service類型Ability的能力,包括啟動、停止指定的particleAbility,獲取dataAbilityHelper,連接、斷開當(dāng)前Ability與指定ServiceAbility等。
    的頭像 發(fā)表于 05-09 10:21 ?718次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【@ohos.<b class='flag-5'>ability</b>.particleAbility (particleAbility模塊)】

    鴻蒙開發(fā)接口Ability框架:【 (ServiceExtensionAbility)】

    ServiceExtensionAbility模塊提供ServiceExtension服務(wù)擴(kuò)展相關(guān)接口的能力。
    的頭像 發(fā)表于 05-09 09:59 ?815次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【 (ServiceExtensionAbility)】

    鴻蒙開發(fā)接口Ability框架:【(uriPermissionManager)】

    本模塊首批接口從API version 9 開始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨標(biāo)記接口的起始版本。
    的頭像 發(fā)表于 05-10 17:46 ?774次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【(uriPermissionManager)】

    鴻蒙開發(fā)接口Ability框架:【 (Context模塊)】

    Context模塊提供了ability或application的上下文的能力,包括允許訪問特定于應(yīng)用程序的資源、請求和驗證權(quán)限等。
    的頭像 發(fā)表于 05-13 16:04 ?718次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【 (Context模塊)】

    鴻蒙開發(fā)接口Ability框架:【(AbilityDelegator)】

    AbilityDelegator提供添加用于監(jiān)視指定能力的生命周期狀態(tài)更改的AbilityMonitor對象的能力,包括對AbilityMonitor實例的添加、刪除、等待ability到達(dá)
    的頭像 發(fā)表于 05-13 17:58 ?961次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【(AbilityDelegator)】

    鴻蒙開發(fā)接口Ability框架:【AbilityRunningInfo】

    AbilityRunningInfo模塊提供對Ability運行的相關(guān)信息和狀態(tài)進(jìn)行設(shè)置和查詢的能力。
    的頭像 發(fā)表于 05-14 16:02 ?790次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【AbilityRunningInfo】

    鴻蒙開發(fā)接口Ability框架:【AbilityDelegator】

    AbilityDelegator提供添加用于監(jiān)視指定能力的生命周期狀態(tài)更改的AbilityMonitor對象的能力,包括對AbilityMonitor實例的添加、刪除、等待ability到達(dá)
    的頭像 發(fā)表于 05-16 16:48 ?935次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【AbilityDelegator】

    鴻蒙Ability開發(fā)-Stage模型下Ability的創(chuàng)建和使用

    ); hilog.info(ENTRY_ABILITY_DOMAIN, TAG, \'%{public}s\', \'Ability onBackground\'); } } 本文內(nèi)容是鴻蒙
    發(fā)表于 01-08 15:34

    鴻蒙開發(fā)接口Ability框架:【ApplicationContext】

    ApplicationContext模塊提供開發(fā)者應(yīng)用級別的的上下文的能力,包括提供注冊及取消注冊應(yīng)用內(nèi)組件生命周期的監(jiān)聽接口。
    的頭像 發(fā)表于 05-16 11:51 ?627次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【ApplicationContext】

    鴻蒙開發(fā)接口Ability框架:【AbilityRunningInfo】

    AbilityRunningInfo模塊提供對Ability運行的相關(guān)信息和狀態(tài)進(jìn)行設(shè)置和查詢的能力。
    的頭像 發(fā)表于 05-17 17:12 ?327次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>接口</b><b class='flag-5'>Ability</b><b class='flag-5'>框架</b>:【AbilityRunningInfo】

    鴻蒙Ability Kit(程序框架服務(wù))【Ability內(nèi)頁面間的跳轉(zhuǎn)】

    基于Stage模型下的Ability開發(fā),實現(xiàn)Ability內(nèi)頁面間的跳轉(zhuǎn)和數(shù)據(jù)傳遞。
    的頭像 發(fā)表于 06-03 20:43 ?302次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> Kit(程序<b class='flag-5'>框架</b>服務(wù))【<b class='flag-5'>Ability</b>內(nèi)頁面間的跳轉(zhuǎn)】

    鴻蒙Ability Kit(程序框架服務(wù))【Ability與ServiceExtensionAbility通信】

    本示例展示通過[IDL的方式]和?[@ohos.rpc]?等接口實現(xiàn)了Ability與ServiceExtensionAbility之間的通信。
    的頭像 發(fā)表于 06-05 09:28 ?492次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>Ability</b> Kit(程序<b class='flag-5'>框架</b>服務(wù))【<b class='flag-5'>Ability</b>與ServiceExtensionAbility通信】