1# 系统账号子系统Changelog
2
3## cl.accountaccount_os_account.1 setAppAccess错误码变更
4**访问级别**
5
6公开接口
7
8**变更原因**
9
10为防止资源浪费,禁止应用无限制地通过调用该接口授予三方应用权限,当授权应用数量超过1024个时,返回新增的错误码(12400005)。
11
12**变更影响**
13
14该变更为不兼容变更。
15
16变更前:setAppAccess传入的第三方应用包名未安装时,返回错误码12400001提示应用未找到。
17
18变更后:setAppAccess传入的第三方应用包名未安装时,当已授权的应用列表未超过限制数量时返回成功,当已授权的应用列表超过了限制数量,返回错误码12400005提示授权应用数量超过了上限。
19
20
21**起始API Level**
22
23API 9
24
25**变更发生版本**
26
27从OpenHarmony 5.0.2.1 版本开始。
28
29**变更的接口/组件**
30
31[@ohos.account.appAccount.d.ts](https://gitee.com/openharmony/interface_sdk-js/blob/master/api/@ohos.account.appAccount.d.ts)中如下接口:
32
33- setAppAccess(name: string, bundleName: string, isAccessible: boolean, callback: AsyncCallback\<void>): void
34
35- setAppAccess(name: string, bundleName: string, isAccessible: boolean): Promise\<void>
36
37**适配指导**
38
39调用setAppAccess接口新增12400005错误码,示例如下:
40```ts
41import { BusinessError } from '@ohos.base';
42import account_appAccount from '@ohos.account.appAccount';
43
44let appAccountManager: account_appAccount.AppAccountManager = account_appAccount.createAppAccountManager();
45
46try {
47  appAccountManager.setAppAccess('ZhangSan', 'com.example.accountjsdemo', true, (err: BusinessError) => {
48	if (err.code === 12400005) {
49	  //处理授权应用数量超过上限异常,比如对之前已授权的应用取消授权
50	} else if (err) {
51	  console.log('setAppAccess failed: ' + JSON.stringify(err));
52	} else {
53	  console.log('setAppAccess successfully');
54	}
55  });
56} catch (err) {
57  console.log('setAppAccess exception: ' + JSON.stringify(err));
58}
59```