1# 全球化子系统ChangeLog
2
3## cl.global.1 国际化模块系统接口添加运行时鉴权
4
5全球化子系统国际化组件在如下场景中提供的系统接口添加运行时鉴权。从API9开始作以下变更:
6 - 设置系统语言、系统国家或地区、系统区域
7 - 设置系统24小时制
8 - 添加、移除系统偏好语言
9 - 设置本地化数字
10
11开发者需要根据以下说明对应用进行适配。
12
13**变更影响**
14
15上述场景涉及的国际化系统接口添加运行时鉴权,只有具有UPDATE_CONFIGURATION权限的系统应用可以正常调用。
16
17**关键的接口/组件变更**
18
19 - 涉及接口
20   - setSystemLanguage(language: string): void;
21   - setSystemRegion(region: string): void;
22   - setSystemLocale(locale: string): void;
23   - set24HourClock(option: boolean): void;
24   - addPreferredLanguage(language: string, index?: number): void;
25   - removePreferredLanguage(index: number): void;
26   - setUsingLocalDigit(flag: boolean): void;
27
28**适配指导**
29
30确保应用为系统应用,非系统应用禁止调用上述接口。
31当前权限不足或非系统应用调用该接口时会抛出异常,可以通过try-catch来捕获异常。
32
33```js
34import I18n from '@ohos.i18n'
35
36try {
37  I18n.System.setSystemLanguage('zh');
38} catch(error) {
39  console.error(`call System.setSystemLanguage failed, error code: ${error.code}, message: ${error.message}.`)
40}
41```