harmony 鸿蒙Managing Application Accounts

  • 2025-06-06
  • 浏览 (4)

Managing Application Accounts

You can use the application account SDK to manage application accounts.

When an application is uninstalled, the account data of the application will be automatically deleted. When a local account is deleted, the account data of all applications of the local account will be automatically deleted.

Before You Start

  1. Import the appAccount module.
   import { appAccount, BusinessError } from '@kit.BasicServicesKit';
  1. Obtain an AppAccountManager instance.
   const appAccountManager = appAccount.createAppAccountManager();

Creating an Application Account

Create an application account for an application user.

Procedure

  1. Specify the account name and optional parameters.
   let name: string = "ZhangSan";
   let options: appAccount.CreateAccountOptions = {
     customData: {
       age: '10'
     }
   };
  1. Use createAccount to create an application account based on the specified parameters.
   try {
     await appAccountManager.createAccount(name, options);
     console.log('createAccount successfully');
   } catch (err) {
     console.log('createAccount failed, error: ' + JSON.stringify(err));
   }

Obtaining Application Account List

Procedure

Use getAllAccounts to obtain the application account list.

   appAccountManager.getAllAccounts().then((data: appAccount.AppAccountInfo[]) => {
       console.debug('getAllAccounts successfully, data: ' + JSON.stringify(data));
   }).catch((err: BusinessError) => {
       console.debug('getAllAccounts failed, error: ' + JSON.stringify(err));
   });

Accessing Account Credentials

Procedure

  1. Specify the account name, credential type, and credential.
   let name: string = 'ZhangSan';
   let credentialType: string = 'PIN_SIX';
   let credential: string = 'xxxxxx';
  1. Use getCredential to obtain the account credential.
   appAccountManager.getCredential(name, credentialType).then((data: string) => {
       console.log('getCredential successfully, data: ' + data);
   }).catch((err: BusinessError) => {
       console.log('getCredential failed, error: ' + JSON.stringify(err));
   });
  1. Use setCredential to set the account credential.
   appAccountManager.setCredential(name, credentialType, credential).then(() => {
       console.log('setCredential successfully');
   }).catch((err: BusinessError) => {
       console.log('setCredential failed: ' + JSON.stringify(err));
   });

Accessing Custom Account Data

Procedure

  1. Specify the account name and custom data.
   let name: string = 'ZhangSan';
   let key: string = 'age';
   let value: string = '12';
  1. Use setCustomData to customize account data.
   appAccountManager.setCustomData(name, key, value).then(() => {
       console.log('setCustomData successfully');
   }).catch((err: BusinessError) => {
       console.log('setCustomData failed: ' + JSON.stringify(err));
   });
  1. Use getCustomData to obtain the custom account data.
   appAccountManager.getCustomData(name, key).then((data: string) => {
       console.log('getCustomData successfully, data: ' + data);
   }).catch((err: BusinessError) => {
       console.log('getCustomData failed, error: ' + JSON.stringify(err));
   });

Accessing the Account Authentication Token

Procedure

  1. Specify the account name, account owner, authorization type, and authentication token.
   let name: string = 'ZhangSan';
   let owner: string = 'com.example.accountjsdemo';
   let authType: string = 'getSocialData';
   let token: string = 'xxxxxx';
  1. Use setAuthToken to set an authorization token for the specified authentication type.
   appAccountManager.setAuthToken(name, authType, token).then(() => {
       console.log('setAuthToken successfully');
   }).catch((err: BusinessError) => {
       console.log('setAuthToken failed: ' + JSON.stringify(err));
   });
  1. Use getAuthToken to obtain the authentication token of the specified authentication type.
   appAccountManager.getAuthToken(name, owner, authType).then((data: string) => {
       console.log('getAuthToken successfully, data: ' + data);
   }).catch((err: BusinessError) => {
       console.log('getAuthToken failed, error: ' + JSON.stringify(err));
   });

Removing an Application Account

Remove the application account after the user logs out of the system.

Procedure

Use removeAccount to remove the application account.

   let name: string = 'Zhangsan';
   appAccountManager.removeAccount(name).then(() => {
       console.log('removeAccount successfully');
   }).catch((err: BusinessError) => {
       console.log('removeAccount failed, error: ' + JSON.stringify(err));
   });

你可能感兴趣的鸿蒙文章

harmony 鸿蒙Account Management

harmony 鸿蒙Account Management Overview

harmony 鸿蒙Authenticating a Domain Account (for System Applications Only)

harmony 鸿蒙Applying Constraints for System Accounts

harmony 鸿蒙Managing Distributed Accounts (for System Applications Only)

harmony 鸿蒙Managing Domain Accounts (for System Applications Only)

harmony 鸿蒙Managing Domain Account Plugins (for System Applications Only)

harmony 鸿蒙Managing System Account Credentials (for System Application Only)

harmony 鸿蒙Managing System Accounts (for System Applications Only)

0  赞