HarmonyOS API:@ohos.account.appAccount (应用帐号管理)
版本:v3.1 Beta
@ohos.account.appAccount (应用帐号管理)
setAssociatedData(deprecated)
setAssociatedData(name: string, key: string, value: string): Promise<void>
设置指定应用帐号的关联数据。使用Promise异步回调。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用setCustomData替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
key  | string  | 是  | 关联数据的键名。  | 
value  | string  | 是  | 关联数据的取值。  | 
返回值:
类型  | 说明  | 
Promise<void>  | 无返回结果的Promise对象。  | 
示例:
appAccountManager.setAssociatedData("ZhangSan", "k001", "v001").then(() => { 
    console.log('setAssociatedData Success');
}).catch((err) => {
    console.log("setAssociatedData err: "  + JSON.stringify(err));
});
getAllAccessibleAccounts(deprecated)
getAllAccessibleAccounts(callback: AsyncCallback<Array<AppAccountInfo>>): void
获取所有可访问的应用帐号信息。使用callback异步回调。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用getAllAccounts替代。
需要权限: ohos.permission.GET_ALL_APP_ACCOUNTS。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
callback  | AsyncCallback<Array<AppAccountInfo>>  | 是  | 回调函数。当查询成功时,err为null,data为获取到的应用帐号信息列表;否则为错误对象。  | 
示例:
appAccountManager.getAllAccessibleAccounts((err, data)=>{
    console.debug("getAllAccessibleAccounts err:" + JSON.stringify(err));
    console.debug("getAllAccessibleAccounts data:" + JSON.stringify(data));
});
getAllAccessibleAccounts(deprecated)
getAllAccessibleAccounts(): Promise<Array<AppAccountInfo>>
获取所有可访问的应用帐号信息。使用Promise异步回调。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用getAllAccounts替代。
需要权限: ohos.permission.GET_ALL_APP_ACCOUNTS。
系统能力: SystemCapability.Account.AppAccount
返回值:
类型  | 说明  | 
Promise<Array<AppAccountInfo>>  | Promise对象,返回全部应用已授权帐号信息对象。  | 
示例:
appAccountManager.getAllAccessibleAccounts().then((data) => { 
     console.log('getAllAccessibleAccounts: ' + data);
}).catch((err) => {
    console.log("getAllAccessibleAccounts err: "  + JSON.stringify(err));
});
getAllAccounts(deprecated)
getAllAccounts(owner: string, callback: AsyncCallback<Array<AppAccountInfo>>): void
根据应用帐号所有者获取调用方可访问的应用帐号列表。使用callback异步回调。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用getAccountsByOwner替代。
需要权限: ohos.permission.GET_ALL_APP_ACCOUNTS。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
owner  | string  | 是  | 应用帐号所有者的包名。  | 
callback  | AsyncCallback<Array<AppAccountInfo>>  | 是  | 应用帐号信息列表。  | 
示例:
const selfBundle = "com.example.actsgetallaaccounts";
appAccountManager.getAllAccounts(selfBundle, (err, data)=>{
    console.debug("getAllAccounts err:" + JSON.stringify(err));
    console.debug("getAllAccounts data:" + JSON.stringify(data));
});
getAllAccounts(deprecated)
getAllAccounts(owner: string): Promise<Array<AppAccountInfo>>
根据应用帐号所有者获取调用方可访问的应用帐号列表。使用Promise异步回调。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用getAccountsByOwner替代。
需要权限: ohos.permission.GET_ALL_APP_ACCOUNTS,仅系统应用可用。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
owner  | string  | 是  | 应用包名称。  | 
返回值:
类型  | 说明  | 
Promise<Array<AppAccountInfo>>  | Promise对象,返回指定应用全部帐号信息对象。  | 
示例:
const selfBundle = "com.example.actsgetallaaccounts";
appAccountManager.getAllAccounts(selfBundle).then((data) => { 
     console.log('getAllAccounts: ' + data);
}).catch((err) => {
    console.log("getAllAccounts err: "  + JSON.stringify(err));
});
getAccountCredential(deprecated)
getAccountCredential(name: string, credentialType: string, callback: AsyncCallback<string>): void
获取指定应用帐号的凭据。使用callback异步回调。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用getCredential替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
credentialType  | string  | 是  | 凭据类型。  | 
callback  | AsyncCallback<string>  | 是  | 回调函数。当获取凭据成功时,err为null,data为指定应用帐号的凭据;否则为错误对象。  | 
示例:
appAccountManager.getAccountCredential("ZhangSan", "credentialType001", (err, result) => { 
    console.log("getAccountCredential err: " + JSON.stringify(err));
    console.log('getAccountCredential result: ' + result);
});
getAccountCredential(deprecated)
getAccountCredential(name: string, credentialType: string): Promise<string>
获取指定应用帐号的凭据。使用Promise异步回调。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用getCredential替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
credentialType  | string  | 是  | 凭据类型。  | 
返回值:
类型  | 说明  | 
Promise<string>  | Promise对象,返回指定应用帐号的凭据。  | 
示例:
appAccountManager.getAccountCredential("ZhangSan", "credentialType001").then((data) => { 
    console.log('getAccountCredential, result: ' + data);
}).catch((err) => {
    console.log("getAccountCredential err: "  + JSON.stringify(err));
});
getAccountExtraInfo(deprecated)
getAccountExtraInfo(name: string, callback: AsyncCallback<string>): void
获取指定应用帐号的额外信息(能转换成string类型的其它信息)。使用callback异步回调。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用getCustomData替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
callback  | AsyncCallback<string>  | 是  | 回调函数。当获取此应用帐号的额外信息成功时,err为null,data返回此应用帐号的额外信息对象;否则为错误对象。  | 
示例:
appAccountManager.getAccountExtraInfo("ZhangSan", (err, result) => { 
    console.log("getAccountExtraInfo err: " + JSON.stringify(err));
    console.log('getAccountExtraInfo result: ' + result);
});
getAccountExtraInfo(deprecated)
getAccountExtraInfo(name: string): Promise<string>
获取指定应用帐号的额外信息(能转换成string类型的其它信息)。使用Promise异步回调。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用getCustomData替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
返回值:
类型  | 说明  | 
Promise<string>  | Promise对象,返回此应用程序帐号的额外信息对象。  | 
示例:
appAccountManager.getAccountExtraInfo("ZhangSan").then((data) => { 
    console.log('getAccountExtraInfo, result: ' + data);
}).catch((err) => {
    console.log("getAccountExtraInfo err: "  + JSON.stringify(err));
});
getAssociatedData(deprecated)
getAssociatedData(name: string, key: string, callback: AsyncCallback<string>): void
根据指定键名获取特定应用帐号的关联数据。使用callback异步回调。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用getCustomData替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
key  | string  | 是  | 关联数据的键名。  | 
callback  | AsyncCallback<string>  | 是  | 回调函数。当获取成功时,err为null,data为关联数据的取值;否则为错误对象。  | 
示例:
appAccountManager.getAssociatedData("ZhangSan", "k001", (err, result) => { 
    console.log("getAssociatedData err: " + JSON.stringify(err));
    console.log('getAssociatedData result: ' + result);
});
getAssociatedData(deprecated)
getAssociatedData(name: string, key: string): Promise<string>
获取与此应用程序帐号关联的数据。使用Promise异步回调。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用getCustomData替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
key  | string  | 是  | 关联数据的键名。  | 
返回值:
类型  | 说明  | 
Promise<string>  | Promise对象,返回关联数据的取值。  | 
示例:
appAccountManager.getAssociatedData("ZhangSan", "k001").then((data) => { 
     console.log('getAssociatedData: ' + data);
}).catch((err) => {
    console.log("getAssociatedData err: "  + JSON.stringify(err));
});
on('change')(deprecated)
on(type: 'change', owners: Array<string>, callback: Callback<Array<AppAccountInfo>>): void
订阅指定应用的帐号信息变更事件。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用on('accountChange')替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
type  | 'change'  | 是  | 事件回调类型,支持的事件为'change',当帐号所有者更新帐号信息时,触发该事件。  | 
owners  | Array<string>  | 是  | 应用帐号所有者的包名列表。  | 
callback  | Callback<Array<AppAccountInfo>>  | 是  | 回调函数,返回信息发生变更的应用帐号列表。  | 
示例:
function changeOnCallback(data){
    console.debug("receive change data:" + JSON.stringify(data));
}
try{
    appAccountManager.on('change', ["com.example.actsaccounttest"], changeOnCallback);
}
catch(err){
    console.error("on accountOnOffDemo err:" + JSON.stringify(err));
}
off('change')(deprecated)
off(type: 'change', callback?: Callback<Array<AppAccountInfo>>): void
取消订阅帐号信息变更事件。
说明
从 API version 7开始支持,从API version 9开始废弃。建议使用off('accountChange')替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
type  | 'change'  | 是  | 事件回调类型,支持的事件为'change',当帐号所有者更新帐号信息时,触发该事件。  | 
callback  | Callback<Array<AppAccountInfo>>  | 否  | 回调函数,返回信息发生变更的应用帐号列表。  | 
示例:
function changeOnCallback(data){
    console.debug("receive change data:" + JSON.stringify(data));
    appAccountManager.off('change', function(){
        console.debug("off finish");
    })
}
try{
    appAccountManager.on('change', ["com.example.actsaccounttest"], changeOnCallback);
}
catch(err){
    console.error("on accountOnOffDemo err:" + JSON.stringify(err));
}
authenticate(deprecated)
authenticate(name: string, owner: string, authType: string, options: {[key: string]: any}, callback: AuthenticatorCallback): void
对应用帐号进行鉴权以获取授权令牌。使用callback异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用auth替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
owner  | string  | 是  | 应用帐号所有者的包名。  | 
authType  | string  | 是  | 鉴权类型。  | 
options  | {[key: string]: any}  | 是  | 鉴权所需的可选项。  | 
callback  | 是  | 回调对象,返回鉴权结果。  | 
示例:
function onResultCallback(code, result) {
    console.log("resultCode: "  + code);
    console.log("result: "  + JSON.stringify(result));
}
function onRequestRedirectedCallback(request) {
  let wantInfo = {
    deviceId: '',
    bundleName: 'com.example.accountjsdemo',
    action: 'ohos.want.action.viewData',
    entities: ['entity.system.default'],
  }
  this.context.startAbility(wantInfo).then(() => {
    console.log("startAbility successfully");
  }).catch((err) => {
    console.log("startAbility err: " + JSON.stringify(err));
  })
}
appAccountManager.authenticate("LiSi", "com.example.accountjsdemo", "getSocialData", {}, {
  onResult: onResultCallback,
  onRequestRedirected: onRequestRedirectedCallback
});
getOAuthToken(deprecated)
getOAuthToken(name: string, owner: string, authType: string, callback: AsyncCallback<string>): void
获取指定应用帐号的特定鉴权类型的授权令牌。使用callback异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用getAuthToken替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
owner  | string  | 是  | 应用帐号所有者的包名。  | 
authType  | string  | 是  | 鉴权类型。  | 
callback  | AsyncCallback<string>  | 是  | 回调函数。当获取成功时,err为null,data为授权令牌值;否则为错误对象。  | 
示例:
appAccountManager.getOAuthToken("LiSi", "com.example.accountjsdemo", "getSocialData", (err, data) => {
     console.log('getOAuthToken err: ' + JSON.stringify(err));
     console.log('getOAuthToken token: ' + data);
});
getOAuthToken(deprecated)
getOAuthToken(name: string, owner: string, authType: string): Promise<string>
获取指定应用帐号的特定鉴权类型的授权令牌。使用Promise异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用getAuthToken替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
owner  | string  | 是  | 应用帐号所有者的包名。  | 
authType  | string  | 是  | 鉴权类型。  | 
返回值:
类型  | 说明  | 
Promise<string>  | Promise对象,返回授权令牌。  | 
示例:
appAccountManager.getOAuthToken("LiSi", "com.example.accountjsdemo", "getSocialData").then((data) => {
     console.log('getOAuthToken token: ' + data);
}).catch((err) => {
    console.log("getOAuthToken err: "  + JSON.stringify(err));
});
setOAuthToken(deprecated)
setOAuthToken(name: string, authType: string, token: string, callback: AsyncCallback<void>): void
为指定应用帐号设置特定鉴权类型的授权令牌。使用callback异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用setAuthToken替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
authType  | string  | 是  | 鉴权类型。  | 
token  | string  | 是  | 授权令牌。  | 
callback  | AsyncCallback<void>  | 是  | 回调函数。当设置成功时,err为null;否则为错误对象。  | 
示例:
appAccountManager.setOAuthToken("LiSi", "getSocialData", "xxxx", (err) => {
    console.log('setOAuthToken err: ' + JSON.stringify(err));
});
setOAuthToken(deprecated)
setOAuthToken(name: string, authType: string, token: string): Promise<void>
为指定应用帐号设置特定鉴权类型的授权令牌。使用Promise异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用setAuthToken替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
authType  | string  | 是  | 鉴权类型。  | 
token  | string  | 是  | 授权令牌。  | 
返回值:
类型  | 说明  | 
Promise<void>  | 无返回结果的Promise对象。  | 
示例:
appAccountManager.setOAuthToken("LiSi", "getSocialData", "xxxx").then(() => {
    console.log('setOAuthToken successfully');
}).catch((err) => {
    console.log('setOAuthToken err: ' + JSON.stringify(err));
});
deleteOAuthToken(deprecated)
deleteOAuthToken(name: string, owner: string, authType: string, token: string, callback: AsyncCallback<void>): void
删除指定应用帐号的特定鉴权类型的授权令牌。使用callback异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用deleteAuthToken替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
owner  | string  | 是  | 应用帐号所有者的包名。  | 
authType  | string  | 是  | 鉴权类型。  | 
token  | string  | 是  | 授权令牌。  | 
callback  | AsyncCallback<void>  | 是  | 回调函数。当删除成功时,err为null;否则为错误对象。  | 
示例:
appAccountManager.deleteOAuthToken("LiSi", "com.example.accountjsdemo", "getSocialData", "xxxxx", (err) => {
     console.log('deleteOAuthToken err: ' + JSON.stringify(err));
});
deleteOAuthToken(deprecated)
deleteOAuthToken(name: string, owner: string, authType: string, token: string): Promise<void>
删除指定应用帐号的特定鉴权类型的授权令牌。使用Promise异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用deleteAuthToken替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
owner  | string  | 是  | 应用帐号所有者的包名。  | 
authType  | string  | 是  | 鉴权类型。  | 
token  | string  | 是  | 授权令牌。  | 
返回值:
类型  | 说明  | 
Promise<void>  | 无返回结果的Promise对象。  | 
示例:
appAccountManager.deleteOAuthToken("LiSi", "com.example.accountjsdemo", "getSocialData", "xxxxx").then(() => {
     console.log('deleteOAuthToken successfully');
}).catch((err) => {
    console.log("deleteOAuthToken err: "  + JSON.stringify(err));
});
setOAuthTokenVisibility(deprecated)
setOAuthTokenVisibility(name: string, authType: string, bundleName: string, isVisible: boolean, callback: AsyncCallback<void>): void
设置指定帐号的特定鉴权类型的授权令牌对指定应用的可见性。使用callback异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用setAuthTokenVisibility替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
authType  | string  | 是  | 鉴权类型。  | 
bundleName  | string  | 是  | 被设置可见性的应用包名。  | 
isVisible  | boolean  | 是  | 是否可见。true表示可见,false表示不可见。  | 
callback  | AsyncCallback<void>  | 是  | 回调函数。当设置成功时,err为null;否则为错误对象。  | 
示例:
appAccountManager.setOAuthTokenVisibility("LiSi", "getSocialData", "com.example.accountjsdemo", true, (err) => {
     console.log('setOAuthTokenVisibility err: ' + JSON.stringify(err));
});
setOAuthTokenVisibility(deprecated)
setOAuthTokenVisibility(name: string, authType: string, bundleName: string, isVisible: boolean): Promise<void>
设置指定帐号的特定鉴权类型的授权令牌对指定应用的可见性。使用Promise异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用setAuthTokenVisibility替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
authType  | string  | 是  | 鉴权类型。  | 
bundleName  | string  | 是  | 被设置可见性的应用包名。  | 
isVisible  | boolean  | 是  | 是否可见。true表示可见,false表示不可见。  | 
返回值:
类型  | 说明  | 
Promise<void>  | 无返回结果的Promise对象。  | 
示例:
appAccountManager.setOAuthTokenVisibility("LiSi", "getSocialData", "com.example.accountjsdemo", true).then(() => {
    console.log('setOAuthTokenVisibility successfully');
}).catch((err) => {
    console.log('setOAuthTokenVisibility err: ' + JSON.stringify(err));
});
checkOAuthTokenVisibility(deprecated)
checkOAuthTokenVisibility(name: string, authType: string, bundleName: string, callback: AsyncCallback<boolean>): void
检查指定应用帐号的特定鉴权类型的授权令牌对指定应用的可见性。使用callback异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用checkAuthTokenVisibility替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
authType  | string  | 是  | 鉴权类型。  | 
bundleName  | string  | 是  | 检查可见性的应用包名。  | 
callback  | AsyncCallback<boolean>  | 是  | 回调函数。当检查成功时,err为null,data为true表示可见,data为false表示不可见;否则为错误对象。  | 
示例:
appAccountManager.checkOAuthTokenVisibility("LiSi", "getSocialData", "com.example.accountjsdemo", (err, data) => {
    console.log('checkOAuthTokenVisibility err: ' + JSON.stringify(err));
    console.log('checkOAuthTokenVisibility isVisible: ' + data);
});
checkOAuthTokenVisibility(deprecated)
checkOAuthTokenVisibility(name: string, authType: string, bundleName: string): Promise<boolean>
检查指定应用帐号的特定鉴权类型的授权令牌对指定应用的可见性。使用Promise异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用checkAuthTokenVisibility替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
authType  | string  | 是  | 鉴权类型。  | 
bundleName  | string  | 是  | 用于检查可见性的应用包名。  | 
返回值:
类型  | 说明  | 
Promise<boolean>  | Promise对象。返回true表示指定鉴权类型的OAuth令牌对特定应用的可见,返回false表示不可见。  | 
示例:
appAccountManager.checkOAuthTokenVisibility("LiSi", "getSocialData", "com.example.accountjsdemo").then((data) => {
    console.log('checkOAuthTokenVisibility isVisible: ' + data);
}).catch((err) => {
    console.log('checkOAuthTokenVisibility err: ' + JSON.stringify(err));
});
getAllOAuthTokens(deprecated)
getAllOAuthTokens(name: string, owner: string, callback: AsyncCallback<Array<OAuthTokenInfo>>): void
获取指定帐号对调用方可见的所有授权令牌。使用callback异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用getAllAuthTokens替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
owner  | string  | 是  | 应用帐号所有者的包名。  | 
callback  | AsyncCallback<Array<OAuthTokenInfo>>  | 是  | 回调函数。当获取成功时,err为null,data为授权令牌数组;否则为错误对象。  | 
示例:
appAccountManager.getAllOAuthTokens("LiSi", "com.example.accountjsdemo", (err, data) => {
    console.log("getAllOAuthTokens err: "  + JSON.stringify(err));
    console.log('getAllOAuthTokens data: ' + JSON.stringify(data));
});
getAllOAuthTokens(deprecated)
getAllOAuthTokens(name: string, owner: string): Promise<Array<OAuthTokenInfo>>
获取指定帐号对调用方可见的所有授权令牌。使用Promise异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用getAllAuthTokens替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
owner  | string  | 是  | 应用帐号所有者的包名。  | 
返回值:
类型  | 说明  | 
Promise<Array< OAuthTokenInfo>>  | Promise对象,返回授权令牌数组。  | 
示例:
appAccountManager.getAllOAuthTokens("LiSi", "com.example.accountjsdemo").then((data) => {
    console.log('getAllOAuthTokens data: ' + JSON.stringify(data));
}).catch((err) => {
    console.log("getAllOAuthTokens err: "  + JSON.stringify(err));
});
getOAuthList(deprecated)
getOAuthList(name: string, authType: string, callback: AsyncCallback<Array<string>>): void
获取指定应用帐号的特定鉴权类型的授权列表,即被授权的包名数组(令牌的授权列表通过setOAuthTokenVisibility(#setoauthtokenvisibilitydeprecated)来设置)。使用callback异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用getAuthList替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
authType  | string  | 是  | 鉴权类型。  | 
callback  | AsyncCallback<Array<string>>  | 是  | 回调函数。当获取成功时,err为null,data为被授权的包名数组;否则为错误对象。  | 
示例:
appAccountManager.getOAuthList("com.example.accountjsdemo", "getSocialData", (err, data) => {
  console.log('getOAuthList err: ' + JSON.stringify(err));
  console.log('getOAuthList data: ' + JSON.stringify(data));
});
getOAuthList(deprecated)
getOAuthList(name: string, authType: string): Promise<Array<string>>
获取指定应用帐号的特定鉴权类型的授权列表,即被授权的包名数组(令牌的授权列表通过setOAuthTokenVisibility(#setoauthtokenvisibilitydeprecated)来设置)。使用Promise异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用getAuthList替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
authType  | string  | 是  | 鉴权类型。  | 
返回值:
类型  | 说明  | 
Promise<Array<string>>  | Promise对象,返回被授权的包名数组。  | 
示例:
appAccountManager.getOAuthList("com.example.accountjsdemo", "getSocialData").then((data) => {
     console.log('getOAuthList data: ' + JSON.stringify(data));
}).catch((err) => {
    console.log("getOAuthList err: "  + JSON.stringify(err));
});
getAuthenticatorCallback(deprecated)
getAuthenticatorCallback(sessionId: string, callback: AsyncCallback<AuthenticatorCallback>): void
获取鉴权会话的认证器回调。使用callback异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用getAuthCallback替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
sessionId  | string  | 是  | 鉴权会话的标识。  | 
callback  | AsyncCallback<AuthenticatorCallback>  | 是  | 回调函数。当获取鉴权会话的认证器回调函数成功时,err为null,data为认证器回调函数;否则为错误对象。  | 
示例:
import featureAbility from '@ohos.ability.featureAbility';
featureAbility.getWant((err, want) => {
  var sessionId = want.parameters[account_appAccount.Constants.KEY_SESSION_ID];
  appAccountManager.getAuthenticatorCallback(sessionId, (err, callback) => {
      if (err.code != account_appAccount.ResultCode.SUCCESS) {
          console.log("getAuthenticatorCallback err: "  + JSON.stringify(err));
          return;
      }
      var result = {[account_appAccount.Constants.KEY_NAME]: "LiSi",
                    [account_appAccount.Constants.KEY_OWNER]: "com.example.accountjsdemo",
                    [account_appAccount.Constants.KEY_AUTH_TYPE]: "getSocialData",
                    [account_appAccount.Constants.KEY_TOKEN]: "xxxxxx"};
      callback.onResult(account_appAccount.ResultCode.SUCCESS, result);
  });
});
getAuthenticatorCallback(deprecated)
getAuthenticatorCallback(sessionId: string): Promise<AuthenticatorCallback>
获取鉴权会话的认证器回调。使用Promise异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用getAuthCallback替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
sessionId  | string  | 是  | 鉴权会话的标识。  | 
返回值:
类型  | 说明  | 
Promise<AuthenticatorCallback>  | Promise对象,返回鉴权会话的认证器回调对象。  | 
示例:
import featureAbility from '@ohos.ability.featureAbility';
featureAbility.getWant().then((want) => {
    var sessionId = want.parameters[account_appAccount.Constants.KEY_SESSION_ID];
    appAccountManager.getAuthenticatorCallback(sessionId).then((callback) => {
        var result = {[account_appAccount.Constants.KEY_NAME]: "LiSi",
                      [account_appAccount.Constants.KEY_OWNER]: "com.example.accountjsdemo",
                      [account_appAccount.Constants.KEY_AUTH_TYPE]: "getSocialData",
                      [account_appAccount.Constants.KEY_TOKEN]: "xxxxxx"};
        callback.onResult(account_appAccount.ResultCode.SUCCESS, result);
    }).catch((err) => {
        console.log("getAuthenticatorCallback err: "  + JSON.stringify(err));
    });
}).catch((err) => {
    console.log("getWant err: "  + JSON.stringify(err));
});
getAuthenticatorInfo(deprecated)
getAuthenticatorInfo(owner: string, callback: AsyncCallback<AuthenticatorInfo>): void
获取指定应用的认证器信息。使用callback异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用queryAuthenticatorInfo替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
owner  | string  | 是  | 应用帐号所有者的包名。  | 
callback  | AsyncCallback<AuthenticatorInfo>  | 是  | 回调函数。当获取成功时,err为null,data为认证器信息对象;否则为错误对象。  | 
示例:
appAccountManager.getAuthenticatorInfo("com.example.accountjsdemo", (err, data) => {
    console.log("getAuthenticatorInfo err: "  + JSON.stringify(err));
    console.log('getAuthenticatorInfo data: ' + JSON.stringify(data));
});
getAuthenticatorInfo(deprecated)
getAuthenticatorInfo(owner: string): Promise<AuthenticatorInfo>
获取指定应用的认证器信息。使用Promise异步回调。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用queryAuthenticatorInfo替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
owner  | string  | 是  | 应用帐号所有者的包名。  | 
返回值:
类型  | 说明  | 
Promise<AuthenticatorInfo>  | Promise对象,返回指定应用的认证器信息对象。  | 
示例:
appAccountManager.getAuthenticatorInfo("com.example.accountjsdemo").then((data) => { 
     console.log('getAuthenticatorInfo: ' + JSON.stringify(data));
}).catch((err) => {
    console.log("getAuthenticatorInfo err: "  + JSON.stringify(err));
});
AppAccountInfo
表示应用帐号信息。
系统能力: 以下各项对应的系统能力均为SystemCapability.Account.AppAccount。
名称  | 类型  | 必填  | 说明  | 
owner  | string  | 是  | 应用帐号所有者的包名。  | 
name  | string  | 是  | 应用帐号的名称。  | 
AuthTokenInfo9+
表示Auth令牌信息。
系统能力: 以下各项对应的系统能力均为SystemCapability.Account.AppAccount。
名称  | 类型  | 必填  | 说明  | 
authType9+  | string  | 是  | 令牌的鉴权类型。  | 
token9+  | string  | 是  | 令牌的取值。  | 
account9+  | 否  | 令牌所属的帐号信息。  | 
OAuthTokenInfo(deprecated)
表示OAuth令牌信息。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用AuthTokenInfo替代。
系统能力: 以下各项对应的系统能力均为SystemCapability.Account.AppAccount。
名称  | 类型  | 必填  | 说明  | 
authType  | string  | 是  | 令牌的鉴权类型。  | 
token  | string  | 是  | 令牌的取值。  | 
AuthenticatorInfo8+
表示OAuth认证器信息。
系统能力: 以下各项对应的系统能力均为SystemCapability.Account.AppAccount。
名称  | 类型  | 必填  | 说明  | 
owner  | string  | 是  | 认证器的所有者包名。  | 
iconId  | number  | 是  | 认证器的图标标识。  | 
labelId  | number  | 是  | 认证器的标签标识。  | 
AuthResult9+
表示认证结果信息。
系统能力: 以下各项对应的系统能力均为SystemCapability.Account.AppAccount。
名称  | 类型  | 必填  | 说明  | 
account  | 否  | 令牌所属的帐号信息。  | |
tokenInfo  | 否  | 令牌信息。  | 
CreateAccountOptions9+
表示创建帐号的选项。
系统能力: 以下各项对应的系统能力均为SystemCapability.Account.AppAccount。
名称  | 类型  | 必填  | 说明  | 
customData  | {[key: string]: string}  | 否  | 自定义数据。  | 
CreateAccountImplicitlyOptions9+
表示隐式创建帐号的选项。
系统能力: 以下各项对应的系统能力均为SystemCapability.Account.AppAccount。
名称  | 类型  | 必填  | 说明  | 
requiredLabels  | Array<string>  | 否  | 必须的标签。  | 
authType  | string  | 否  | 鉴权类型。  | 
parameters  | {[key: string]: Object}  | 否  | 自定义参数对象。  | 
SelectAccountsOptions9+
表示用于选择帐号的选项。
系统能力: 以下各项对应的系统能力均为SystemCapability.Account.AppAccount。
名称  | 类型  | 必填  | 说明  | 
allowedAccounts  | Array<AppAccountInfo>  | 否  | 允许的帐号数组。  | 
allowedOwners  | Array<string>  | 否  | 允许的帐号所有者数组。  | 
requiredLabels  | Array<string>  | 否  | 认证器的标签标识。  | 
VerifyCredentialOptions9+
表示用于验证凭据的选项。
系统能力: 以下各项对应的系统能力均为SystemCapability.Account.AppAccount。
名称  | 类型  | 必填  | 说明  | 
credentialType  | string  | 否  | 凭据类型。  | 
credential  | string  | 否  | 凭据取值。  | 
parameters  | {[key: string]: Object}  | 否  | 自定义参数对象。  | 
SetPropertiesOptions9+
表示用于设置属性的选项。
系统能力: 以下各项对应的系统能力均为SystemCapability.Account.AppAccount。
名称  | 类型  | 必填  | 说明  | 
properties  | {[key: string]: Object}  | 否  | 属性对象。  | 
parameters  | {[key: string]: Object}  | 否  | 自定义参数对象。  | 
Constants8+
表示常量的枚举。
系统能力: 以下各项对应的系统能力均为SystemCapability.Account.AppAccount。
名称  | 值  | 说明  | 
ACTION_ADD_ACCOUNT_IMPLICITLY(deprecated)  | "addAccountImplicitly"  | 表示操作,隐式添加帐号。  | 
ACTION_AUTHENTICATE(deprecated)  | "authenticate"  | 表示操作,鉴权。  | 
ACTION_CREATE_ACCOUNT_IMPLICITLY9+  | "createAccountImplicitly"  | 表示操作,隐式创建帐号。  | 
ACTION_AUTH9+  | "auth"  | 表示操作,鉴权。  | 
ACTION_VERIFY_CREDENTIAL9+  | "verifyCredential"  | 表示操作,验证凭据。  | 
ACTION_SET_AUTHENTICATOR_PROPERTIES9+  | "setAuthenticatorProperties"  | 表示操作,设置认证器属性。  | 
KEY_NAME  | "name"  | 表示键名,应用帐号的名称。  | 
KEY_OWNER  | "owner"  | 表示键名,应用帐号所有者。  | 
KEY_TOKEN  | "token"  | 表示键名,令牌。  | 
KEY_ACTION  | "action"  | 表示键名,操作。  | 
KEY_AUTH_TYPE  | "authType"  | 表示键名,鉴权类型。  | 
KEY_SESSION_ID  | "sessionId"  | 表示键名,会话标识。  | 
KEY_CALLER_PID  | "callerPid"  | 表示键名,调用方PID。  | 
KEY_CALLER_UID  | "callerUid"  | 表示键名,调用方UID。  | 
KEY_CALLER_BUNDLE_NAME  | "callerBundleName"  | 表示键名,调用方包名。  | 
KEY_REQUIRED_LABELS9+  | "requiredLabels"  | 表示键名,必需的标签。  | 
KEY_BOOLEAN_RESULT9+  | "booleanResult"  | 表示键名,布尔返回值。  | 
ResultCode(deprecated)
表示返回码的枚举。
说明
从 API version 8开始支持,从API version 9开始废弃。相关信息建议查看错误码文档替代。
系统能力: 以下各项对应的系统能力均为SystemCapability.Account.AppAccount。
名称  | 值  | 说明  | 
SUCCESS  | 0  | 表示操作成功。  | 
ERROR_ACCOUNT_NOT_EXIST  | 10001  | 表示应用帐号不存在。  | 
ERROR_APP_ACCOUNT_SERVICE_EXCEPTION  | 10002  | 表示应用帐号服务异常。  | 
ERROR_INVALID_PASSWORD  | 10003  | 表示密码无效。  | 
ERROR_INVALID_REQUEST  | 10004  | 表示请求无效。  | 
ERROR_INVALID_RESPONSE  | 10005  | 表示响应无效。  | 
ERROR_NETWORK_EXCEPTION  | 10006  | 表示网络异常。  | 
ERROR_OAUTH_AUTHENTICATOR_NOT_EXIST  | 10007  | 表示认证器不存在。  | 
ERROR_OAUTH_CANCELED  | 10008  | 表示鉴权取消。  | 
ERROR_OAUTH_LIST_TOO_LARGE  | 10009  | 表示开放授权列表过大。  | 
ERROR_OAUTH_SERVICE_BUSY  | 10010  | 表示开放授权服务忙碌。  | 
ERROR_OAUTH_SERVICE_EXCEPTION  | 10011  | 表示开放授权服务异常。  | 
ERROR_OAUTH_SESSION_NOT_EXIST  | 10012  | 表示鉴权会话不存在。  | 
ERROR_OAUTH_TIMEOUT  | 10013  | 表示鉴权超时。  | 
ERROR_OAUTH_TOKEN_NOT_EXIST  | 10014  | 表示开放授权令牌不存在。  | 
ERROR_OAUTH_TOKEN_TOO_MANY  | 10015  | 表示开放授权令牌过多。  | 
ERROR_OAUTH_UNSUPPORT_ACTION  | 10016  | 表示不支持的鉴权操作。  | 
ERROR_OAUTH_UNSUPPORT_AUTH_TYPE  | 10017  | 表示不支持的鉴权类型。  | 
ERROR_PERMISSION_DENIED  | 10018  | 表示权限不足。  | 
AuthCallback9+
认证器回调类。
onResult9+
onResult: (code: number, result?: AuthResult) => void
通知请求结果。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
code  | number  | 是  | 鉴权结果码。  | 
result  | 否  | 鉴权结果。  | 
示例:
let appAccountManager = account_appAccount.createAppAccountManager();
var sessionId = "1234";
appAccountManager.getAuthCallback(sessionId).then((callback) => {
    var result = {
        accountInfo: {
          name: "Lisi",
          owner: "com.example.accountjsdemo",
        },
        tokenInfo: {
          token: "xxxxxx",
          authType: "getSocialData"
        }
    };
    callback.onResult(account_appAccount.ResultCode.SUCCESS, result);
}).catch((err) => {
    console.log("getAuthCallback err: "  + JSON.stringify(err));
});
onRequestRedirected9+
onRequestRedirected: (request: Want) => void
通知请求被跳转。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
request  | Want  | 是  | 用于跳转的请求信息。  | 
示例:
class MyAuthenticator extends account_appAccount.Authenticator {
    createAccountImplicitly(options, callback) {
        callback.onRequestRedirected({
            bundleName: "com.example.accountjsdemo",
            abilityName: "com.example.accountjsdemo.LoginAbility",
        });
    }
    auth(name, authType, options, callback) {
        var result = {
          accountInfo: {
            name: "Lisi",
            owner: "com.example.accountjsdemo",
          },
          tokenInfo: {
            token: "xxxxxx",
            authType: "getSocialData"
          }
        };
        callback.onResult(account_appAccount.ResultCode.SUCCESS, result);
    }
}
onRequestContinued9+
onRequestContinued?: () => void
通知请求被继续处理。
系统能力: SystemCapability.Account.AppAccount
示例:
let appAccountManager = account_appAccount.createAppAccountManager();
var sessionId = "1234";
appAccountManager.getAuthCallback(sessionId).then((callback) => {
    callback.onRequestContinued();
}).catch((err) => {
    console.log("getAuthCallback err: "  + JSON.stringify(err));
});
AuthenticatorCallback(deprecated)
OAuth认证器回调接口。
说明
从 API version 8开始支持,从API version 9开始废弃。建议使用AuthCallback替代。
onResult8+
onResult: (code: number, result: {[key: string]: any}) => void
通知请求结果。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
code  | number  | 是  | 鉴权结果码。  | 
result  | {[key: string]: any}  | 是  | 鉴权结果。  | 
示例:
let appAccountManager = account_appAccount.createAppAccountManager();
var sessionId = "1234";
appAccountManager.getAuthenticatorCallback(sessionId).then((callback) => {
    var result = {[account_appAccount.Constants.KEY_NAME]: "LiSi",
                  [account_appAccount.Constants.KEY_OWNER]: "com.example.accountjsdemo",
                  [account_appAccount.Constants.KEY_AUTH_TYPE]: "getSocialData",
                  [account_appAccount.Constants.KEY_TOKEN]: "xxxxxx"};
    callback.onResult(account_appAccount.ResultCode.SUCCESS, result);
}).catch((err) => {
    console.log("getAuthenticatorCallback err: "  + JSON.stringify(err));
});
onRequestRedirected8+
onRequestRedirected: (request: Want) => void
通知请求被跳转。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
request  | Want  | 是  | 用于跳转的请求信息。  | 
示例:
class MyAuthenticator extends account_appAccount.Authenticator {
    addAccountImplicitly(authType, callerBundleName, options, callback) {
        callback.onRequestRedirected({
            bundleName: "com.example.accountjsdemo",
            abilityName: "com.example.accountjsdemo.LoginAbility",
        });
    }
    authenticate(name, authType, callerBundleName, options, callback) {
        var result = {[account_appAccount.Constants.KEY_NAME]: name,
                      [account_appAccount.Constants.KEY_AUTH_TYPE]: authType,
                      [account_appAccount.Constants.KEY_TOKEN]: "xxxxxx"};
        callback.onResult(account_appAccount.ResultCode.SUCCESS, result);
    }
}
Authenticator8+
认证器基类。
createAccountImplicitly9+
createAccountImplicitly(options: CreateAccountImplicitlyOptions, callback: AuthCallback): void
根据指定的帐号所有者隐式地创建应用帐号,并使用callback异步回调返回结果。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
options  | 是  | 隐式创建帐号的选项。  | |
callback  | 是  | 认证器回调对象,用于返回创建结果。  | 
addAccountImplicitly(deprecated)
addAccountImplicitly(authType: string, callerBundleName: string, options: {[key: string]: any}, callback: AuthenticatorCallback): void
根据指定的鉴权类型和可选项,隐式地添加应用帐号,并使用callback异步回调返回结果。
说明
从 API version 8开始支持, 从API version 9开始废弃。建议使用createAccountImplicitly替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
authType  | string  | 是  | 应用帐号的鉴权类型。  | 
callerBundleName  | string  | 是  | 鉴权请求方的包名。  | 
options  | {[key: string]: any}  | 是  | 鉴权所需要的可选项。  | 
callback  | 是  | 认证器回调,用于返回鉴权结果。  | 
auth9+
auth(name: string, authType: string, options: {[key:string]: Object}, callback: AuthCallback): void
对应用帐号进行鉴权以获取授权令牌,并使用callback异步回调返回结果。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
authType  | string  | 是  | 应用帐号的鉴权类型。  | 
callerBundleName  | string  | 是  | 鉴权类型。  | 
options  | {[key: string]: Object}  | 是  | 鉴权所需要的可选项。  | 
callback  | 是  | 回调对象,用于返回鉴权结果。  | 
authenticate(deprecated)
authenticate(name: string, authType: string, callerBundleName: string, options: {[key: string]: any}, callback: AuthenticatorCallback): void
对应用帐号进行鉴权,获取OAuth令牌,并使用callback异步回调返回结果。
说明
从 API version 8开始支持, 从API version 9开始废弃。建议使用auth替代。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
authType  | string  | 是  | 应用帐号的鉴权类型。  | 
callerBundleName  | string  | 是  | 鉴权请求方的包名。  | 
options  | {[key: string]: any}  | 是  | 鉴权所需要的可选项。  | 
callback  | 是  | 认证器回调,用于返回鉴权结果。  | 
verifyCredential9+
verifyCredential(name: string, options: VerifyCredentialOptions, callback: AuthCallback): void;
验证应用帐号的凭据,并使用callback异步回调返回结果。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
options  | 是  | 验证凭据的可选项。  | |
callback  | 是  | 认证器回调,用于返回验证结果。  | 
setProperties9+
setProperties(options: SetPropertiesOptions, callback: AuthCallback): void;
设置认证器属性,并使用callback异步回调返回结果。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
options  | 是  | 设置属性的可选项。  | |
callback  | 是  | 认证器回调,用于返回设置结果。  | 
checkAccountLabels9+
checkAccountLabels(name: string, labels: Array<string>, callback: AuthCallback): void;
检查帐号标签,并使用callback异步回调返回结果。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
labels  | Array<string>  | 是  | 标签数组。  | 
callback  | 是  | 认证器回调,用于返回检查结果。  | 
isAccountRemovable9+
isAccountRemovable(name: string, callback: AuthCallback): void;
判断帐号是否可以删除,并使用callback异步回调返回结果。
系统能力: SystemCapability.Account.AppAccount
参数:
参数名  | 类型  | 必填  | 说明  | 
name  | string  | 是  | 应用帐号的名称。  | 
callback  | 是  | 认证器回调,用于返回判断结果。  | 
getRemoteObject9+
getRemoteObject(): rpc.RemoteObject;
获取认证器的远程对象,不可以重载实现。
系统能力: SystemCapability.Account.AppAccount
示例:
class MyAuthenticator extends account_appAccount.Authenticator {
  addAccountImplicitly(authType, callerBundleName, options, callback) {
    callback.onRequestRedirected({
      bundleName: "com.example.accountjsdemo",
      abilityName: "com.example.accountjsdemo.LoginAbility",
    });
  }
  authenticate(name, authType, callerBundleName, options, callback) {
    var result = {[account_appAccount.Constants.KEY_NAME]: name,
                  [account_appAccount.Constants.KEY_AUTH_TYPE]: authType,
                  [account_appAccount.Constants.KEY_TOKEN]: "xxxxxx"};
    callback.onResult(account_appAccount.ResultCode.SUCCESS, result);
  }
  verifyCredential(name, options, callback) {
    callback.onRequestRedirected({
      bundleName: "com.example.accountjsdemo",
      abilityName: "com.example.accountjsdemo.VerifyAbility",
      parameters: {
        name: name
      }
    });
  }
  setProperties(options, callback) {
    callback.onResult(account_appAccount.ResultCode.SUCCESS, {});
  }
  checkAccountLabels(name, labels, callback) {
    var result = {[account_appAccount.Constants.KEY_BOOLEAN_RESULT]: false};
    callback.onResult(account_appAccount.ResultCode.SUCCESS, result);
  }
  isAccountRemovable(name, callback) {
    var result = {[account_appAccount.Constants.KEY_BOOLEAN_RESULT]: true};
    callback.onResult(account_appAccount.ResultCode.SUCCESS, result);
  }
}
var authenticator = null;
export default {
  onConnect(want) {
    authenticator = new MyAuthenticator();
    return authenticator.getRemoteObject();
  }
}



















