@ohos.account.appAccount (App Account Management)
The appAccount module provides APIs for adding, deleting, modifying, and querying app account information, and supports inter-app authentication and distributed data synchronization.
NOTE
The initial APIs of this module are supported since API version 7. Newly added APIs will be marked with a superscript to indicate their earliest API version.
Modules to Import
import account_appAccount from '@ohos.account.appAccount';
account_appAccount.createAppAccountManager
createAppAccountManager(): AppAccountManager
Creates an AppAccountManager object.
System capability: SystemCapability.Account.AppAccount
Return value
Type | Description |
---|---|
AppAccountManager | AppAccountManager object created. |
Example
let appAccountManager: account_appAccount.AppAccountManager = account_appAccount.createAppAccountManager();
AppAccountManager
Implements app account management.
createAccount9+
createAccount(name: string, callback: AsyncCallback<void>): void;
Creates an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the app account to create. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name. |
12300004 | Account already exists. |
12300007 | The number of accounts reaches the upper limit. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.createAccount('WangWu', (err: BusinessError) => {
console.log('createAccount err: ' + JSON.stringify(err));
});
} catch (err) {
console.log('createAccount err: ' + JSON.stringify(err));
}
createAccount9+
createAccount(name: string, options: CreateAccountOptions, callback: AsyncCallback<void>): void
Creates an app account with custom data. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the app account to create. |
options | CreateAccountOptions | Yes | Options for creating the app account. You can customize data based on service requirements, but do not add sensitive data (such as passwords and tokens). |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or options. |
12300004 | Account already exists. |
12300007 | The number of accounts reaches the upper limit. |
Example
import { BusinessError } from '@ohos.base';
let options:account_appAccount.CreateAccountOptions = {
customData: {
age: '10'
}
}
try {
appAccountManager.createAccount('LiSi', options, (err: BusinessError) => {
if (err) {
console.log('createAccount failed, error: ' + JSON.stringify(err));
} else {
console.log('createAccount successfully');
}
});
} catch(err) {
console.log('createAccount exception: ' + JSON.stringify(err));
}
createAccount9+
createAccount(name: string, options?: CreateAccountOptions): Promise<void>
Creates an app account with custom data. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the app account to create. |
options | CreateAccountOptions | No | Options for creating the app account. You can customize data based on service requirements, but do not add sensitive data (such as passwords and tokens). By default, no value is passed, which means no additional information needs to be added for the account. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or options. |
12300004 | Account already exists. |
12300007 | The number of accounts reaches the upper limit. |
Example
import { BusinessError } from '@ohos.base';
let options: account_appAccount.CreateAccountOptions = {
customData: {
age: '10'
}
}
try {
appAccountManager.createAccount('LiSi', options).then(() => {
console.log('createAccount successfully');
}).catch((err: BusinessError) => {
console.log('createAccount failed, error: ' + JSON.stringify(err));
});
} catch(err) {
console.log('createAccount exception: ' + JSON.stringify(err));
}
createAccountImplicitly9+
createAccountImplicitly(owner: string, callback: AuthCallback): void
Creates an app account implicitly based on the specified account owner. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
callback | AuthCallback | Yes | Authenticator callback used to return the result. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid owner. |
12300007 | The number of accounts reaches the upper limit. |
12300010 | Account service busy. |
12300113 | Authenticator service not found. |
12300114 | Authenticator service exception. |
Example
import { BusinessError } from '@ohos.base';
import Want from '@ohos.app.ability.Want';
import common from '@ohos.app.ability.common';
let context = getContext(this) as common.UIAbilityContext; // UIAbilityContext
function onResultCallback(code: number, result?: account_appAccount.AuthResult): void {
console.log('resultCode: ' + code);
console.log('result: ' + JSON.stringify(result));
}
function onRequestRedirectedCallback(request: Want): void {
let wantInfo: Want = {
deviceId: '',
bundleName: 'com.example.accountjsdemo',
action: 'ohos.want.action.viewData',
entities: ['entity.system.default'],
}
context.startAbility(wantInfo).then(() => {
console.log('startAbility successfully');
}).catch((err: BusinessError) => {
console.log('startAbility err: ' + JSON.stringify(err));
})
}
try {
appAccountManager.createAccountImplicitly('com.example.accountjsdemo', {
onResult: onResultCallback,
onRequestRedirected: onRequestRedirectedCallback
});
} catch (err) {
console.log('createAccountImplicitly exception: ' + JSON.stringify(err));
}
createAccountImplicitly9+
createAccountImplicitly(owner: string, options: CreateAccountImplicitlyOptions, callback: AuthCallback): void
Creates an app account implicitly based on the specified account owner and options. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
options | CreateAccountImplicitlyOptions | Yes | Options for implicitly creating the account. |
callback | AuthCallback | Yes | Authenticator callback used to return the result. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid owner or options. |
12300007 | The number of accounts reaches the upper limit. |
12300010 | Account service busy. |
12300113 | Authenticator service not found. |
12300114 | Authenticator service exception. |
Example
import { BusinessError } from '@ohos.base';
import Want from '@ohos.app.ability.Want';
import common from '@ohos.app.ability.common';
let context = getContext(this) as common.UIAbilityContext; // UIAbilityContext
function onResultCallback(code: number, result?: account_appAccount.AuthResult): void {
console.log('resultCode: ' + code);
console.log('result: ' + JSON.stringify(result));
}
function onRequestRedirectedCallback(request: Want): void {
let wantInfo: Want = {
deviceId: '',
bundleName: 'com.example.accountjsdemo',
action: 'ohos.want.action.viewData',
entities: ['entity.system.default'],
}
context.startAbility(wantInfo).then(() => {
console.log('startAbility successfully');
}).catch((err: BusinessError) => {
console.log('startAbility err: ' + JSON.stringify(err));
})
}
let options: account_appAccount.CreateAccountImplicitlyOptions = {
authType: 'getSocialData',
requiredLabels: [ 'student' ]
};
try {
appAccountManager.createAccountImplicitly('com.example.accountjsdemo', options, {
onResult: onResultCallback,
onRequestRedirected: onRequestRedirectedCallback
});
} catch (err) {
console.log('createAccountImplicitly exception: ' + JSON.stringify(err));
}
removeAccount9+
removeAccount(name: string, callback: AsyncCallback<void>): void
Removes an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the app account to remove. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name. |
12300003 | Account not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.removeAccount('ZhaoLiu', (err: BusinessError) => {
if (err) {
console.log('removeAccount failed, error: ' + JSON.stringify(err));
} else {
console.log('removeAccount successfully');
}
});
} catch(err) {
console.log('removeAccount exception: ' + JSON.stringify(err));
}
removeAccount9+
removeAccount(name: string): Promise<void>
Removes an app account. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the app account to remove. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name. |
12300003 | Account not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.removeAccount('Lisi').then(() => {
console.log('removeAccount successfully');
}).catch((err: BusinessError) => {
console.log('removeAccount failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('removeAccount exception: ' + JSON.stringify(err));
}
setAppAccess9+
setAppAccess(name: string, bundleName: string, isAccessible: boolean, callback: AsyncCallback<void>): void
Sets the access to the data of an account for an app. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
bundleName | string | Yes | Bundle name of the app. |
isAccessible | boolean | Yes | Whether the access is allowed. The value true means to allow the access; the value false means the opposite. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or bundleName. |
12300003 | Account not found. |
12400001 | Application not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.setAppAccess('ZhangSan', 'com.example.accountjsdemo', true, (err: BusinessError) => {
if (err) {
console.log('setAppAccess failed: ' + JSON.stringify(err));
} else {
console.log('setAppAccess successfully');
}
});
} catch (err) {
console.log('setAppAccess exception: ' + JSON.stringify(err));
}
setAppAccess9+
setAppAccess(name: string, bundleName: string, isAccessible: boolean): Promise<void>
Sets the access to the data of an account for an app. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
bundleName | string | Yes | Bundle name of the app. |
isAccessible | boolean | Yes | Whether the access is allowed. The value true means to allow the access; the value false means the opposite. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or bundleName. |
12300003 | Account not found. |
12400001 | Application not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.setAppAccess('ZhangSan', 'com.example.accountjsdemo', true).then(() => {
console.log('setAppAccess successfully');
}).catch((err: BusinessError) => {
console.log('setAppAccess failed: ' + JSON.stringify(err));
});
} catch (err) {
console.log('setAppAccess exception: ' + JSON.stringify(err));
}
checkAppAccess9+
checkAppAccess(name: string, bundleName: string, callback: AsyncCallback<boolean>): void
Checks whether an app can access the data of an account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
bundleName | string | Yes | Bundle name of the app. |
callback | AsyncCallback<boolean> | Yes | Callback invoked to return the result. The value true means the app can access the account data; the value false means the opposite. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or bundleName. |
12300003 | Account not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.checkAppAccess('ZhangSan', 'com.example.accountjsdemo',
(err: BusinessError, isAccessible: boolean) => {
if (err) {
console.log('checkAppAccess failed, error: ' + JSON.stringify(err));
} else {
console.log('checkAppAccess successfully');
}
});
} catch (err) {
console.log('checkAppAccess exception: ' + JSON.stringify(err));
}
checkAppAccess9+
checkAppAccess(name: string, bundleName: string): Promise<boolean>
Checks whether an app can access the data of an account. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
bundleName | string | Yes | Bundle name of the app. |
Return value
Type | Description |
---|---|
Promise<boolean> | Promise used to return the result. The value true means the app can access the account data; the value false means the opposite. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or bundleName. |
12300003 | Account not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.checkAppAccess('ZhangSan', 'com.example.accountjsdemo').then((isAccessible: boolean) => {
console.log('checkAppAccess successfully, isAccessible: ' + isAccessible);
}).catch((err: BusinessError) => {
console.log('checkAppAccess failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('checkAppAccess exception: ' + JSON.stringify(err));
}
setDataSyncEnabled9+
setDataSyncEnabled(name: string, isEnabled: boolean, callback: AsyncCallback<void>): void
Sets data synchronization for an app account. This API uses an asynchronous callback to return the result.
Required permissions: ohos.permission.DISTRIBUTED_DATASYNC
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
isEnabled | boolean | Yes | Whether to enable data synchronization. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name. |
12300003 | Account not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.setDataSyncEnabled('ZhangSan', true, (err: BusinessError) => {
console.log('setDataSyncEnabled err: ' + JSON.stringify(err));
});
} catch (err) {
console.log('setDataSyncEnabled err: ' + JSON.stringify(err));
}
setDataSyncEnabled9+
setDataSyncEnabled(name: string, isEnabled: boolean): Promise<void>
Sets data synchronization for an app account. This API uses a promise to return the result.
Required permissions: ohos.permission.DISTRIBUTED_DATASYNC
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
isEnabled | boolean | Yes | Whether to enable data synchronization. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name. |
12300003 | Account not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager .setDataSyncEnabled('ZhangSan', true).then(() => {
console.log('setDataSyncEnabled Success');
}).catch((err: BusinessError) => {
console.log('setDataSyncEnabled err: ' + JSON.stringify(err));
});
} catch (err) {
console.log('setDataSyncEnabled err: ' + JSON.stringify(err));
}
checkDataSyncEnabled9+
checkDataSyncEnabled(name: string, callback: AsyncCallback<boolean>): void
Checks whether data synchronization is enabled for an app account. This API uses an asynchronous callback to return the result.
Required permissions: ohos.permission.DISTRIBUTED_DATASYNC
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
callback | AsyncCallback<boolean> | Yes | Callback invoked to return the result. The value true means data synchronization is enabled for the app account; the value false means the opposite. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name. |
12300003 | Account not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.checkDataSyncEnabled('ZhangSan', (err: BusinessError, isEnabled: boolean) => {
if (err) {
console.log('checkDataSyncEnabled failed, err: ' + JSON.stringify(err));
} else {
console.log('checkDataSyncEnabled successfully, isEnabled: ' + isEnabled);
}
});
} catch (err) {
console.log('checkDataSyncEnabled err: ' + JSON.stringify(err));
}
checkDataSyncEnabled9+
checkDataSyncEnabled(name: string): Promise<boolean>
Checks whether data synchronization is enabled for an app account. This API uses a promise to return the result.
Required permissions: ohos.permission.DISTRIBUTED_DATASYNC
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
Return value
Type | Description |
---|---|
Promise<boolean> | Promise used to return the result. The value true means data synchronization is enabled for the app account; the value false means the opposite. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name. |
12300003 | Account not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.checkDataSyncEnabled('ZhangSan').then((isEnabled: boolean) => {
console.log('checkDataSyncEnabled successfully, isEnabled: ' + isEnabled);
}).catch((err: BusinessError) => {
console.log('checkDataSyncEnabled failed, err: ' + JSON.stringify(err));
});
} catch (err) {
console.log('checkDataSyncEnabled err: ' + JSON.stringify(err));
}
setCredential9+
setCredential(name: string, credentialType: string, credential: string,callback: AsyncCallback<void>): void
Sets a credential for an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
credentialType | string | Yes | Type of the credential to set. |
credential | string | Yes | Credential value. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the credential is set successfully, err is null. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, credentialType or credential. |
12300003 | Account not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.setCredential('ZhangSan', 'PIN_SIX', 'xxxxxx', (err: BusinessError) => {
if (err) {
console.log('setCredential failed, error: ' + JSON.stringify(err));
} else {
console.log('setCredential successfully');
}
});
} catch (err) {
console.log('setCredential exception: ' + JSON.stringify(err));
}
setCredential9+
setCredential(name: string, credentialType: string, credential: string): Promise<void>
Sets a credential for an app account. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
credentialType | string | Yes | Type of the credential to set. |
credential | string | Yes | Credential value. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, credentialType or credential. |
12300003 | Account not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.setCredential('ZhangSan', 'PIN_SIX', 'xxxxxx').then(() => {
console.log('setCredential successfully');
}).catch((err: BusinessError) => {
console.log('setCredential failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('setCredential exception: ' + JSON.stringify(err));
}
getCredential9+
getCredential(name: string, credentialType: string, callback: AsyncCallback<string>): void
Obtains the credential of an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
credentialType | string | Yes | Type of the credential to obtain. |
callback | AsyncCallback<string> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is the credential obtained. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or credentialType. |
12300003 | Account not found. |
12300102 | Credential not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getCredential('ZhangSan', 'PIN_SIX', (err: BusinessError, result: string) => {
if (err) {
console.log('getCredential failed, error: ' + JSON.stringify(err));
} else {
console.log('getCredential successfully, result: ' + result);
}
});
} catch (err) {
console.log('getCredential err: ' + JSON.stringify(err));
}
getCredential9+
getCredential(name: string, credentialType: string): Promise<string>
Obtains the credential of an app account. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
credentialType | string | Yes | Type of the credential to obtain. |
Return value
Type | Description |
---|---|
Promise<string> | Promise used to return the credential obtained. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or credentialType. |
12300003 | Account not found. |
12300102 | Credential not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getCredential('ZhangSan', 'PIN_SIX').then((credential: string) => {
console.log('getCredential successfully, credential: ' + credential);
}).catch((err: BusinessError) => {
console.log('getCredential failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('getCredential exception: ' + JSON.stringify(err));
}
setCustomData9+
setCustomData(name: string, key: string, value: string, callback: AsyncCallback<void>): void
Sets custom data for an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
key | string | Yes | Key of the custom data to set. |
value | string | Yes | Value of the custom data to set. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, key or value. |
12300003 | Account not found. |
12400003 | The number of custom data reaches the upper limit. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.setCustomData('ZhangSan', 'age', '12', (err: BusinessError) => {
if (err) {
console.log('setCustomData failed, error: ' + JSON.stringify(err));
} else {
console.log('setCustomData successfully');
}
});
} catch (err) {
console.log('setCustomData exception: ' + JSON.stringify(err));
}
setCustomData9+
setCustomData(name: string, key: string, value: string): Promise<void>
Sets custom data for an app account. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
key | string | Yes | Key of the custom data to set. |
value | string | Yes | Value of the custom data to set. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, key or value. |
12300003 | Account not found. |
12400003 | The number of custom data reaches the upper limit. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.setCustomData('ZhangSan', 'age', '12').then(() => {
console.log('setCustomData successfully');
}).catch((err: BusinessError) => {
console.log('setCustomData failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('setCustomData exception: ' + JSON.stringify(err));
}
getCustomData9+
getCustomData(name: string, key: string, callback: AsyncCallback<string>): void
Obtains the custom data of an app account based on the specified key. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
key | string | Yes | Key of the custom data to obtain. |
callback | AsyncCallback<string> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is the custom data value obtained. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or key. |
12300003 | Account not found. |
12400002 | Custom data not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getCustomData('ZhangSan', 'age', (err: BusinessError, data: string) => {
if (err) {
console.log('getCustomData failed, error: ' + err);
} else {
console.log('getCustomData successfully, data: ' + data);
}
});
} catch (err) {
console.log('getCustomData exception: ' + JSON.stringify(err));
}
getCustomData9+
getCustomData(name: string, key: string): Promise<string>
Obtains the custom data of an app account based on the specified key. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
key | string | Yes | Key of the custom data to obtain. |
Return value
Type | Description |
---|---|
Promise<string> | Promise used to return the custom data value obtained. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or key. |
12300003 | Account not found. |
12400002 | Custom data not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getCustomData('ZhangSan', 'age').then((data: string) => {
console.log('getCustomData successfully, data: ' + data);
}).catch((err: BusinessError) => {
console.log('getCustomData failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('getCustomData exception: ' + JSON.stringify(err));
}
getCustomDataSync9+
getCustomDataSync(name: string, key: string): string;
Obtains the custom data of an app account based on the specified key. The API returns the result synchronously.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
key | string | Yes | Key of the custom data to obtain. |
Return value
Type | Description |
---|---|
string | Value of the custom data obtained. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or key. |
12300003 | Account not found. |
12400002 | Custom data not found. |
Example
try {
let value = appAccountManager.getCustomDataSync('ZhangSan', 'age');
console.info('getCustomDataSync successfully, vaue: ' + value);
} catch (err) {
console.error('getCustomDataSync failed, error: ' + JSON.stringify(err));
}
getAllAccounts9+
getAllAccounts(callback: AsyncCallback<Array<AppAccountInfo>>): void
Obtains information about all accessible app accounts. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
callback | AsyncCallback<Array<AppAccountInfo>> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is a list of accessible app accounts. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getAllAccounts((err: BusinessError, data: account_appAccount.AppAccountInfo[]) => {
if (err) {
console.debug('getAllAccounts failed, error: ' + JSON.stringify(err));
} else {
console.debug('getAllAccounts successfully');
}
});
} catch (err) {
console.debug('getAllAccounts exception: ' + JSON.stringify(err));
}
getAllAccounts9+
getAllAccounts(): Promise<Array<AppAccountInfo>>
Obtains information about all accessible app accounts. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Return value
Type | Description |
---|---|
Promise<Array<AppAccountInfo>> | Promise used to return information about all accessible accounts. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getAllAccounts().then((data: account_appAccount.AppAccountInfo[]) => {
console.debug('getAllAccounts successfully');
}).catch((err: BusinessError) => {
console.debug('getAllAccounts failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.debug('getAllAccounts exception: ' + JSON.stringify(err));
}
getAccountsByOwner9+
getAccountsByOwner(owner: string, callback: AsyncCallback<Array<AppAccountInfo>>): void
Obtains the app accounts that can be accessed by the invoker based on the app account owner. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
callback | AsyncCallback<Array<AppAccountInfo>> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is the app account information obtained. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid owner. |
12400001 | Application not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getAccountsByOwner('com.example.accountjsdemo2',
(err: BusinessError, data: account_appAccount.AppAccountInfo[]) => {
if (err) {
console.debug('getAccountsByOwner failed, error:' + JSON.stringify(err));
} else {
console.debug('getAccountsByOwner successfully, data:' + JSON.stringify(data));
}
});
} catch (err) {
console.debug('getAccountsByOwner exception:' + JSON.stringify(err));
}
getAccountsByOwner9+
getAccountsByOwner(owner: string): Promise<Array<AppAccountInfo>>
Obtains the app accounts that can be accessed by the invoker based on the app account owner. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
Return value
Type | Description |
---|---|
Promise<Array<AppAccountInfo>> | Promise used to return the app account information obtained. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid owner. |
12400001 | Application not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getAccountsByOwner('com.example.accountjsdemo2').then((
data: account_appAccount.AppAccountInfo[]) => {
console.debug('getAccountsByOwner successfully, data: ' + JSON.stringify(data));
}).catch((err: BusinessError) => {
console.debug('getAccountsByOwner failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.debug('getAccountsByOwner exception: ' + JSON.stringify(err));
}
on('accountChange')9+
on(type: 'accountChange', owners: Array<string>, callback: Callback<Array<AppAccountInfo>>): void
Subscribes to account information changes of apps.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
type | 'accountChange' | Yes | Event type to subscribe to. The value is 'accountChange'. An event will be reported when the account information of the target app changes. |
owners | Array<string> | Yes | App bundle names of the account. |
callback | Callback<Array<AppAccountInfo>> | Yes | Callback registered to return the list of changed app accounts. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid type or owners. |
12400001 | Application not found. |
Example
function changeOnCallback(data: account_appAccount.AppAccountInfo[]): void {
console.log('receive change data:' + JSON.stringify(data));
}
try{
appAccountManager.on('accountChange', ['com.example.actsaccounttest'], changeOnCallback);
} catch(err) {
console.error('on accountChange failed, error:' + JSON.stringify(err));
}
off('accountChange')9+
off(type: 'accountChange', callback?: Callback<Array<AppAccountInfo>>): void
Unsubscribes from account information changes.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
type | 'accountChange' | Yes | Event type to unsubscribe from. The value is 'accountChange'. |
callback | Callback<Array<AppAccountInfo>> | No | Callback to unregister. By default, no value is passed, which means to unregister all callbacks for the specified event. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid type. |
Example
function changeOnCallback(data: account_appAccount.AppAccountInfo[]): void {
console.log('receive change data:' + JSON.stringify(data));
}
try{
appAccountManager.on('accountChange', ['com.example.actsaccounttest'], changeOnCallback);
} catch(err) {
console.error('on accountChange failed, error:' + JSON.stringify(err));
}
try{
appAccountManager.off('accountChange', changeOnCallback);
}
catch(err){
console.error('off accountChange failed, error:' + JSON.stringify(err));
}
auth9+
auth(name: string, owner: string, authType: string, callback: AuthCallback): void
Authenticates an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
authType | string | Yes | Authentication type. |
callback | AuthCallback | Yes | Callback invoked to return the authentication result. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, owner or authType. |
12300003 | Account not found. |
12300010 | Account service busy. |
12300113 | Authenticator service not found. |
12300114 | Authenticator service exception. |
Example
import { BusinessError } from '@ohos.base';
import Want from '@ohos.app.ability.Want';
import common from '@ohos.app.ability.common';
let context = getContext(this) as common.UIAbilityContext; // UIAbilityContext
function onResultCallback(code: number, authResult?: account_appAccount.AuthResult): void {
console.log('resultCode: ' + code);
console.log('authResult: ' + JSON.stringify(authResult));
}
function onRequestRedirectedCallback(request: Want): void {
let wantInfo: Want = {
deviceId: '',
bundleName: 'com.example.accountjsdemo',
action: 'ohos.want.action.viewData',
entities: ['entity.system.default'],
}
context.startAbility(wantInfo).then(() => {
console.log('startAbility successfully');
}).catch((err: BusinessError) => {
console.log('startAbility err: ' + JSON.stringify(err));
})
}
try {
appAccountManager.auth('LiSi', 'com.example.accountjsdemo', 'getSocialData', {
onResult: onResultCallback,
onRequestRedirected: onRequestRedirectedCallback
});
} catch (err) {
console.log('auth exception: ' + JSON.stringify(err));
}
auth9+
auth(name: string, owner: string, authType: string, options: {[key: string]: Object}, callback: AuthCallback): void
Authenticates an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
authType | string | Yes | Authentication type. |
options | {[key: string]: Object} | Yes | Options for the authentication. |
callback | AuthCallback | Yes | Callback invoked to return the authentication result. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, owner, authType or options. |
12300003 | Account not found. |
12300010 | Account service busy. |
12300113 | Authenticator service not found. |
12300114 | Authenticator service exception. |
Example
import { BusinessError } from '@ohos.base';
import Want from '@ohos.app.ability.Want';
import common from '@ohos.app.ability.common';
let context = getContext(this) as common.UIAbilityContext; // UIAbilityContext
function onResultCallback(code: number, authResult?: account_appAccount.AuthResult): void {
console.log('resultCode: ' + code);
console.log('authResult: ' + JSON.stringify(authResult));
}
function onRequestRedirectedCallback(request: Want): void {
let wantInfo: Want = {
deviceId: '',
bundleName: 'com.example.accountjsdemo',
action: 'ohos.want.action.viewData',
entities: ['entity.system.default'],
}
context.startAbility(wantInfo).then(() => {
console.log('startAbility successfully');
}).catch((err: BusinessError) => {
console.log('startAbility err: ' + JSON.stringify(err));
})
}
let options: Record<string, Object> = {
'password': 'xxxx',
};
try {
appAccountManager.auth('LiSi', 'com.example.accountjsdemo', 'getSocialData', options, {
onResult: onResultCallback,
onRequestRedirected: onRequestRedirectedCallback
});
} catch (err) {
console.log('auth exception: ' + JSON.stringify(err));
}
getAuthToken9+
getAuthToken(name: string, owner: string, authType: string, callback: AsyncCallback<string>): void
Obtains the authorization token of the specified authentication type for an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
authType | string | Yes | Authentication type. |
callback | AsyncCallback<string> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is the authorization token value obtained. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, owner or authType. |
12300003 | Account not found. |
12300107 | AuthType not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getAuthToken('LiSi', 'com.example.accountjsdemo', 'getSocialData',
(err: BusinessError, token: string) => {
if (err) {
console.log('getAuthToken failed, error: ' + JSON.stringify(err));
} else {
console.log('getAuthToken successfully, token: ' + token);
}
});
} catch (err) {
console.log('getAuthToken exception: ' + JSON.stringify(err));
}
getAuthToken9+
getAuthToken(name: string, owner: string, authType: string): Promise<string>
Obtains the authorization token of the specified authentication type for an app account. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
authType | string | Yes | Authentication type. |
Return value
Type | Description |
---|---|
Promise<string> | Promise used to return the authorization token obtained. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, owner or authType. |
12300003 | Account not found. |
12300107 | AuthType not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getAuthToken('LiSi', 'com.example.accountjsdemo', 'getSocialData').then((token: string) => {
console.log('getAuthToken successfully, token: ' + token);
}).catch((err: BusinessError) => {
console.log('getAuthToken failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('getAuthToken exception: ' + JSON.stringify(err));
}
setAuthToken9+
setAuthToken(name: string, authType: string, token: string, callback: AsyncCallback<void>): void
Sets an authorization token of the specific authentication type for an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
token | string | Yes | Token to set. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, authType or token. |
12300003 | Account not found. |
12400004 | The number of tokens reaches the upper limit. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.setAuthToken('LiSi', 'getSocialData', 'xxxx', (err: BusinessError) => {
if (err) {
console.log('setAuthToken failed, error: ' + JSON.stringify(err));
} else {
console.log('setAuthToken successfully');
}
});
} catch (err) {
console.log('setAuthToken exception: ' + JSON.stringify(err));
}
setAuthToken9+
setAuthToken(name: string, authType: string, token: string): Promise<void>
Sets an authorization token of the specific authentication type for an app account. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
token | string | Yes | Token to set. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, authType or token. |
12300003 | Account not found. |
12400004 | The number of tokens reaches the upper limit. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.setAuthToken('LiSi', 'getSocialData', 'xxxx').then(() => {
console.log('setAuthToken successfully');
}).catch((err: BusinessError) => {
console.log('setAuthToken failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('setAuthToken exception: ' + JSON.stringify(err));
}
deleteAuthToken9+
deleteAuthToken(name: string, owner: string, authType: string, token: string, callback: AsyncCallback<void>): void
Deletes the authorization token of the specified authentication type for an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
authType | string | Yes | Authentication type. |
token | string | Yes | Authorization token to delete. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, owner, authType or token. |
12300003 | Account not found. |
12300107 | AuthType not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.deleteAuthToken('LiSi', 'com.example.accountjsdemo', 'getSocialData', 'xxxxx',
(err: BusinessError) => {
if (err) {
console.log('deleteAuthToken failed, error: ' + JSON.stringify(err));
} else {
console.log('deleteAuthToken successfully');
}
});
} catch (err) {
console.log('deleteAuthToken exception: ' + JSON.stringify(err));
}
deleteAuthToken9+
deleteAuthToken(name: string, owner: string, authType: string, token: string): Promise<void>
Deletes the authorization token of the specified authentication type for an app account. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
authType | string | Yes | Authentication type. |
token | string | Yes | Authorization token to delete. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, owner, authType or token. |
12300003 | Account not found. |
12300107 | AuthType not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.deleteAuthToken('LiSi', 'com.example.accountjsdemo', 'getSocialData', 'xxxxx').then(() => {
console.log('deleteAuthToken successfully');
}).catch((err: BusinessError) => {
console.log('deleteAuthToken failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('deleteAuthToken exception: ' + JSON.stringify(err));
}
setAuthTokenVisibility9+
setAuthTokenVisibility(name: string, authType: string, bundleName: string, isVisible: boolean, callback: AsyncCallback<void>): void
Sets the visibility of an authorization token to an app. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
bundleName | string | Yes | Bundle name of the app. |
isVisible | boolean | Yes | Whether the authorization token is visible to the app. The value true means the authorization token is visible to the app; the value false means the opposite. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, authType or bundleName. |
12300003 | Account not found. |
12300107 | AuthType not found. |
12400001 | Application not found. |
12400005 | The size of authorization list reaches the upper limit. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.setAuthTokenVisibility('LiSi', 'getSocialData', 'com.example.accountjsdemo', true,
(err: BusinessError) => {
if (err) {
console.log('setAuthTokenVisibility failed, error: ' + JSON.stringify(err));
} else {
console.log('setAuthTokenVisibility successfully');
}
});
} catch (err) {
console.log('setAuthTokenVisibility exception: ' + JSON.stringify(err));
}
setAuthTokenVisibility9+
setAuthTokenVisibility(name: string, authType: string, bundleName: string, isVisible: boolean): Promise<void>
Sets the visibility of an authorization token to an app. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
bundleName | string | Yes | Bundle name of the app. |
isVisible | boolean | Yes | Whether the authorization token is visible to the app. The value true means the authorization token is visible to the app; the value false means the opposite. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, authType or bundleName. |
12300003 | Account not found. |
12300107 | AuthType not found. |
12400001 | Application not found. |
12400005 | The size of authorization list reaches the upper limit. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.setAuthTokenVisibility('LiSi', 'getSocialData', 'com.example.accountjsdemo', true).then(() => {
console.log('setAuthTokenVisibility successfully');
}).catch((err: BusinessError) => {
console.log('setAuthTokenVisibility failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('setAuthTokenVisibility exception: ' + JSON.stringify(err));
}
checkAuthTokenVisibility9+
checkAuthTokenVisibility(name: string, authType: string, bundleName: string, callback: AsyncCallback<boolean>): void
Checks the visibility of an authorization token of the specified authentication type to an app. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
bundleName | string | Yes | Bundle name of the app. |
callback | AsyncCallback<boolean> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data can be true (the authorization token is visible to the app) or false (the authorization token is not visible to the app). If the operation fails, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, authType or bundleName. |
12300003 | Account not found. |
12300107 | AuthType not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.checkAuthTokenVisibility('LiSi', 'getSocialData', 'com.example.accountjsdemo',
(err: BusinessError, isVisible: boolean) => {
if (err) {
console.log('checkAuthTokenVisibility failed, error: ' + JSON.stringify(err));
} else {
console.log('checkAuthTokenVisibility successfully, isVisible: ' + isVisible);
}
});
} catch (err) {
console.log('checkAuthTokenVisibility exception: ' + JSON.stringify(err));
}
checkAuthTokenVisibility9+
checkAuthTokenVisibility(name: string, authType: string, bundleName: string): Promise<boolean>
Checks the visibility of an authorization token of the specified authentication type to an app. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
bundleName | string | Yes | Bundle name of the app. |
Return value
Type | Description |
---|---|
Promise<boolean> | Promise used to return the result. The value true means the authorization token is visible to the app; the value false means the opposite. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, authType or bundleName. |
12300003 | Account not found. |
12300107 | AuthType not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.checkAuthTokenVisibility('LiSi', 'getSocialData', 'com.example.accountjsdemo').then((
isVisible: boolean) => {
console.log('checkAuthTokenVisibility successfully, isVisible: ' + isVisible);
}).catch((err: BusinessError) => {
console.log('checkAuthTokenVisibility failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('checkAuthTokenVisibility exception: ' + JSON.stringify(err));
}
getAllAuthTokens9+
getAllAuthTokens(name: string, owner: string, callback: AsyncCallback<Array<AuthTokenInfo>>): void
Obtains all tokens visible to the invoker for an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
callback | AsyncCallback<Array<AuthTokenInfo>> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is a list of all tokens visible to the invoker. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or owner. |
12300003 | Account not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getAllAuthTokens('LiSi', 'com.example.accountjsdemo',
(err: BusinessError, tokenArr: account_appAccount.AuthTokenInfo[]) => {
if (err) {
console.log('getAllAuthTokens failed, error: ' + JSON.stringify(err));
} else {
console.log('getAllAuthTokens successfully, tokenArr: ' + tokenArr);
}
});
} catch (err) {
console.log('getAllAuthTokens exception: ' + JSON.stringify(err));
}
getAllAuthTokens9+
getAllAuthTokens(name: string, owner: string): Promise<Array<AuthTokenInfo>>
Obtains all tokens visible to the invoker for an app account. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
Return value
Type | Description |
---|---|
Promise<Array<AuthTokenInfo>> | Promise used to return the tokens obtained. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or owner. |
12300003 | Account not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getAllAuthTokens('LiSi', 'com.example.accountjsdemo').then((
tokenArr: account_appAccount.AuthTokenInfo[]) => {
console.log('getAllAuthTokens successfully, tokenArr: ' + JSON.stringify(tokenArr));
}).catch((err: BusinessError) => {
console.log('getAllAuthTokens failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('getAllAuthTokens exception: ' + JSON.stringify(err));
}
getAuthList9+
getAuthList(name: string, authType: string, callback: AsyncCallback<Array<string>>): void
Obtains the authorization list of the specified authentication type for an app account. The authorization list contains all authorized bundles. The token authorization list is set by setAuthTokenVisibility. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
callback | AsyncCallback<Array<string>> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is a list of authorized bundles obtained. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or authType. |
12300003 | Account not found. |
12300107 | AuthType not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getAuthList('LiSi', 'getSocialData', (err: BusinessError, authList: string[]) => {
if (err) {
console.log('getAuthList failed, error: ' + JSON.stringify(err));
} else {
console.log('getAuthList successfully, authList: ' + authList);
}
});
} catch (err) {
console.log('getAuthList exception: ' + JSON.stringify(err));
}
getAuthList9+
getAuthList(name: string, authType: string): Promise<Array<string>>
Obtains the authorization list of the specified authentication type for an app account. The authorization list contains all authorized bundles. The token authorization list is set by setAuthTokenVisibility. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
Return value
Type | Description |
---|---|
Promise<Array<string>> | Promise used to return a list of authorized bundles. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or authType. |
12300003 | Account not found. |
12300107 | AuthType not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.getAuthList('LiSi', 'getSocialData').then((authList: string[]) => {
console.log('getAuthList successfully, authList: ' + authList);
}).catch((err: BusinessError) => {
console.log('getAuthList failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('getAuthList exception: ' + JSON.stringify(err));
}
getAuthCallback9+
getAuthCallback(sessionId: string, callback: AsyncCallback<AuthCallback>): void
Obtains the authenticator callback for an authentication session. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
sessionId | string | Yes | ID of the authentication session. |
callback | AsyncCallback<AuthCallback> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is the authenticator callback object obtained. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid sessionId. |
12300108 | Session not found. |
Example
import { BusinessError } from '@ohos.base';
import UIAbility from '@ohos.app.ability.UIAbility';
import Want from '@ohos.app.ability.Want';
import AbilityConstant from '@ohos.app.ability.AbilityConstant';
export default class EntryAbility extends UIAbility {
onCreate(want: Want, param: AbilityConstant.LaunchParam) { // Ability lifecycle function.
let sessionId: string = want.parameters![account_appAccount.Constants.KEY_SESSION_ID] as string;
try {
appAccountManager.getAuthCallback(sessionId, (err: BusinessError, callback: account_appAccount.AuthCallback) => {
if (err != null) {
console.log('getAuthCallback err: ' + JSON.stringify(err));
return;
}
let result: account_appAccount.AuthResult = {
account: {
name: 'Lisi',
owner: 'com.example.accountjsdemo',
},
tokenInfo: {
token: 'xxxxxx',
authType: 'getSocialData'
}
};
callback.onResult(0, result);
});
} catch (err) {
console.log('getAuthCallback exception: ' + JSON.stringify(err));
}
}
}
getAuthCallback9+
getAuthCallback(sessionId: string): Promise<AuthCallback>
Obtains the authenticator callback for an authentication session. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
sessionId | string | Yes | ID of the authentication session. |
Return value
Type | Description |
---|---|
Promise<AuthCallback> | Promise used to return the authenticator callback obtained. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid sessionId. |
12300108 | Session not found. |
Example
import { BusinessError } from '@ohos.base';
import UIAbility from '@ohos.app.ability.UIAbility';
import Want from '@ohos.app.ability.Want';
import AbilityConstant from '@ohos.app.ability.AbilityConstant';
export default class EntryAbility extends UIAbility {
onCreate(want: Want, param: AbilityConstant.LaunchParam) { // Ability lifecycle function.
let sessionId: string = want.parameters![account_appAccount.Constants.KEY_SESSION_ID] as string;
try {
appAccountManager.getAuthCallback(sessionId).then((callback: account_appAccount.AuthCallback) => {
let result: account_appAccount.AuthResult = {
account: {
name: 'Lisi',
owner: 'com.example.accountjsdemo',
},
tokenInfo: {
token: 'xxxxxx',
authType: 'getSocialData'
}
};
callback.onResult(0, result);
}).catch((err: BusinessError) => {
console.log('getAuthCallback err: ' + JSON.stringify(err));
});
} catch (err) {
console.log('getAuthCallback exception: ' + JSON.stringify(err));
}
}
}
queryAuthenticatorInfo9+
queryAuthenticatorInfo(owner: string, callback: AsyncCallback<AuthenticatorInfo>): void
Obtains the authenticator information of an app. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Bundle name of the app. |
callback | AsyncCallback<AuthenticatorInfo> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is the authenticator information obtained. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid owner. |
12300113 | Authenticator service not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.queryAuthenticatorInfo('com.example.accountjsdemo',
(err: BusinessError, info: account_appAccount.AuthenticatorInfo) => {
if (err) {
console.log('queryAuthenticatorInfo failed, error: ' + JSON.stringify(err));
} else {
console.log('queryAuthenticatorInfo successfully, info: ' + JSON.stringify(info));
}
});
} catch (err) {
console.log('queryAuthenticatorInfo exception: ' + JSON.stringify(err));
}
queryAuthenticatorInfo9+
queryAuthenticatorInfo(owner: string): Promise<AuthenticatorInfo>
Obtains the authenticator information of an app. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Bundle name of the app. |
Return value
Type | Description |
---|---|
Promise<AuthenticatorInfo> | Promise used to return the authenticator information obtained. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid owner. |
12300113 | Authenticator service not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.queryAuthenticatorInfo('com.example.accountjsdemo').then((
info: account_appAccount.AuthenticatorInfo) => {
console.log('queryAuthenticatorInfo successfully, info: ' + JSON.stringify(info));
}).catch((err: BusinessError) => {
console.log('queryAuthenticatorInfo failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('queryAuthenticatorInfo exception: ' + JSON.stringify(err));
}
checkAccountLabels9+
checkAccountLabels(name: string, owner: string, labels: Array<string>, callback: AsyncCallback<boolean>): void;
Checks whether an app account has specific labels. This API uses an asynchronous callback to return the result. The labels are checked by the authenticator of the target app.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
labels | Array<string> | Yes | Labels to check. |
callback | AsyncCallback<boolean> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data can be true or false. The value true means the app account has the labels; the value false means the opposite. If the operation fails, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, owner or labels. |
12300003 | Account not found. |
12300010 | Account service busy. |
12300113 | Authenticator service not found. |
12300114 | Authenticator service exception. |
Example
import { BusinessError } from '@ohos.base';
let labels = ['student'];
try {
appAccountManager.checkAccountLabels('zhangsan', 'com.example.accountjsdemo', labels,
(err: BusinessError, hasAllLabels: boolean) => {
if (err) {
console.log('checkAccountLabels failed, error: ' + JSON.stringify(err));
} else {
console.log('checkAccountLabels successfully, hasAllLabels: ' + hasAllLabels);
}
});
} catch (err) {
console.log('checkAccountLabels exception: ' + JSON.stringify(err));
}
checkAccountLabels9+
checkAccountLabels(name: string, owner: string, labels: Array<string>): Promise<boolean>
Checks whether an app account has specific labels. This API uses a promise to return the result. The labels are checked by the authenticator of the target app.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
labels | Array<string> | Yes | Labels to check. |
Return value
Type | Description |
---|---|
Promise<boolean> | Promise used to return the result. The value true means the app account has the labels; the value false means the opposite. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, owner or labels. |
12300003 | Account not found. |
12300010 | Account service busy. |
12300113 | Authenticator service not found. |
12300114 | Authenticator service exception. |
Example
import { BusinessError } from '@ohos.base';
let labels = ['student'];
try {
appAccountManager.checkAccountLabels('zhangsan', 'com.example.accountjsdemo', labels).then((
hasAllLabels: boolean) => {
console.log('checkAccountLabels successfully: ' + hasAllLabels);
}).catch((err: BusinessError) => {
console.log('checkAccountLabels failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('checkAccountLabels exception: ' + JSON.stringify(err));
}
deleteCredential9+
deleteCredential(name: string, credentialType: string, callback: AsyncCallback<void>): void
Deletes the credential of the specified type from an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
credentialType | string | Yes | Type of the credential to delete. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or credentialType. |
12300003 | Account not found. |
12300102 | Credential not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.deleteCredential('zhangsan', 'PIN_SIX', (err: BusinessError) => {
if (err) {
console.log('deleteCredential failed, error: ' + JSON.stringify(err));
} else {
console.log('deleteCredential successfully');
}
});
} catch (err) {
console.log('deleteCredential exception: ' + JSON.stringify(err));
}
deleteCredential9+
deleteCredential(name: string, credentialType: string): Promise<void>
Deletes the credential of the specified type from an app account. This API uses a promise to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
credentialType | string | Yes | Type of the credential to delete. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or credentialType. |
12300003 | Account not found. |
12300102 | Credential not found. |
Example
import { BusinessError } from '@ohos.base';
try {
appAccountManager.deleteCredential('zhangsan', 'PIN_SIX').then(() => {
console.log('deleteCredential successfully');
}).catch((err: BusinessError) => {
console.log('deleteCredential failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('deleteCredential exception: ' + JSON.stringify(err));
}
selectAccountsByOptions9+
selectAccountsByOptions(options: SelectAccountsOptions, callback: AsyncCallback<Array<AppAccountInfo>>): void
Selects the accounts that can be accessed by the invoker based on the options. This API uses an asynchronous callback to return the result. If the options contain label constraints, the authenticator of the target app provides the capability of checking the labels.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
options | SelectAccountsOptions | Yes | Options for selecting accounts. |
callback | AsyncCallback<Array<AppAccountInfo>> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is a list of accounts selected. Otherwise, err is an error object. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid options. |
12300010 | Account service busy. |
12300114 | Authenticator service exception. |
Example
import { BusinessError } from '@ohos.base';
let options: account_appAccount.SelectAccountsOptions = {
allowedOwners: [ 'com.example.accountjsdemo' ],
requiredLabels: [ 'student' ]
};
try {
appAccountManager.selectAccountsByOptions(options,
(err: BusinessError, accountArr: account_appAccount.AppAccountInfo[]) => {
if (err) {
console.log('selectAccountsByOptions failed, error: ' + JSON.stringify(err));
} else {
console.log('selectAccountsByOptions successfully, accountArr: ' + JSON.stringify(accountArr));
}
});
} catch (err) {
console.log('selectAccountsByOptions exception: ' + JSON.stringify(err));
}
selectAccountsByOptions9+
selectAccountsByOptions(options: SelectAccountsOptions): Promise<Array<AppAccountInfo>>
Selects the accounts that can be accessed by the invoker based on the options. This API uses a promise to return the result. If the options contain label constraints, the authenticator of the target app provides the capability of checking the labels.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
options | SelectAccountsOptions | Yes | Options for selecting accounts. |
Return value
Type | Description |
---|---|
Promise<AppAccountInfo> | Promise used to return the accounts selected. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid options. |
12300010 | Account service busy. |
12300114 | Authenticator service exception. |
Example
import { BusinessError } from '@ohos.base';
let options: account_appAccount.SelectAccountsOptions = {
allowedOwners: ['com.example.accountjsdemo']
};
try {
appAccountManager.selectAccountsByOptions(options).then((accountArr: account_appAccount.AppAccountInfo[]) => {
console.log('selectAccountsByOptions successfully, accountArr: ' + JSON.stringify(accountArr));
}).catch((err: BusinessError) => {
console.log('selectAccountsByOptions failed, error: ' + JSON.stringify(err));
});
} catch (err) {
console.log('selectAccountsByOptions exception: ' + JSON.stringify(err));
}
verifyCredential9+
verifyCredential(name: string, owner: string, callback: AuthCallback): void;
Verifies the credential of an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
callback | AuthCallback | Yes | Callback invoked to return the result. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name or owner. |
12300003 | Account not found. |
12300010 | Account service busy. |
12300113 | Authenticator service not found. |
12300114 | Authenticator service exception. |
Example
import Want from '@ohos.app.ability.Want';
try {
appAccountManager.verifyCredential('zhangsan', 'com.example.accountjsdemo', {
onResult: (resultCode: number, result?: account_appAccount.AuthResult) => {
console.log('verifyCredential onResult, resultCode: ' + JSON.stringify(resultCode));
console.log('verifyCredential onResult, result: ' + JSON.stringify(result));
},
onRequestRedirected: (request: Want) => {
console.log('verifyCredential onRequestRedirected, request: ' + JSON.stringify(request));
}
});
} catch (err) {
console.log('verifyCredential err: ' + JSON.stringify(err));
}
verifyCredential9+
verifyCredential(name: string, owner: string, options: VerifyCredentialOptions, callback: AuthCallback): void;
Verifies the user credential. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
options | VerifyCredentialOptions | Yes | Options for verifying the user credential. |
callback | AuthCallback | Yes | Callback invoked to return the result. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid name, owner or options. |
12300003 | Account not found. |
12300010 | Account service busy. |
12300113 | Authenticator service not found. |
12300114 | Authenticator service exception. |
Example
import Want from '@ohos.app.ability.Want';
let options: account_appAccount.VerifyCredentialOptions = {
credentialType: 'pin',
credential: '123456'
};
try {
appAccountManager.verifyCredential('zhangsan', 'com.example.accountjsdemo', options, {
onResult: (resultCode: number, result?: account_appAccount.AuthResult) => {
console.log('verifyCredential onResult, resultCode: ' + JSON.stringify(resultCode));
console.log('verifyCredential onResult, result: ' + JSON.stringify(result));
},
onRequestRedirected: (request: Want) => {
console.log('verifyCredential onRequestRedirected, request: ' + JSON.stringify(request));
}
});
} catch (err) {
console.log('verifyCredential err: ' + JSON.stringify(err));
}
setAuthenticatorProperties9+
setAuthenticatorProperties(owner: string, callback: AuthCallback): void;
Sets the authenticator attributes of an app. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the authenticator. |
callback | AuthCallback | Yes | Callback invoked to return the result. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid owner. |
12300010 | Account service busy. |
12300113 | Authenticator service not found. |
12300114 | Authenticator service exception. |
Example
import Want from '@ohos.app.ability.Want';
try {
appAccountManager.setAuthenticatorProperties('com.example.accountjsdemo', {
onResult: (resultCode: number, result?: account_appAccount.AuthResult) => {
console.log('setAuthenticatorProperties onResult, resultCode: ' + JSON.stringify(resultCode));
console.log('setAuthenticatorProperties onResult, result: ' + JSON.stringify(result));
},
onRequestRedirected: (request: Want) => {
console.log('setAuthenticatorProperties onRequestRedirected, request: ' + JSON.stringify(request));
}
});
} catch (err) {
console.log('setAuthenticatorProperties err: ' + JSON.stringify(err));
}
setAuthenticatorProperties9+
setAuthenticatorProperties(owner: string, options: SetPropertiesOptions, callback: AuthCallback): void;
Set authenticator properties. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the authenticator. |
options | SetPropertiesOptions | Yes | Authenticator properties to set. |
callback | AuthCallback | Yes | Authenticator callback invoked to return the result. |
Error codes
ID | Error Message |
---|---|
12300001 | System service exception. |
12300002 | Invalid owner or options. |
12300010 | Account service busy. |
12300113 | Authenticator service not found. |
12300114 | Authenticator service exception. |
Example
import Want from '@ohos.app.ability.Want';
let options: account_appAccount.SetPropertiesOptions = {
properties: {prop1: 'value1'}
};
try {
appAccountManager.setAuthenticatorProperties('com.example.accountjsdemo', options, {
onResult: (resultCode: number, result?: account_appAccount.AuthResult) => {
console.log('setAuthenticatorProperties onResult, resultCode: ' + JSON.stringify(resultCode));
console.log('setAuthenticatorProperties onResult, result: ' + JSON.stringify(result));
},
onRequestRedirected: (request: Want) => {
console.log('setAuthenticatorProperties onRequestRedirected, request: ' + JSON.stringify(request));
}
});
} catch (err) {
console.log('setAuthenticatorProperties err: ' + JSON.stringify(err));
}
addAccount(deprecated)
addAccount(name: string, callback: AsyncCallback<void>): void
Adds an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use createAccount instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the app account to add. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.addAccount('WangWu', (err: BusinessError) => {
console.log('addAccount err: ' + JSON.stringify(err));
});
addAccount(deprecated)
addAccount(name: string, extraInfo: string, callback: AsyncCallback<void>): void
Adds an app account name and additional information. This API uses an asynchronous callback to return the result.
NOTE This API is supported since API version 7 and deprecated since API version 9. Use createAccount instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
extraInfo | string | Yes | Additional information (information that can be converted to the string type). It cannot contain sensitive information, such as the app account password and token. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.addAccount('LiSi', 'token101', (err: BusinessError) => {
console.log('addAccount err: ' + JSON.stringify(err));
});
addAccount(deprecated)
addAccount(name: string, extraInfo?: string): Promise<void>
Adds an app account name and additional information. This API uses an asynchronous callback to return the result. This API uses a promise to return the result.
NOTE This API is supported since API version 7 and deprecated since API version 9. Use createAccount instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
extraInfo | string | No | Additional information (information that can be converted to the string type). The additional information cannot be sensitive information (such as the password and token) of the app account. By default, no value is passed, which means no additional information needs to be added for the account. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.addAccount('LiSi', 'token101').then(()=> {
console.log('addAccount Success');
}).catch((err: BusinessError) => {
console.log('addAccount err: ' + JSON.stringify(err));
});
addAccountImplicitly(deprecated)
addAccountImplicitly(owner: string, authType: string, options: {[key: string]: any}, callback: AuthenticatorCallback): void
Adds an app account implicitly based on the specified owner. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use createAccountImplicitly instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
authType | string | Yes | Authentication type. The authentication type is customized. |
options | {[key: string]: any} | Yes | Authentication options, which can be set as required. |
callback | AuthenticatorCallback | Yes | Authenticator callback invoked to return the result. |
Example
import { BusinessError } from '@ohos.base';
import Want from '@ohos.app.ability.Want';
import common from '@ohos.app.ability.common';
let context = getContext(this) as common.UIAbilityContext; // UIAbilityContext
function onResultCallback(code: number, result: Record<string, Object>): void {
console.log('resultCode: ' + code);
console.log('result: ' + JSON.stringify(result));
}
function onRequestRedirectedCallback(request: Want): void {
let wantInfo: Want = {
deviceId: '',
bundleName: 'com.example.accountjsdemo',
action: 'ohos.want.action.viewData',
entities: ['entity.system.default'],
}
context.startAbility(wantInfo).then(() => {
console.log('startAbility successfully');
}).catch((err: BusinessError) => {
console.log('startAbility err: ' + JSON.stringify(err));
})
}
appAccountManager.addAccountImplicitly('com.example.accountjsdemo', 'getSocialData', {}, {
onResult: onResultCallback,
onRequestRedirected: onRequestRedirectedCallback
});
deleteAccount(deprecated)
deleteAccount(name: string, callback: AsyncCallback<void>): void
Deletes an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use removeAccount instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the app account to delete. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.deleteAccount('ZhaoLiu', (err: BusinessError) => {
console.log('deleteAccount err: ' + JSON.stringify(err));
});
deleteAccount(deprecated)
deleteAccount(name: string): Promise<void>
Deletes an app account. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use removeAccount instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the app account to delete. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.deleteAccount('ZhaoLiu').then(() => {
console.log('deleteAccount Success');
}).catch((err: BusinessError) => {
console.log('deleteAccount err: ' + JSON.stringify(err));
});
disableAppAccess(deprecated)
disableAppAccess(name: string, bundleName: string, callback: AsyncCallback<void>): void
Disables an app account from accessing an app. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use setAppAccess instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
bundleName | string | Yes | Bundle name of the app. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.disableAppAccess('ZhangSan', 'com.example.accountjsdemo', (err: BusinessError) => {
console.log('disableAppAccess err: ' + JSON.stringify(err));
});
disableAppAccess(deprecated)
disableAppAccess(name: string, bundleName: string): Promise<void>
Disables an app account from accessing an app. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use setAppAccess instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
bundleName | string | Yes | Bundle name of the app. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.disableAppAccess('ZhangSan', 'com.example.accountjsdemo').then(() => {
console.log('disableAppAccess Success');
}).catch((err: BusinessError) => {
console.log('disableAppAccess err: ' + JSON.stringify(err));
});
enableAppAccess(deprecated)
enableAppAccess(name: string, bundleName: string, callback: AsyncCallback<void>): void
Enables an app account to access an app. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use setAppAccess instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
bundleName | string | Yes | Bundle name of the app. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.enableAppAccess('ZhangSan', 'com.example.accountjsdemo', (err: BusinessError) => {
console.log('enableAppAccess: ' + JSON.stringify(err));
});
enableAppAccess(deprecated)
enableAppAccess(name: string, bundleName: string): Promise<void>
Enables an app account to access an app. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use setAppAccess instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
bundleName | string | Yes | Bundle name of the app. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.enableAppAccess('ZhangSan', 'com.example.accountjsdemo').then(() => {
console.log('enableAppAccess Success');
}).catch((err: BusinessError) => {
console.log('enableAppAccess err: ' + JSON.stringify(err));
});
checkAppAccountSyncEnable(deprecated)
checkAppAccountSyncEnable(name: string, callback: AsyncCallback<boolean>): void
Checks whether data synchronization is enabled for an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use checkDataSyncEnabled instead.
Required permissions: ohos.permission.DISTRIBUTED_DATASYNC
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
callback | AsyncCallback<boolean> | Yes | Callback invoked to return the result. The value true means data synchronization is enabled for the app account; the value false means the opposite. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.checkAppAccountSyncEnable('ZhangSan', (err: BusinessError, result: boolean) => {
console.log('checkAppAccountSyncEnable err: ' + JSON.stringify(err));
console.log('checkAppAccountSyncEnable result: ' + result);
});
checkAppAccountSyncEnable(deprecated)
checkAppAccountSyncEnable(name: string): Promise<boolean>
Checks whether data synchronization is enabled for an app account. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use checkDataSyncEnabled instead.
Required permissions: ohos.permission.DISTRIBUTED_DATASYNC
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
Return value
Type | Description |
---|---|
Promise<boolean> | Promise used to return the result. The value true means data synchronization is enabled for the app account; the value false means the opposite. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.checkAppAccountSyncEnable('ZhangSan').then((data: boolean) => {
console.log('checkAppAccountSyncEnable, result: ' + data);
}).catch((err: BusinessError) => {
console.log('checkAppAccountSyncEnable err: ' + JSON.stringify(err));
});
setAccountCredential(deprecated)
setAccountCredential(name: string, credentialType: string, credential: string,callback: AsyncCallback<void>): void
Set credentials for an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use setCredential instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
credentialType | string | Yes | Type of the credential to set. |
credential | string | Yes | Credential value. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.setAccountCredential('ZhangSan', 'credentialType001', 'credential001', (err: BusinessError) => {
console.log('setAccountCredential err: ' + JSON.stringify(err));
});
setAccountCredential(deprecated)
setAccountCredential(name: string, credentialType: string, credential: string): Promise<void>
Set credentials for an app account. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use setCredential instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
credentialType | string | Yes | Type of the credential to set. |
credential | string | Yes | Credential value. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.setAccountCredential('ZhangSan', 'credentialType001', 'credential001').then(() => {
console.log('setAccountCredential Success');
}).catch((err: BusinessError) => {
console.log('setAccountCredential err: ' + JSON.stringify(err));
});
setAccountExtraInfo(deprecated)
setAccountExtraInfo(name: string, extraInfo: string, callback: AsyncCallback<void>): void
Sets additional information for an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use setCustomData instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
extraInfo | string | Yes | Additional information (information that can be converted to the string type). It cannot contain sensitive information, such as the app account password and token. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.setAccountExtraInfo('ZhangSan', 'Tk002', (err: BusinessError) => {
console.log('setAccountExtraInfo err: ' + JSON.stringify(err));
});
setAccountExtraInfo(deprecated)
setAccountExtraInfo(name: string, extraInfo: string): Promise<void>
Sets additional information for an app account. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use setCustomData instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
extraInfo | string | Yes | Additional information (information that can be converted to the string type). It cannot contain sensitive information, such as the app account password and token. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.setAccountExtraInfo('ZhangSan', 'Tk002').then(() => {
console.log('setAccountExtraInfo Success');
}).catch((err: BusinessError) => {
console.log('setAccountExtraInfo err: ' + JSON.stringify(err));
});
setAppAccountSyncEnable(deprecated)
setAppAccountSyncEnable(name: string, isEnable: boolean, callback: AsyncCallback<void>): void
Sets data synchronization for an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use setDataSyncEnabled instead.
Required permissions: ohos.permission.DISTRIBUTED_DATASYNC
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
isEnable | boolean | Yes | Whether to enable data synchronization. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.setAppAccountSyncEnable('ZhangSan', true, (err: BusinessError) => {
console.log('setAppAccountSyncEnable err: ' + JSON.stringify(err));
});
setAppAccountSyncEnable(deprecated)
setAppAccountSyncEnable(name: string, isEnable: boolean): Promise<void>
Sets data synchronization for an app account. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use setDataSyncEnabled instead.
Required permissions: ohos.permission.DISTRIBUTED_DATASYNC
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
isEnable | boolean | Yes | Whether to enable data synchronization. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager .setAppAccountSyncEnable('ZhangSan', true).then(() => {
console.log('setAppAccountSyncEnable Success');
}).catch((err: BusinessError) => {
console.log('setAppAccountSyncEnable err: ' + JSON.stringify(err));
});
setAssociatedData(deprecated)
setAssociatedData(name: string, key: string, value: string, callback: AsyncCallback<void>): void
Sets data to be associated with an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use setCustomData instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
key | string | Yes | Key of the data to set. |
value | string | Yes | Value of the data to set. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.setAssociatedData('ZhangSan', 'k001', 'v001', (err: BusinessError) => {
console.log('setAssociatedData err: ' + JSON.stringify(err));
});
setAssociatedData(deprecated)
setAssociatedData(name: string, key: string, value: string): Promise<void>
Sets data to be associated with an app account. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use setCustomData instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
key | string | Yes | Key of the data to set. |
value | string | Yes | Value of the data to set. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.setAssociatedData('ZhangSan', 'k001', 'v001').then(() => {
console.log('setAssociatedData Success');
}).catch((err: BusinessError) => {
console.log('setAssociatedData err: ' + JSON.stringify(err));
});
getAllAccessibleAccounts(deprecated)
getAllAccessibleAccounts(callback: AsyncCallback<Array<AppAccountInfo>>): void
Obtains information about all accessible app accounts. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use getAllAccounts instead.
Required permissions: ohos.permission.GET_ALL_APP_ACCOUNTS
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
callback | AsyncCallback<Array<AppAccountInfo>> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is a list of accessible app accounts. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getAllAccessibleAccounts((err: BusinessError, data: account_appAccount.AppAccountInfo[])=>{
console.debug('getAllAccessibleAccounts err: ' + JSON.stringify(err));
console.debug('getAllAccessibleAccounts data: ' + JSON.stringify(data));
});
getAllAccessibleAccounts(deprecated)
getAllAccessibleAccounts(): Promise<Array<AppAccountInfo>>
Obtains information about all accessible app accounts. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use getAllAccounts instead.
Required permissions: ohos.permission.GET_ALL_APP_ACCOUNTS
System capability: SystemCapability.Account.AppAccount
Return value
Type | Description |
---|---|
Promise<Array<AppAccountInfo>> | Promise used to return the accessible app accounts. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getAllAccessibleAccounts().then((data: account_appAccount.AppAccountInfo[]) => {
console.log('getAllAccessibleAccounts: ' + data);
}).catch((err: BusinessError) => {
console.log('getAllAccessibleAccounts err: ' + JSON.stringify(err));
});
getAllAccounts(deprecated)
getAllAccounts(owner: string, callback: AsyncCallback<Array<AppAccountInfo>>): void
Obtains the app accounts that can be accessed by the invoker based on the app account owner. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use getAccountsByOwner instead.
Required permissions: ohos.permission.GET_ALL_APP_ACCOUNTS
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
callback | AsyncCallback<Array<AppAccountInfo>> | Yes | Callback invoked to return information about all accessible app accounts. |
Example
import { BusinessError } from '@ohos.base';
const selfBundle = 'com.example.actsgetallaaccounts';
appAccountManager.getAllAccounts(selfBundle, (err: BusinessError, data: account_appAccount.AppAccountInfo[])=>{
console.debug('getAllAccounts err: ' + JSON.stringify(err));
console.debug('getAllAccounts data:' + JSON.stringify(data));
});
getAllAccounts(deprecated)
getAllAccounts(owner: string): Promise<Array<AppAccountInfo>>
Obtains the app accounts that can be accessed by the invoker based on the app account owner. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use getAccountsByOwner instead.
Required permissions: ohos.permission.GET_ALL_APP_ACCOUNTS (available only to system applications)
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
Return value
Type | Description |
---|---|
Promise<Array<AppAccountInfo>> | Promise use to return the app accounts that can be accessed by the invoker. |
Example
import { BusinessError } from '@ohos.base';
const selfBundle = 'com.example.actsgetallaaccounts';
appAccountManager.getAllAccounts(selfBundle).then((data: account_appAccount.AppAccountInfo[]) => {
console.log('getAllAccounts: ' + data);
}).catch((err: BusinessError) => {
console.log('getAllAccounts err: ' + JSON.stringify(err));
});
getAccountCredential(deprecated)
getAccountCredential(name: string, credentialType: string, callback: AsyncCallback<string>): void
Obtains the credential of an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use getCredential instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
credentialType | string | Yes | Type of the credential to obtain. |
callback | AsyncCallback<string> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is the credential obtained. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getAccountCredential('ZhangSan', 'credentialType001', (err: BusinessError, result: string) => {
console.log('getAccountCredential err: ' + JSON.stringify(err));
console.log('getAccountCredential result: ' + result);
});
getAccountCredential(deprecated)
getAccountCredential(name: string, credentialType: string): Promise<string>
Obtains the credential of an app account. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use getCredential instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
credentialType | string | Yes | Type of the credential to obtain. |
Return value
Type | Description |
---|---|
Promise<string> | Promise used to return the credential obtained. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getAccountCredential('ZhangSan', 'credentialType001').then((data: string) => {
console.log('getAccountCredential, result: ' + data);
}).catch((err: BusinessError) => {
console.log('getAccountCredential err: ' + JSON.stringify(err));
});
getAccountExtraInfo(deprecated)
getAccountExtraInfo(name: string, callback: AsyncCallback<string>): void
Obtains additional information of an app account. Additional information refers to other information that can be converted to the string type. It cannot contain sensitive information, such as the app account password and token. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use getCustomData instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
callback | AsyncCallback<string> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is the additional information obtained. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getAccountExtraInfo('ZhangSan', (err: BusinessError, result: string) => {
console.log('getAccountExtraInfo err: ' + JSON.stringify(err));
console.log('getAccountExtraInfo result: ' + result);
});
getAccountExtraInfo(deprecated)
getAccountExtraInfo(name: string): Promise<string>
Obtains additional information of an app account. Additional information refers to other information that can be converted to the string type. It cannot contain sensitive information, such as the app account password and token. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use getCustomData instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
Return value
Type | Description |
---|---|
Promise<string> | Promise used to return the additional information obtained. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getAccountExtraInfo('ZhangSan').then((data: string) => {
console.log('getAccountExtraInfo, result: ' + data);
}).catch((err: BusinessError) => {
console.log('getAccountExtraInfo err: ' + JSON.stringify(err));
});
getAssociatedData(deprecated)
getAssociatedData(name: string, key: string, callback: AsyncCallback<string>): void
Obtains data associated with an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use getCustomData instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
key | string | Yes | Key of the data to obtain. |
callback | AsyncCallback<string> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is the data obtained. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getAssociatedData('ZhangSan', 'k001', (err: BusinessError, result: string) => {
console.log('getAssociatedData err: ' + JSON.stringify(err));
console.log('getAssociatedData result: ' + result);
});
getAssociatedData(deprecated)
getAssociatedData(name: string, key: string): Promise<string>
Obtains data associated with an app account. This API uses a promise to return the result.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use getCustomData instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
key | string | Yes | Key of the data to obtain. |
Return value
Type | Description |
---|---|
Promise<string> | Promise used to return the data obtained. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getAssociatedData('ZhangSan', 'k001').then((data: string) => {
console.log('getAssociatedData: ' + data);
}).catch((err: BusinessError) => {
console.log('getAssociatedData err: ' + JSON.stringify(err));
});
on('change')(deprecated)
on(type: 'change', owners: Array<string>, callback: Callback<Array<AppAccountInfo>>): void
Subscribes to account information changes of apps.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use on('accountChange') instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
type | 'change' | Yes | Event type to subscribe to. The value is 'change'. An event will be reported when the account information changes. |
owners | Array<string> | Yes | App bundle names of the account. |
callback | Callback<Array<AppAccountInfo>> | Yes | Callback registered to return the list of changed app accounts. |
Example
function changeOnCallback(data: account_appAccount.AppAccountInfo[]): void {
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
Unsubscribes from account information changes.
NOTE
This API is supported since API version 7 and deprecated since API version 9. Use off('accountChange') instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
type | 'change' | Yes | Event type to unsubscribe from. The value is 'change', which indicates the account change event. |
callback | Callback<Array<AppAccountInfo>> | No | Callback to unregister. By default, no value is passed, which means to unregister all callbacks for the specified event. |
Example
function changeOnCallback(data: account_appAccount.AppAccountInfo[]): void {
console.debug('receive change data: ' + JSON.stringify(data));
appAccountManager.off('change', () => {
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
Authenticates an app account with customized options. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use auth instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
authType | string | Yes | Authentication type. |
options | {[key: string]: any} | Yes | Options for the authentication. |
callback | AuthenticatorCallback | Yes | Callback invoked to return the result. |
Example
import { BusinessError } from '@ohos.base';
import Want from '@ohos.app.ability.Want';
import common from '@ohos.app.ability.common';
let context = getContext(this) as common.UIAbilityContext; // UIAbilityContext
function onResultCallback(code: number, result: Record<string, Object>): void {
console.log('resultCode: ' + code);
console.log('result: ' + JSON.stringify(result));
}
function onRequestRedirectedCallback(request: Want): void {
let wantInfo: Want = {
deviceId: '',
bundleName: 'com.example.accountjsdemo',
action: 'ohos.want.action.viewData',
entities: ['entity.system.default'],
}
context.startAbility(wantInfo).then(() => {
console.log('startAbility successfully');
}).catch((err: BusinessError) => {
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
Obtains the authorization token of the specified authentication type for an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use getAuthToken instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
authType | string | Yes | Authentication type. |
callback | AsyncCallback<string> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is the authorization token value obtained. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getOAuthToken('LiSi', 'com.example.accountjsdemo', 'getSocialData',
(err: BusinessError, data: string) => {
console.log('getOAuthToken err: ' + JSON.stringify(err));
console.log('getOAuthToken token: ' + data);
});
getOAuthToken(deprecated)
getOAuthToken(name: string, owner: string, authType: string): Promise<string>
Obtains the authorization token of the specified authentication type for an app account. This API uses a promise to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use getAuthToken instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
authType | string | Yes | Authentication type. |
Return value
Type | Description |
---|---|
Promise<string> | Promise used to return the result. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getOAuthToken('LiSi', 'com.example.accountjsdemo', 'getSocialData').then((data: string) => {
console.log('getOAuthToken token: ' + data);
}).catch((err: BusinessError) => {
console.log('getOAuthToken err: ' + JSON.stringify(err));
});
setOAuthToken(deprecated)
setOAuthToken(name: string, authType: string, token: string, callback: AsyncCallback<void>): void
Sets an authorization token of the specific authentication type for an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use setAuthToken instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
token | string | Yes | Token to set. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.setOAuthToken('LiSi', 'getSocialData', 'xxxx', (err: BusinessError) => {
console.log('setOAuthToken err: ' + JSON.stringify(err));
});
setOAuthToken(deprecated)
setOAuthToken(name: string, authType: string, token: string): Promise<void>
Sets an authorization token of the specific authentication type for an app account. This API uses a promise to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use setAuthToken instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
token | string | Yes | Authorization token to set. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.setOAuthToken('LiSi', 'getSocialData', 'xxxx').then(() => {
console.log('setOAuthToken successfully');
}).catch((err: BusinessError) => {
console.log('setOAuthToken err: ' + JSON.stringify(err));
});
deleteOAuthToken(deprecated)
deleteOAuthToken(name: string, owner: string, authType: string, token: string, callback: AsyncCallback<void>): void
Deletes the authorization token of the specified authentication type for an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use deleteAuthToken instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
authType | string | Yes | Authentication type. |
token | string | Yes | Authorization token to delete. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.deleteOAuthToken('LiSi', 'com.example.accountjsdemo', 'getSocialData', 'xxxxx',
(err: BusinessError) => {
console.log('deleteOAuthToken err: ' + JSON.stringify(err));
});
deleteOAuthToken(deprecated)
deleteOAuthToken(name: string, owner: string, authType: string, token: string): Promise<void>
Deletes the authorization token of the specified authentication type for an app account. This API uses a promise to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use deleteAuthToken instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
authType | string | Yes | Authentication type. |
token | string | Yes | Authorization token to delete. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.deleteOAuthToken('LiSi', 'com.example.accountjsdemo', 'getSocialData', 'xxxxx').then(() => {
console.log('deleteOAuthToken successfully');
}).catch((err: BusinessError) => {
console.log('deleteOAuthToken err: ' + JSON.stringify(err));
});
setOAuthTokenVisibility(deprecated)
setOAuthTokenVisibility(name: string, authType: string, bundleName: string, isVisible: boolean, callback: AsyncCallback<void>): void
Sets the visibility of an authorization token to an app. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use setAuthTokenVisibility instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
bundleName | string | Yes | Bundle name of the app. |
isVisible | boolean | Yes | Whether the authorization token is visible to the app. The value true means the authorization token is visible to the app; the value false means the opposite. |
callback | AsyncCallback<void> | Yes | Callback invoked to return the result. If the operation is successful, err is null. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.setOAuthTokenVisibility('LiSi', 'getSocialData', 'com.example.accountjsdemo', true,
(err: BusinessError) => {
console.log('setOAuthTokenVisibility err: ' + JSON.stringify(err));
});
setOAuthTokenVisibility(deprecated)
setOAuthTokenVisibility(name: string, authType: string, bundleName: string, isVisible: boolean): Promise<void>
Sets the visibility of an authorization token to an app. This API uses a promise to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use setAuthTokenVisibility instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
bundleName | string | Yes | Bundle name of the app. |
isVisible | boolean | Yes | Whether the authorization token is visible to the app. The value true means the authorization token is visible to the app; the value false means the opposite. |
Return value
Type | Description |
---|---|
Promise<void> | Promise that returns no value. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.setOAuthTokenVisibility('LiSi', 'getSocialData', 'com.example.accountjsdemo', true).then(() => {
console.log('setOAuthTokenVisibility successfully');
}).catch((err: BusinessError) => {
console.log('setOAuthTokenVisibility err: ' + JSON.stringify(err));
});
checkOAuthTokenVisibility(deprecated)
checkOAuthTokenVisibility(name: string, authType: string, bundleName: string, callback: AsyncCallback<boolean>): void
Checks the visibility of an authorization token of the specified authentication type to an app. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use checkAuthTokenVisibility instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
bundleName | string | Yes | Bundle name of the app. |
callback | AsyncCallback<boolean> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data can be true (the authorization token is visible to the app) or false (the authorization token is not visible to the app). If the operation fails, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.checkOAuthTokenVisibility('LiSi', 'getSocialData', 'com.example.accountjsdemo',
(err: BusinessError, data: boolean) => {
console.log('checkOAuthTokenVisibility err: ' + JSON.stringify(err));
console.log('checkOAuthTokenVisibility isVisible: ' + data);
});
checkOAuthTokenVisibility(deprecated)
checkOAuthTokenVisibility(name: string, authType: string, bundleName: string): Promise<boolean>
Checks the visibility of an authorization token of the specified authentication type to an app. This API uses a promise to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use checkAuthTokenVisibility instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
bundleName | string | Yes | Bundle name of the app. |
Return value
Type | Description |
---|---|
Promise<boolean> | Promise used to return the result. The value true means the authorization token is visible to the app; the value false means the opposite. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.checkOAuthTokenVisibility('LiSi', 'getSocialData', 'com.example.accountjsdemo').then((
data: boolean) => {
console.log('checkOAuthTokenVisibility isVisible: ' + data);
}).catch((err: BusinessError) => {
console.log('checkOAuthTokenVisibility err: ' + JSON.stringify(err));
});
getAllOAuthTokens(deprecated)
getAllOAuthTokens(name: string, owner: string, callback: AsyncCallback<Array<OAuthTokenInfo>>): void
Obtains all tokens visible to the invoker for an app account. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use getAllAuthTokens instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
callback | AsyncCallback<Array<OAuthTokenInfo>> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is a list of all tokens visible to the invoker. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getAllOAuthTokens('LiSi', 'com.example.accountjsdemo',
(err: BusinessError, data: account_appAccount.OAuthTokenInfo[]) => {
console.log('getAllOAuthTokens err: ' + JSON.stringify(err));
console.log('getAllOAuthTokens data: ' + JSON.stringify(data));
});
getAllOAuthTokens(deprecated)
getAllOAuthTokens(name: string, owner: string): Promise<Array<OAuthTokenInfo>>
Obtains all tokens visible to the invoker for an app account. This API uses a promise to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use getAllAuthTokens instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
Return value
Type | Description |
---|---|
Promise<Array< OAuthTokenInfo>> | Promise used to return the tokens obtained. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getAllOAuthTokens('LiSi', 'com.example.accountjsdemo').then((
data: account_appAccount.OAuthTokenInfo[]) => {
console.log('getAllOAuthTokens data: ' + JSON.stringify(data));
}).catch((err: BusinessError) => {
console.log('getAllOAuthTokens err: ' + JSON.stringify(err));
});
getOAuthList(deprecated)
getOAuthList(name: string, authType: string, callback: AsyncCallback<Array<string>>): void
Obtains the authorization list of the specified authentication type for an app account. The authorization list contains all authorized bundles. The token authorization list is set by setOAuthTokenVisibility(#setoauthtokenvisibilitydeprecated). This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use getAuthList instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
callback | AsyncCallback<Array<string>> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is a list of authorized bundles obtained. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getOAuthList('LiSi', 'getSocialData', (err: BusinessError, data: string[]) => {
console.log('getOAuthList err: ' + JSON.stringify(err));
console.log('getOAuthList data: ' + JSON.stringify(data));
});
getOAuthList(deprecated)
getOAuthList(name: string, authType: string): Promise<Array<string>>
Obtains the authorization list of the specified authentication type for an app account. The authorization list contains all authorized bundles. The token authorization list is set by setOAuthTokenVisibility(#setoauthtokenvisibilitydeprecated). This API uses a promise to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use getAuthList instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
Return value
Type | Description |
---|---|
Promise<Array<string>> | Promise used to return a list of authorized bundles. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getOAuthList('LiSi', 'getSocialData').then((data: string[]) => {
console.log('getOAuthList data: ' + JSON.stringify(data));
}).catch((err: BusinessError) => {
console.log('getOAuthList err: ' + JSON.stringify(err));
});
getAuthenticatorCallback(deprecated)
getAuthenticatorCallback(sessionId: string, callback: AsyncCallback<AuthenticatorCallback>): void
Obtains the authenticator callback for an authentication session. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use getAuthCallback instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
sessionId | string | Yes | ID of the authentication session. |
callback | AsyncCallback<AuthenticatorCallback> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is the authenticator callback obtained. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
import UIAbility from '@ohos.app.ability.UIAbility';
import Want from '@ohos.app.ability.Want';
import AbilityConstant from '@ohos.app.ability.AbilityConstant';
export default class EntryAbility extends UIAbility {
onCreate(want: Want, param: AbilityConstant.LaunchParam) { // Ability lifecycle function.
let sessionId: string = want.parameters![account_appAccount.Constants.KEY_SESSION_ID] as string;
appAccountManager.getAuthenticatorCallback(sessionId,
(err: BusinessError, callback: account_appAccount.AuthenticatorCallback) => {
if (err.code != account_appAccount.ResultCode.SUCCESS) {
console.log('getAuthenticatorCallback err: ' + JSON.stringify(err));
return;
}
callback.onResult(account_appAccount.ResultCode.SUCCESS, {
name: 'LiSi',
owner: 'com.example.accountjsdemo',
authType: 'getSocialData',
token: 'xxxxxx'}
);
});
}
}
getAuthenticatorCallback(deprecated)
getAuthenticatorCallback(sessionId: string): Promise<AuthenticatorCallback>
Obtains the authenticator callback for an authentication session. This API uses a promise to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use getAuthCallback instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
sessionId | string | Yes | ID of the authentication session. |
Return value
Type | Description |
---|---|
Promise<AuthenticatorCallback> | Promise used to return the authenticator callback obtained. |
Example
import { BusinessError } from '@ohos.base';
import UIAbility from '@ohos.app.ability.UIAbility';
import Want from '@ohos.app.ability.Want';
import AbilityConstant from '@ohos.app.ability.AbilityConstant';
export default class EntryAbility extends UIAbility {
onCreate(want: Want, param: AbilityConstant.LaunchParam) { // Ability lifecycle function.
let sessionId: string = want.parameters![account_appAccount.Constants.KEY_SESSION_ID] as string;
appAccountManager.getAuthenticatorCallback(sessionId).then((
callback: account_appAccount.AuthenticatorCallback) => {
callback.onResult(account_appAccount.ResultCode.SUCCESS, {
name: 'LiSi',
owner: 'com.example.accountjsdemo',
authType: 'getSocialData',
token: 'xxxxxx'}
);
}).catch((err: BusinessError) => {
console.log('getAuthenticatorCallback err: ' + JSON.stringify(err));
});
}
}
getAuthenticatorInfo(deprecated)
getAuthenticatorInfo(owner: string, callback: AsyncCallback<AuthenticatorInfo>): void
Obtains the authenticator information of an app. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use queryAuthenticatorInfo instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
callback | AsyncCallback<AuthenticatorInfo> | Yes | Callback invoked to return the result. If the operation is successful, err is null and data is the authenticator information obtained. Otherwise, err is an error object. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getAuthenticatorInfo('com.example.accountjsdemo',
(err: BusinessError, data: account_appAccount.AuthenticatorInfo) => {
console.log('getAuthenticatorInfo err: ' + JSON.stringify(err));
console.log('getAuthenticatorInfo data: ' + JSON.stringify(data));
});
getAuthenticatorInfo(deprecated)
getAuthenticatorInfo(owner: string): Promise<AuthenticatorInfo>
Obtains the authenticator information of an app. This API uses a promise to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use queryAuthenticatorInfo instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
Return value
Type | Description |
---|---|
Promise<AuthenticatorInfo> | Promise used to return the authenticator information obtained. |
Example
import { BusinessError } from '@ohos.base';
appAccountManager.getAuthenticatorInfo('com.example.accountjsdemo').then((
data: account_appAccount.AuthenticatorInfo) => {
console.log('getAuthenticatorInfo: ' + JSON.stringify(data));
}).catch((err: BusinessError) => {
console.log('getAuthenticatorInfo err: ' + JSON.stringify(err));
});
AppAccountInfo
Defines app account information.
System capability: SystemCapability.Account.AppAccount
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the app account. The value is the bundle name of the app. |
name | string | Yes | Name of the target app account. |
AuthTokenInfo9+
Defines authorization token information.
System capability: SystemCapability.Account.AppAccount
Name | Type | Mandatory | Description |
---|---|---|---|
authType9+ | string | Yes | Authentication type. |
token9+ | string | Yes | Value of the authorization token. |
account9+ | AppAccountInfo | No | Information about the account to which the token belongs. By default, no value is passed. |
OAuthTokenInfo(deprecated)
Defines authorization token information.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use AuthTokenInfo instead.
System capability: SystemCapability.Account.AppAccount
Name | Type | Mandatory | Description |
---|---|---|---|
authType | string | Yes | Authentication type. |
token | string | Yes | Value of the authorization token. |
account9+ | AppAccountInfo | No | Information about the account to which the token belongs. By default, no value is passed. |
AuthenticatorInfo8+
Defines OAuth authenticator information.
System capability: SystemCapability.Account.AppAccount
Name | Type | Mandatory | Description |
---|---|---|---|
owner | string | Yes | Owner of the authenticator. The value is the bundle name of the app. |
iconId | number | Yes | ID of the authenticator icon. |
labelId | number | Yes | ID of the authenticator label. |
AuthResult9+
Defines the authentication result.
System capability: SystemCapability.Account.AppAccount
Name | Type | Mandatory | Description |
---|---|---|---|
account | AppAccountInfo | No | Information about the account to which the token belongs. By default, no value is passed. |
tokenInfo | AuthTokenInfo | No | Token information. By default, no value is passed. |
CreateAccountOptions9+
Defines the options for creating an app account.
System capability: SystemCapability.Account.AppAccount
Name | Type | Mandatory | Description |
---|---|---|---|
customData | {[key: string]: string} | No | Custom data. By default, no value is passed. |
CreateAccountImplicitlyOptions9+
Defines the options for implicitly creating an app account.
System capability: SystemCapability.Account.AppAccount
Name | Type | Mandatory | Description |
---|---|---|---|
requiredLabels | Array<string> | No | Required labels. By default, no value is passed. |
authType | string | No | Authentication type. By default, no value is passed. |
parameters | {[key: string]: Object} | No | Custom parameter object. By default, no value is passed. |
SelectAccountsOptions9+
Defines the options for selecting accounts.
System capability: SystemCapability.Account.AppAccount
Name | Type | Mandatory | Description |
---|---|---|---|
allowedAccounts | Array<AppAccountInfo> | No | Array of allowed accounts. By default, no value is passed. |
allowedOwners | Array<string> | No | Array of the owners of the allowed accounts. By default, no value is passed. |
requiredLabels | Array<string> | No | Labels of the authenticator. By default, no value is passed. |
VerifyCredentialOptions9+
Represents the options for verifying the user credential.
System capability: SystemCapability.Account.AppAccount
Name | Type | Mandatory | Description |
---|---|---|---|
credentialType | string | No | Credential type. By default, no value is passed. |
credential | string | No | Credential value. By default, no value is passed. |
parameters | {[key: string]: Object} | No | Custom parameter object. By default, no value is passed. |
SetPropertiesOptions9+
Represents the options for setting authenticator properties.
System capability: SystemCapability.Account.AppAccount
Name | Type | Mandatory | Description |
---|---|---|---|
properties | {[key: string]: Object} | No | Property object. By default, no value is passed. |
parameters | {[key: string]: Object} | No | Custom parameter object. By default, no value is passed. |
Constants8+
Enumerates the constants.
System capability: SystemCapability.Account.AppAccount
Name | Value | Description |
---|---|---|
ACTION_ADD_ACCOUNT_IMPLICITLY(deprecated) | 'addAccountImplicitly' | Operation of adding an account implicitly. |
ACTION_AUTHENTICATE(deprecated) | 'authenticate' | Authentication operation. |
ACTION_CREATE_ACCOUNT_IMPLICITLY9+ | 'createAccountImplicitly' | Operation of creating an account implicitly. |
ACTION_AUTH9+ | 'auth' | Authentication operation. |
ACTION_VERIFY_CREDENTIAL9+ | 'verifyCredential' | Operation of verifying credentials. |
ACTION_SET_AUTHENTICATOR_PROPERTIES9+ | 'setAuthenticatorProperties' | Operation of setting authenticator properties. |
KEY_NAME | 'name' | Name of the app account. |
KEY_OWNER | 'owner' | Owner of the app account. |
KEY_TOKEN | 'token' | Token. |
KEY_ACTION | 'action' | Operation. |
KEY_AUTH_TYPE | 'authType' | Authentication type. |
KEY_SESSION_ID | 'sessionId' | Session ID. |
KEY_CALLER_PID | 'callerPid' | PID of the caller. |
KEY_CALLER_UID | 'callerUid' | UID of the caller. |
KEY_CALLER_BUNDLE_NAME | 'callerBundleName' | Bundle name of the caller. |
KEY_REQUIRED_LABELS9+ | 'requiredLabels' | Required labels. |
KEY_BOOLEAN_RESULT9+ | 'booleanResult' | Return value of the Boolean type. |
ResultCode(deprecated)
Enumerates the result codes.
NOTE
This enum is supported since API version 8 and deprecated since API version 9. For details, see Account Management Error Codes.
System capability: SystemCapability.Account.AppAccount
Name | Value | Description |
---|---|---|
SUCCESS | 0 | The operation is successful. |
ERROR_ACCOUNT_NOT_EXIST | 10001 | The app account does not exist. |
ERROR_APP_ACCOUNT_SERVICE_EXCEPTION | 10002 | The AppAccountManager service is abnormal. |
ERROR_INVALID_PASSWORD | 10003 | The password is invalid. |
ERROR_INVALID_REQUEST | 10004 | The request is invalid. |
ERROR_INVALID_RESPONSE | 10005 | The response is invalid. |
ERROR_NETWORK_EXCEPTION | 10006 | The network is abnormal. |
ERROR_OAUTH_AUTHENTICATOR_NOT_EXIST | 10007 | The authenticator does not exist. |
ERROR_OAUTH_CANCELED | 10008 | The authentication is canceled. |
ERROR_OAUTH_LIST_TOO_LARGE | 10009 | The size of the OAuth list exceeds the limit. |
ERROR_OAUTH_SERVICE_BUSY | 10010 | The OAuth service is busy. |
ERROR_OAUTH_SERVICE_EXCEPTION | 10011 | The OAuth service is abnormal. |
ERROR_OAUTH_SESSION_NOT_EXIST | 10012 | The session to be authenticated does not exist. |
ERROR_OAUTH_TIMEOUT | 10013 | The authentication timed out. |
ERROR_OAUTH_TOKEN_NOT_EXIST | 10014 | The authorization token does not exist. |
ERROR_OAUTH_TOKEN_TOO_MANY | 10015 | The number of OAuth tokens reaches the limit. |
ERROR_OAUTH_UNSUPPORT_ACTION | 10016 | The authentication operation is not supported. |
ERROR_OAUTH_UNSUPPORT_AUTH_TYPE | 10017 | The authentication type is not supported. |
ERROR_PERMISSION_DENIED | 10018 | The required permission is missing. |
AuthCallback9+
Implements authenticator callbacks.
onResult9+
onResult: (code: number, result?: AuthResult) => void
Called to return the result of an authentication request.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
code | number | Yes | Authentication result code. |
result | AuthResult | No | Authentication result. By default, no value is passed, which means the authentication result is not received. |
Example
import { BusinessError } from '@ohos.base';
let appAccountManager: account_appAccount.AppAccountManager = account_appAccount.createAppAccountManager();
let sessionId = '1234';
appAccountManager.getAuthCallback(sessionId).then((callback: account_appAccount.AuthCallback) => {
let result: account_appAccount.AuthResult = {
account: {
name: 'Lisi',
owner: 'com.example.accountjsdemo',
},
tokenInfo: {
token: 'xxxxxx',
authType: 'getSocialData'
}
};
callback.onResult(account_appAccount.ResultCode.SUCCESS, result);
}).catch((err: BusinessError) => {
console.log('getAuthCallback err: ' + JSON.stringify(err));
});
onRequestRedirected9+
onRequestRedirected: (request: Want) => void
Called to redirect a request.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
request | Want | Yes | Request to be redirected. |
Example
class MyAuthenticator extends account_appAccount.Authenticator {
createAccountImplicitly(
options: account_appAccount.CreateAccountImplicitlyOptions, callback: account_appAccount.AuthCallback) {
let want: Want = {
bundleName: 'com.example.accountjsdemo',
abilityName: 'com.example.accountjsdemo.LoginAbility',
};
callback.onRequestRedirected(want);
}
auth(name: string, authType: string,
options: Record<string, Object>, callback: account_appAccount.AuthCallback) {
let result: account_appAccount.AuthResult = {
account: {
name: 'Lisi',
owner: 'com.example.accountjsdemo',
},
tokenInfo: {
token: 'xxxxxx',
authType: 'getSocialData'
}
};
callback.onResult(account_appAccount.ResultCode.SUCCESS, result);
}
}
onRequestContinued9+
onRequestContinued?: () => void
Called to continue to process the request.
System capability: SystemCapability.Account.AppAccount
Example
import { BusinessError } from '@ohos.base';
let appAccountManager: account_appAccount.AppAccountManager = account_appAccount.createAppAccountManager();
let sessionId = '1234';
appAccountManager.getAuthCallback(sessionId).then((callback: account_appAccount.AuthCallback) => {
if (callback.onRequestContinued != undefined) {
callback.onRequestContinued();
}
}).catch((err: BusinessError) => {
console.log('getAuthCallback err: ' + JSON.stringify(err));
});
AuthenticatorCallback(deprecated)
Provides OAuth authenticator callbacks.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use AuthCallback instead.
onResult8+
onResult: (code: number, result: {[key: string]: any}) => void
Called to return the result of an authentication request.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
code | number | Yes | Authentication result code. |
result | {[key: string]: any} | Yes | Authentication result. |
Example
import { BusinessError } from '@ohos.base';
let appAccountManager: account_appAccount.AppAccountManager = account_appAccount.createAppAccountManager();
let sessionId = '1234';
appAccountManager.getAuthenticatorCallback(sessionId).then((callback: account_appAccount.AuthenticatorCallback) => {
callback.onResult(account_appAccount.ResultCode.SUCCESS, {
name: 'LiSi',
owner: 'com.example.accountjsdemo',
authType: 'getSocialData',
token: 'xxxxxx'}
);
}).catch((err: BusinessError) => {
console.log('getAuthenticatorCallback err: ' + JSON.stringify(err));
});
onRequestRedirected8+
onRequestRedirected: (request: Want) => void
Called to redirect a request.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
request | Want | Yes | Request to be redirected. |
Example
class MyAuthenticator extends account_appAccount.Authenticator {
addAccountImplicitly(authType: string, callerBundleName: string,
options: Record<string, Object>, callback: account_appAccount.AuthenticatorCallback) {
let want: Want = {
bundleName: 'com.example.accountjsdemo',
abilityName: 'com.example.accountjsdemo.LoginAbility',
};
callback.onRequestRedirected(want);
}
authenticate(name: string, authType: string, callerBundleName: string,
options: Record<string, Object>, callback: account_appAccount.AuthenticatorCallback) {
callback.onResult(account_appAccount.ResultCode.SUCCESS, {
name: name,
authType: authType,
token: 'xxxxxx'}
);
}
}
Authenticator8+
Provides APIs to operate the authenticator.
createAccountImplicitly9+
createAccountImplicitly(options: CreateAccountImplicitlyOptions, callback: AuthCallback): void
Creates an app account implicitly based on the specified account owner. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
options | CreateAccountImplicitlyOptions | Yes | Options for implicitly creating the account. |
callback | AuthCallback | Yes | Authenticator callback invoked to return the result. |
addAccountImplicitly(deprecated)
addAccountImplicitly(authType: string, callerBundleName: string, options: {[key: string]: any}, callback: AuthenticatorCallback): void
Adds an app account implicitly based on the specified authentication type and options. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use createAccountImplicitly instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
authType | string | Yes | Authentication type. |
callerBundleName | string | Yes | Bundle name of the authentication requester. |
options | {[key: string]: any} | Yes | Options for the authentication. |
callback | AuthenticatorCallback | Yes | Authenticator callback invoked to return the authentication result. |
auth9+
auth(name: string, authType: string, options: {[key:string]: Object}, callback: AuthCallback): void
Authenticates an app account to obtain the authorization token. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
callerBundleName | string | Yes | Authentication type. |
options | {[key: string]: Object} | Yes | Options for the authentication. |
callback | AuthCallback | Yes | Callback invoked to return the result. |
authenticate(deprecated)
authenticate(name: string, authType: string, callerBundleName: string, options: {[key: string]: any}, callback: AuthenticatorCallback): void
Authenticates an app account to obtain the authorization token. This API uses an asynchronous callback to return the result.
NOTE
This API is supported since API version 8 and deprecated since API version 9. Use auth instead.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
authType | string | Yes | Authentication type. |
callerBundleName | string | Yes | Bundle name of the authentication requester. |
options | {[key: string]: any} | Yes | Options for the authentication. |
callback | AuthenticatorCallback | Yes | Authenticator callback invoked to return the authentication result. |
verifyCredential9+
verifyCredential(name: string, options: VerifyCredentialOptions, callback: AuthCallback): void;
Verifies the credential of an app account. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
options | VerifyCredentialOptions | Yes | Options for credential verification. |
callback | AuthCallback | Yes | Authenticator callback invoked to return the verification result. |
setProperties9+
setProperties(options: SetPropertiesOptions, callback: AuthCallback): void;
Sets the authenticator properties. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
options | SetPropertiesOptions | Yes | Authenticator properties to set. |
callback | AuthCallback | Yes | Authenticator callback invoked to return the result. |
checkAccountLabels9+
checkAccountLabels(name: string, labels: Array<string>, callback: AuthCallback): void;
Checks the account labels. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
labels | Array<string> | Yes | Labels to check. |
callback | AuthCallback | Yes | Authenticator callback invoked to return the check result. |
checkAccountRemovable9+
checkAccountRemovable(name: string, callback: AuthCallback): void;
Checks whether an app account can be deleted. This API uses an asynchronous callback to return the result.
System capability: SystemCapability.Account.AppAccount
Parameters
Name | Type | Mandatory | Description |
---|---|---|---|
name | string | Yes | Name of the target app account. |
callback | AuthCallback | Yes | Authenticator callback invoked to return the result. |
getRemoteObject9+
getRemoteObject(): rpc.RemoteObject;
Obtains the remote object of an authenticator. This API cannot be overloaded.
System capability: SystemCapability.Account.AppAccount
Example
import rpc from '@ohos.rpc';
class MyAuthenticator extends account_appAccount.Authenticator {
addAccountImplicitly(authType: string, callerBundleName: string,
options: Record<string, Object>, callback: account_appAccount.AuthenticatorCallback) {
let want: Want = {
bundleName: 'com.example.accountjsdemo',
abilityName: 'com.example.accountjsdemo.LoginAbility',
};
callback.onRequestRedirected(want);
}
authenticate(name: string, authType: string, callerBundleName: string,
options: Record<string, Object>, callback: account_appAccount.AuthenticatorCallback) {
callback.onResult(account_appAccount.ResultCode.SUCCESS, {
name: name,
authType: authType,
token: 'xxxxxx'}
);
}
verifyCredential(name: string,
options: account_appAccount.VerifyCredentialOptions, callback: account_appAccount.AuthCallback) {
let want: Want = {
bundleName: 'com.example.accountjsdemo',
abilityName: 'com.example.accountjsdemo.VerifyAbility',
parameters: {
name: name
}
};
callback.onRequestRedirected(want);
}
setProperties(options: account_appAccount.SetPropertiesOptions, callback: account_appAccount.AuthCallback) {
let want: Want = {
bundleName: 'com.example.accountjsdemo',
abilityName: 'com.example.accountjsdemo.SetPropertiesAbility',
parameters: {
options: options
}
};
callback.onRequestRedirected(want);
}
checkAccountLabels(name: string, labels: string[], callback: account_appAccount.AuthCallback) {
callback.onResult(account_appAccount.ResultCode.SUCCESS);
}
checkAccountRemovable(name: string, callback: account_appAccount.AuthCallback) {
callback.onResult(account_appAccount.ResultCode.SUCCESS);
}
}
export default {
onConnect(want: Want): rpc.RemoteObject { // serviceAbility lifecycle function.
let authenticator = new MyAuthenticator();
return authenticator.getRemoteObject();
}
}