• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.settings (设置数据项名称)
2
3<!--Kit: Basic Services Kit-->
4<!--Subsystem: Applications-->
5<!--Owner: @YingCong-->
6<!--Designer: @Kun_Wu-->
7<!--Tester: @dyx118186878-->
8<!--Adviser: @zhang_yixin13-->
9
10本模块提供访问设置数据项的能力。
11
12> **说明:**
13>
14>  - 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
15>
16>  - 如果访问的数据项没有获取到值,表示当前系统应用没有将该数据项的值添加到数据库。
17
18## 导入模块
19
20```js
21import { settings } from '@kit.BasicServicesKit';
22```
23## domainName
24
25提供查询的域名。
26
27### 属性
28
29**系统能力:** SystemCapability.Applications.Settings.Core
30
31| 名称                          | 类型   | 可读 | 可写 | 说明                   |
32|-----------------------------| ------ | ---- | ---- |----------------------|
33| DEVICE_SHARED<sup>11+</sup> | string | 是   | 是   | 设备属性共享域,所有设置项不区分多用户。 |
34| USER_PROPERTY<sup>11+</sup> | string | 是   | 是   | 为用户属性域,该域下所有配置区分多用户。 |
35
36## date
37
38提供设置时间和日期格式的数据项(暂不支持)。
39
40### 属性
41
42**系统能力:** SystemCapability.Applications.Settings.Core
43
44| 名称                | 类型   | 可读 | 可写 | 说明                                                                         |
45| ------------------- | ------ | ---- | ---- |----------------------------------------------------------------------------|
46| DATE_FORMAT         | string | 是   | 是   | 日期格式。<br/>日期格式包括mm/dd/yyyydd/mm/yyyyyyyy/mm/dd,其中mm、dd和yyyy分别代表月份、日期和年份。 |
47| TIME_FORMAT         | string | 是   | 是   | 时间以12小时格式或24小时格式显示。<br>- 值为 "12"表示12小时格式。<br/>- 值为"24"表示24小时格式。            |
48| AUTO_GAIN_TIME      | string | 是   | 是   | 是否自动从网络获取日期、时间和时区。 <br>- 值为true,表示自动从网络获取信息。<br/>- 值为false,表示不自动获取信息。      |
49| AUTO_GAIN_TIME_ZONE | string | 是   | 是   | 是否自动从NITZ获取时区。 <br>- 值为true,表示自动获取。<br/>- 值为false,表示不自动获取。                 |
50
51## display
52
53提供设置显示效果的数据项(暂不支持)。
54
55### 属性
56
57**系统能力:** SystemCapability.Applications.Settings.Core
58
59| 名称                          | 类型   | 可读 | 可写 | 说明                                                                                                                   |
60| ----------------------------- | ------ | ---- | ---- |----------------------------------------------------------------------------------------------------------------------|
61| FONT_SCALE                    | string | 是   | 是   | 字体的比例因子,值为浮点数。                                                                                      |
62| SCREEN_BRIGHTNESS_STATUS      | string | 是   | 是   | 屏幕亮度。取值范围:0到255。                                                                                                     |
63| AUTO_SCREEN_BRIGHTNESS        | string | 是   | 是   | 是否启用屏幕亮度自动调整。<br/>- 值为AUTO_SCREEN_BRIGHTNESS_MODE,表示启用自动调整。<br/>- 值为MANUAL_SCREEN_BRIGHTNESS_MODE,表示不启用自动调整。         |
64| AUTO_SCREEN_BRIGHTNESS_MODE   | number | 是   | 是   | 使用屏幕亮度自动调整时AUTO_SCREEN_BRIGHTNESS的值。                                                                                 |
65| MANUAL_SCREEN_BRIGHTNESS_MODE | number | 是   | 是   | 使用屏幕亮度手动调整时的AUTO_SCREEN_BRIGHTNESS值。                                                                                 |
66| SCREEN_OFF_TIMEOUT            | string | 是   | 是   | 设备在一段时间不活动后进入睡眠状态的等待时间(单位: ms)。                                                                                      |
67| DEFAULT_SCREEN_ROTATION       | string | 是   | 是   | 启用屏幕的自动旋转时,此属性无效。不启用自动旋转时,以下值可用: <br>- 值为0,表示屏幕旋转0度。<br>- 值为1,表示屏幕旋转90度。<br/>- 值为2,表示屏幕旋转180度。<br/>- 值为3,表示屏幕旋转270度。 |
68| ANIMATOR_DURATION_SCALE       | string | 是   | 是   | 动画持续时间的比例因子,影响所有此类动画的开始延迟和持续时间。<br/>值为0,表示动画将立即结束。默认值为1。                                                             |
69| TRANSITION_ANIMATION_SCALE    | string | 是   | 是   | 过渡动画的比例因子。<br/>值为0,表示禁用过渡动画。                                                                                         |
70| WINDOW_ANIMATION_SCALE        | string | 是   | 是   | 普通窗口动画的比例因子。<br/>值为0,表示禁用窗口动画。                                                                                       |
71| DISPLAY_INVERSION_STATUS      | string | 是   | 是   | 是否启用显示颜色反转。<br/>- 值为1,表示启用显示颜色反转。<br/>- 值为0,表示不启用显示颜色反转。                                                             |
72
73## general
74
75提供设置设备常规信息的数据项(暂不支持)。
76
77### 属性
78
79**系统能力:** SystemCapability.Applications.Settings.Core
80
81| 名称                             | 类型   | 可读 | 可写 | 说明                                                                                                                                  |
82| -------------------------------- | ------ | ---- | ---- |-------------------------------------------------------------------------------------------------------------------------------------|
83| SETUP_WIZARD_FINISHED            | string | 是   | 是   | 是否已运行启动向导。<br>- 值为0,表示启动向导尚未运行。<br/>- 值为非0,表示启动向导已运行。                                                                               |
84| END_BUTTON_ACTION                | string | 是   | 是   | 当用户不在呼叫中时,由用户按下呼叫结束按钮后会发生的情况。<br/>- 值为0,表示没有任何反应。<br/>- 值为1,表示显示主屏幕。<br/>- 值为2,表示设备进入睡眠状态,屏幕锁定。<br/>- 值为3,表示显示主屏幕。如果用户已在主屏幕上,设备将进入睡眠状态。 |
85| ACCELEROMETER_ROTATION_STATUS    | string | 是   | 是   | 是否启用加速计更改屏幕方向(是否启用自动旋转)。<br>- 值为1,表示启用加速计。<br/>- 值为0,表示不启用加速计。                                                                      |
86| DEVICE_PROVISION_STATUS          | string | 是   | 是   | 是否预配设备。<br>在具有单个系统用户的多用户设备上,当值为true时,屏幕可能会被锁定。此外,其他功能无法在系统用户上启动,除非被标记在屏幕锁定上显示。                                                      |
87| HDC_STATUS                       | string | 是   | 是   | 是否启用USB设备上的HDC(硬盘控制器)。<br>- 值为true,表示启用HDC。<br/>- 值为false,表示不启用HDC。                                                                      |
88| BOOT_COUNTING                    | string | 是   | 是   | 设备开机后的启动操作数。                                                                                                                        |
89| CONTACT_METADATA_SYNC_STATUS     | string | 是   | 是   | 是否启用联系人元数据同步。<br>- 值为true,表示启用同步。<br/>- 值为false,表示不启用同步。                                                                            |
90| DEVICE_NAME                      | string | 是   | 是   | 设备名称。                                                                                                                               |
91| USB_STORAGE_STATUS               | string | 是   | 是   | 是否启用USB大容量存储。<br>- 值为true,表示启用USB大容量存储。<br/>- 值为false,表示不启用USB大容量存储。                                                                |
92| DEBUGGER_WAITING                 | string | 是   | 是   | 设备在启动应用程序进行调试时是否等待调试器进行调试。<br>- 值为1,表示设备等待调试器。<br/>- 值为0,表示系统不会等待调试器,应用程序正常运行。                                                     |
93| DEBUG_APP_PACKAGE                | string | 是   | 是   | 要调试的应用程序的bundle name。                                                                                                               |
94| ACCESSIBILITY_STATUS             | string | 是   | 是   | 是否启用辅助功能。<br>- 值为1,表示启用辅助功能。<br/>- 值为0,表示不启用辅助功能。                                                                                   |
95| ACTIVATED_ACCESSIBILITY_SERVICES | string | 是   | 是   | 已激活的辅助功能的列表。                                                                                                                        |
96| GEOLOCATION_ORIGINS_ALLOWED      | string | 是   | 是   | 浏览器可以使用的默认地理位置。多个地理位置由空格分隔。                                                                                                         |
97| SKIP_USE_HINTS                   | string | 是   | 是   | 控制应用程序首次启动时是否跳过所有介绍性提示。适用于临时用户或熟悉环境的用户。<br>- 值为1,表示应用程序将在首次启动时跳过所有介绍性提示。<br/>- 值为0,表示应用程序不会在首次启动时跳过所有介绍性提示。                         |
98| TOUCH_EXPLORATION_STATUS         | string | 是   | 是   | 是否启用触摸浏览。<br>- 值为1,表示启用触摸浏览。<br/>- 值为0,表示不启用触摸浏览。                                                                                   |
99
100## input
101
102提供设置有关输入法信息的数据项(暂不支持)。
103
104### 属性
105
106**系统能力:** SystemCapability.Applications.Settings.Core
107
108| 名称                                 | 类型   | 可读 | 可写 | 说明                                                                                                                                                                                      |
109| ------------------------------------ | ------ | ---- | ---- |-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
110| DEFAULT_INPUT_METHOD                 | string | 是   | 是   | 默认输入法及其ID。                                                                                                                                                                              |
111| ACTIVATED_INPUT_METHOD_SUB_MODE      | string | 是   | 是   | 默认输入法键盘类型及其ID。                                                                                                                                                                          |
112| ACTIVATED_INPUT_METHODS              | string | 是   | 是   | 已激活的输入法的列表。<br>该列表是一个字符串,由已激活的输入法ID和输入法键盘类型组成。<br>输入法ID后添加冒号':'连接,输入法的键盘类型后添加分号';'连接。<br>用ima代表输入法ID,keyboardType代表键盘类型,示例格式是ima0:keyboardType0;keyboardType1;ima1:ima2:keyboardTypes0。 |
113| SELECTOR_VISIBILITY_FOR_INPUT_METHOD | string | 是   | 是   | 输入法选择器是否可见。<br>- 值为1,表示输入法选择器可见。<br/>- 值为0,表示输入法选择器不可见。                                                                                                                                 |
114| AUTO_CAPS_TEXT_INPUT                 | string | 是   | 是   | 是否为文本编辑器启用自动大写。<br>- 值为0,表示不启用自动大写。<br/>- 值为1,表示启用自动大写。                                                                                                                                 |
115| AUTO_PUNCTUATE_TEXT_INPUT            | string | 是   | 是   | 是否为文本编辑器启用自动标点符号。自动标点符号使文本编辑器能够将两个空格转换为句点'.'和空格。<br>- 值为0,表示不启用自动标点符号。<br/>- 值为1,表示启用自动标点符号。                                                                                            |
116| AUTO_REPLACE_TEXT_INPUT              | string | 是   | 是   | 是否为文本编辑器启用自动更正。自动更正使文本编辑器能够更正拼写错误。<br>- 值为0,表示不启用自动更正。<br/>- 值为1,表示启用自动更正。                                                                                                              |
117| SHOW_PASSWORD_TEXT_INPUT             | string | 是   | 是   | 是否在文本编辑器中启用密码显示。密码显示使文本编辑器能够在用户键入密码字符时显示密码字符。<br>- 值为0,表示不启用密码显示。<br/>- 值为1,表示启用密码显示。                                                                                                   |
118
119## network
120
121提供设置网络信息的数据项(暂不支持)。
122
123### 属性
124
125**系统能力:** SystemCapability.Applications.Settings.Core
126
127| 名称                     | 类型   | 可读 | 可写 | 说明                                                       |
128| ------------------------ | ------ | ---- | ---- |----------------------------------------------------------|
129| DATA_ROAMING_STATUS      | string | 是   | 是   | 是否启用数据漫游。<br>- 值为true,表示启用数据漫游。<br/>- 值为false,表示不启用数据漫游。 |
130| HTTP_PROXY_CFG           | string | 是   | 是   | 全局HTTP代理的主机名和端口号。主机名和端口号由冒号':'分隔。                        |
131| NETWORK_PREFERENCE_USAGE | string | 是   | 是   | 要使用网络的用户首选项。                                             |
132
133## phone
134
135提供设置来电和去电接听方式的数据项(暂不支持)。
136
137### 属性
138
139**系统能力:** SystemCapability.Applications.Settings.Core
140
141| 名称               | 类型   | 可读 | 可写 | 说明                                                                                         |
142| ------------------ | ------ | ---- | ---- |--------------------------------------------------------------------------------------------|
143| RTT_CALLING_STATUS | string | 是   | 是   | 是否启用实时文本(RTT)呼叫。启用表示来电和去电在设备以及运营商支持时作为RTT呼叫应答。 <br>- 值为1,表示启用RTT呼叫。 <br/>- 值为0,表示不启用RTT呼叫。 |
144
145## sound
146
147提供设置声音效果的数据项(暂不支持)。
148
149### 属性
150
151**系统能力:** SystemCapability.Applications.Settings.Core
152
153| 名称                         | 类型   | 可读 | 可写 | 说明                                                                       |
154| ---------------------------- | ------ | ---- | ---- |--------------------------------------------------------------------------|
155| VIBRATE_WHILE_RINGING        | string | 是   | 是   | 设备在来电响铃时是否振动。此属性由电话和设置应用程序使用。<br/>该值是布尔类型,仅影响设备因来电而响铃的情况,不影响任何其他应用程序或场景。 |
156| DEFAULT_ALARM_ALERT          | string | 是   | 是   | 系统默认告警的存储区域。                                                             |
157| DTMF_TONE_TYPE_WHILE_DIALING | string | 是   | 是   | 拨号时播放的双音多频(DTMF)音的类型。 <br>- 值为0,表示常规的短音效。<br/>- 值为1,表示长音效。               |
158| DTMF_TONE_WHILE_DIALING      | string | 是   | 是   | 拨号时是否播放DTMF音。<br>- 值为1,表示播放DTMF音。<br/>- 值为0,表示不播放。                       |
159| AFFECTED_MODE_RINGER_STREAMS | string | 是   | 是   | 音频流受振铃模式和请勿打扰(DND)模式更改的影响。要求特定的音频流受到振铃模式和DND模式变化的影响,将对应比特位设置为1。          |
160| AFFECTED_MUTE_STREAMS        | string | 是   | 是   | 受静音模式影响的音频流。若需在静音模式下保持特定音频流静音,将相应位设为1。                                   |
161| DEFAULT_NOTIFICATION_SOUND   | string | 是   | 是   | 系统默认通知音的存储区域。                                                            |
162| DEFAULT_RINGTONE             | string | 是   | 是   | 系统默认铃声的存储区域。                                                             |
163| SOUND_EFFECTS_STATUS         | string | 是   | 是   | 声音功能是否可用。<br>- 值为0,表示不可用。 <br/>- 值为1,表示可用。                               |
164| VIBRATE_STATUS               | string | 是   | 是   | 设备是否为事件振动。该参数在系统内部使用。 <br>- 值为1,表示设备会因事件而振动。 <br/>- 值为0,表示设备不因事件振动。      |
165| HAPTIC_FEEDBACK_STATUS       | string | 是   | 是   | 设备是否启用触觉反馈。<br/>- 值为true,表示启用触觉反馈。<br/>- 值为false,表示不启用触觉反馈。              |
166
167## TTS
168
169提供设置文本到语音(TTS)转换信息的数据项(暂不支持)。
170
171### 属性
172
173**系统能力:** SystemCapability.Applications.Settings.Core
174
175| 名称                | 类型   | 可读 | 可写 | 说明                                                         |
176| ------------------- | ------ | ---- | ---- | ------------------------------------------------------------ |
177| DEFAULT_TTS_PITCH   | string | 是   | 是   | 文本转语音(TTS)引擎的默认音高。<br>其中100=1x,该值设置为200,表示频率是正常声音频率的两倍。 |
178| DEFAULT_TTS_RATE    | string | 是   | 是   | TTS引擎的默认语速。<br>其中100=1x。                         |
179| DEFAULT_TTS_SYNTH   | string | 是   | 是   | 默认TTS引擎。                                                |
180| ENABLED_TTS_PLUGINS | string | 是   | 是   | 用于TTS的已激活插件包列表,多个插件包用空格分隔。           |
181
182
183## wireless
184
185提供设置无线网络信息的数据项(暂不支持)。
186
187### 属性
188
189**系统能力:** SystemCapability.Applications.Settings.Core
190
191| 名称                              | 类型   | 可读 | 可写 | 说明                                                                                                       |
192| --------------------------------- | ------ | ---- | ---- |----------------------------------------------------------------------------------------------------------|
193| BLUETOOTH_DISCOVER_ABILITY_STATUS | string | 是   | 是   | 设备是否可以被其他设备通过蓝牙发现或连接。<br>- 值为0,表示设备不可以被连接或发现。<br/>- 值为1,表示设备可以被连接但不可以被发现。<br/>- 值为2,表示设备可以被连接和发现。        |
194| BLUETOOTH_DISCOVER_TIMEOUT        | string | 是   | 是   | 通过蓝牙发现设备的持续时间(以秒为单位)。<br>这段时间后,设备不可以被蓝牙搜寻到。                                                              |
195| AIRPLANE_MODE_RADIOS              | string | 是   | 是   | 启用飞行模式时要禁用的无线电信号列表。 <br>多个无线电信号用逗号(,)分隔。<br>取值包括以下常量:BLUETOOTH_RADIO、 CELL_RADIO、 NFC_RADIO、 WIFI_RADIO。 |
196| BLUETOOTH_RADIO                   | string | 是   | 否   | 常量,作为AIRPLANE_MODE_RADIOS的取值时表示蓝牙在飞行模式下禁用。                                                               |
197| CELL_RADIO                        | string | 是   | 否   | 常量,作为AIRPLANE_MODE_RADIOS的取值时表示蜂窝无线电在飞行模式下禁用。                                                            |
198| NFC_RADIO                         | string | 是   | 否   | 常量,作为AIRPLANE_MODE_RADIOS的取值时表示NFC在飞行模式下禁用。                                                              |
199| WIFI_RADIO                        | string | 是   | 否   | 常量,作为AIRPLANE_MODE_RADIOS的取值时表示Wi-Fi在飞行模式下禁用。                                                            |
200| BLUETOOTH_STATUS                  | string | 是   | 是   | 蓝牙是否可用。 <br>- 值为true,表示蓝牙可用。<br/>- 值为false,表示蓝牙不可用。                                                      |
201| OWNER_LOCKDOWN_WIFI_CFG           | string | 是   | 是   | 是否应锁定由设备所有者的应用程序创建的Wi-Fi配置。<br>- 值为true,表示Wi-Fi配置应该被锁定。<br/>- 值为false,表示不应该被锁定。                          |
202| WIFI_DHCP_MAX_RETRY_COUNT         | string | 是   | 是   | 尝试从DHCP服务器获取IP地址的最大次数。                                                                                   |
203| WIFI_TO_MOBILE_DATA_AWAKE_TIMEOUT | string | 是   | 是   | Wi-Fi连接断开后等待移动数据连接时保持唤醒锁的最长时间。                                                                           |
204| WIFI_STATUS                       | string | 是   | 是   | Wi-Fi是否可用。<br>- 值为true,表示Wi-Fi可用。<br/>- 值为false,表示Wi-Fi不可用。                                              |
205| WIFI_WATCHDOG_STATUS              | string | 是   | 是   | Wi-Fi的WatchDog是否可用。 <br>- 值为true,表示可用。<br/>- 值为false,表示不可用。                                              |
206
207
208## settings.setValue<sup>10+</sup>
209
210setValue(context: Context, name: string, value: string, callback: AsyncCallback\<boolean>): void
211
212将数据项名称及数据项的值保存到DEVICE_SHARED域数据库中,使用callback异步回调。
213
214**模型约束**:此接口仅可在Stage模型下使用。
215
216**系统能力**:SystemCapability.Applications.Settings.Core
217
218**需要权限**: ohos.permission.MANAGE_SETTINGS,仅系统应用可用。
219
220**参数**:
221
222| 参数名   | 类型                    | 必填 | 说明                                                                                                                                         |
223| -------- | ----------------------- | ---- |--------------------------------------------------------------------------------------------------------------------------------------------|
224| context  | Context                 | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。 |
225| name     | string                  | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。                                                                              |
226| value    | string                  | 是   | 数据项值。取值范围随业务变动。                                                                                                                            |
227| callback | AsyncCallback\<boolean> | 是   | 回调函数。返回true表示操作成功,返回false表示操作失败。                                                                                                           |
228
229**示例**:
230
231<!--code_no_check-->
232```js
233import { settings } from '@kit.BasicServicesKit';
234import { common } from '@kit.AbilityKit';
235
236// 更新数据项亮度的值(该数据项在数据库中已存在,故setValue方法将更新该数据项的值)。
237// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
238const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
239settings.setValue(context, settings.display.SCREEN_BRIGHTNESS_STATUS, '100', (status) => {
240  console.log('Callback return whether value is set.');
241});
242```
243
244## settings.setValue<sup>10+</sup>
245
246setValue(context: Context, name: string, value: string): Promise\<boolean>
247
248将数据项名称及数据项的值保存到DEVICE_SHARED域数据库中。使用Promise异步回调。
249
250**模型约束**:此接口仅可在Stage模型下使用。
251
252**系统能力**:SystemCapability.Applications.Settings.Core
253
254**需要权限**: ohos.permission.MANAGE_SETTINGS,该权限仅系统应用可用。
255
256**参数**:
257
258| 参数名  | 类型    | 必填 | 说明                                                                                                                                         |
259| ------- | ------- | ---- |--------------------------------------------------------------------------------------------------------------------------------------------|
260| context | Context | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。 |
261| name    | string  | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。                                                                              |
262| value   | string  | 是   | 数据项值。取值范围随业务变动。                                                                                                                            |
263
264**返回值**:
265
266| 类型              | 说明                                    |
267| ----------------- |---------------------------------------|
268| Promise\<boolean> | Promise对象。返回true表示操作成功,返回false表示操作失败。 |
269
270**示例**:
271
272<!--code_no_check-->
273```js
274import { settings } from '@kit.BasicServicesKit';
275import { common } from '@kit.AbilityKit';
276
277// 更新数据项亮度的值(该数据项在数据库中已存在,故setValue方法将更新该数据项的值)。
278// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
279const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
280settings.setValue(context, settings.display.SCREEN_BRIGHTNESS_STATUS, '100').then((status) => {
281  console.log('Callback return whether value is set.');
282});
283```
284
285## settings.setValue<sup>11+</sup>
286
287setValue(context: Context, name: string, value: string, domainName: string): Promise\<boolean>
288
289将数据项名称及数据项的值保存到数据库中。使用Promise异步回调。
290
291**模型约束**:此接口仅可在Stage模型下使用。
292
293**系统能力**:SystemCapability.Applications.Settings.Core
294
295**需要权限**:
296- 写入DEVICE_SHARED、USER_PROPERTY域需要权限ohos.permission.MANAGE_SETTINGS,该权限仅系统应用可用。
297- 写入USER_SECURITY域需要权限ohos.permission.MANAGE_SECURE_SETTINGS,该权限仅系统应用可用。
298
299**参数**:
300
301| 参数名   | 类型                   | 必填 | 说明                                                                                                                                                                                                                                                |
302| -------- | ---------------------- | ---- |---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
303| context  | Context                | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。                                                                                                        |
304| name     | string                 | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。                                                                                                                                                                                     |
305| value    | string                 | 是   | 数据项值。取值范围随业务变动。                                                                                                                                                                                                                                   |
306|domainName| string                 | 是   | 指定要设置的域名。 <br>- domainName为domainName.DEVICE_SHARED,<br>&nbsp;&nbsp;&nbsp;表示设备属性共享域。<br>- domainName为domainName.USER_PROPERTY,<br>&nbsp;&nbsp;&nbsp;表示用户属性域。 <br>- domainName为domainName.USER_SECURITY,<br>&nbsp;&nbsp;&nbsp;表示用户安全属性域(仅对系统应用开放)。 |
307
308**返回值**:
309
310| 类型                | 说明                                    |
311|-------------------|---------------------------------------|
312| Promise\<boolean> | Promise对象。返回true表示操作成功,返回false表示操作失败。 |
313
314**错误码**:
315
316以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)。
317
318| 错误码ID | 错误信息 |
319| ------- | -------- |
320| 201 | Permission denied. |
321
322**示例**:
323
324<!--code_no_check-->
325```js
326import { settings } from '@kit.BasicServicesKit';
327import { common } from '@kit.AbilityKit';
328
329// 更新数据项亮度的值(该数据项在数据库中已存在,故setValue方法将更新该数据项的值)。
330// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
331const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
332settings.setValue(context, settings.display.SCREEN_BRIGHTNESS_STATUS, '100', settings.domainName.DEVICE_SHARED).then((status) => {
333  console.log(`callback:return whether value is set.`)
334});
335```
336
337## settings.getValue<sup>10+</sup>
338
339getValue(context: Context, name: string, callback: AsyncCallback\<string>): void
340
341获取数据库中DEVICE_SHARD域指定数据项的值。使用callback异步回调。
342
343**模型约束**:此接口仅可在Stage模型下使用。
344
345**系统能力**:SystemCapability.Applications.Settings.Core
346
347**参数**:
348
349| 参数名   | 类型                   | 必填 | 说明                                                                                                                                         |
350| -------- | ---------------------- | ---- |--------------------------------------------------------------------------------------------------------------------------------------------|
351| context  | Context                | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。 |
352| name     | string                 | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。                                                                              |
353| callback | AsyncCallback\<string> | 是   | 使用callback方式获取数据项的值。                                                                                                                       |
354
355**示例**:
356
357<!--code_no_check-->
358```js
359import { settings } from '@kit.BasicServicesKit';
360import { common } from '@kit.AbilityKit';
361
362// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
363const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
364settings.getValue(context, settings.display.SCREEN_BRIGHTNESS_STATUS, (err, value) => {
365  if (err) {
366    console.error(`Failed to get the setting. ${err.message} `);
367    return;
368  }
369  console.log(`callback:value -> ${value}`)
370});
371```
372
373## settings.getValue<sup>10+</sup>
374
375getValue(context: Context, name: string): Promise\<string>
376
377获取数据库中DEVICE_SHARD域指定数据项的值。使用Promise异步回调。
378
379**模型约束**:此接口仅可在Stage模型下使用。
380
381**系统能力**:SystemCapability.Applications.Settings.Core
382
383**参数**:
384
385| 参数名  | 类型    | 必填 | 说明                                                                                                                                         |
386| ------- | ------- | ---- |--------------------------------------------------------------------------------------------------------------------------------------------|
387| context | Context | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。 |
388| name    | string  | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。                                                                              |
389
390**返回值**:
391
392| 类型             | 说明                                |
393| ---------------- | ----------------------------------- |
394| Promise\<string> | Promise对象。返回获得的数据项的值。 |
395
396**示例**:
397
398<!--code_no_check-->
399```js
400import { settings } from '@kit.BasicServicesKit';
401import { common } from '@kit.AbilityKit';
402
403// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
404const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
405settings.getValue(context, settings.display.SCREEN_BRIGHTNESS_STATUS).then((value) => {
406  console.log(`promise:value -> ${value}`)
407});
408```
409
410## settings.getValue<sup>11+</sup>
411
412getValue(context: Context, name: string, domainName: string): Promise\<string>
413
414获取数据库中指定数据项的值。使用Promise异步回调。
415
416**模型约束**:此接口仅可在Stage模型下使用。
417
418**系统能力**:SystemCapability.Applications.Settings.Core
419
420**需要权限**:
421- 读取USER_SECURITY域需要权限ohos.permission.MANAGE_SECURE_SETTINGS,该权限仅系统应用可用。
422
423**参数**:
424
425| 参数名   | 类型                   | 必填 | 说明                                                                                                                                                                                                                                                |
426| -------- | ---------------------- | ---- |---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
427| context  | Context                | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。                                                                                                        |
428| name     | string                 | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。                                                                                                                                                                                     |
429|domainName| string                 | 是   | 指定要设置的域名。 <br>- domainName为domainName.DEVICE_SHARED,<br>&nbsp;&nbsp;&nbsp;设备属性共享域。<br>- domainName为domainName.USER_PROPERTY,<br>&nbsp;&nbsp;&nbsp;表示为用户属性域。 <br>- domainName为domainName.USER_SECURITY,<br>&nbsp;&nbsp;&nbsp;表示为用户安全属性域(仅对系统应用开放)。 |
430
431**返回值**:
432
433| 类型             | 说明                                |
434| ---------------- | ----------------------------------- |
435| Promise\<string> | Promise对象。返回获得的数据项的值。 |
436
437**示例**:
438
439<!--code_no_check-->
440```js
441import { settings } from '@kit.BasicServicesKit';
442import { common } from '@kit.AbilityKit';
443
444// 更新数据项亮度的值(该数据项在数据库中已存在,故getValue方法将更新该数据项的值)。
445// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
446const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
447settings.getValue(context, settings.display.SCREEN_BRIGHTNESS_STATUS, settings.domainName.DEVICE_SHARED).then((value) => {
448  console.log(`Promise:value -> ${value}`);
449});
450```
451
452## settings.getValueSync<sup>10+</sup>
453
454getValueSync(context: Context, name: string, defValue: string): string
455
456获取数据项的值。此方法相较getValue为同步方法。
457
458**模型约束**:此接口仅可在Stage模型下使用。
459
460**系统能力**:SystemCapability.Applications.Settings.Core
461
462**参数**:
463
464| 参数名   | 类型    | 必填 | 说明                                                                                                                                        |
465| -------- | ------- | ---- |-------------------------------------------------------------------------------------------------------------------------------------------|
466| context  | Context | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。 |
467| name     | string  | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。                                                                             |
468| defValue | string  | 是   | 默认值。由开发者设置,在数据库中查询不到该数据时,返回默认值。                                                                                                           |
469
470**返回值**:
471
472| 类型   | 说明             |
473| ------ | ---------------- |
474| string | 返回数据项的值。 |
475
476**示例**:
477
478<!--code_no_check-->
479```js
480import { settings } from '@kit.BasicServicesKit';
481import { common } from '@kit.AbilityKit';
482
483// 获取数据项亮度的值(该数据项在数据库中已存在)。
484// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
485const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
486let value = settings.getValueSync(context, settings.display.SCREEN_BRIGHTNESS_STATUS, '10');
487```
488
489## settings.getValueSync<sup>11+</sup>
490
491getValueSync(context: Context, name: string, defValue: string, domainName: string): string
492
493获取数据项的值。此方法相较getValue为同步方法。
494
495**模型约束**:此接口仅可在Stage模型下使用。
496
497**系统能力**:SystemCapability.Applications.Settings.Core
498
499**需要权限**:
500- 读取USER_SECURITY域需要权限ohos.permission.MANAGE_SECURE_SETTINGS,该权限仅系统应用可用。
501
502**参数**:
503
504| 参数名        | 类型                   | 必填 | 说明                                                                                                                                                                                                                                               |
505|------------| ---------------------- | ---- |--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
506| context    | Context                | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。                                                                                                       |
507| name       | string                 | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。                                                                                                                                                                                    |
508| defValue   | string                 | 是   | 默认值。由开发者设置,在数据库中查询不到该数据时,返回默认值。                                                                                                                                                                                                                  |
509| domainName | string                 | 是   | 指定要设置的域名。 <br>- domainName为domainName.DEVICE_SHARED,<br>&nbsp;&nbsp;&nbsp;设备属性共享域。<br>- domainName为domainName.USER_PROPERTY,<br>&nbsp;&nbsp;&nbsp;表示为用户属性域。 <br>- domainName为domainName.USER_SECURITY,<br>&nbsp;&nbsp;&nbsp;表示为用户安全属性域(仅对系统应用开放)。 |
510
511
512**返回值**:
513
514| 类型             | 说明                                |
515| ---------------- | ----------------------------------- |
516| string           | 返回数据项的值。                       |
517
518**示例**:
519
520<!--code_no_check-->
521```js
522import { settings } from '@kit.BasicServicesKit';
523import { common } from '@kit.AbilityKit';
524
525// 更新数据项亮度的值(该数据项在数据库中已存在)。
526// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
527const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
528let value = settings.getValueSync(context, settings.display.SCREEN_BRIGHTNESS_STATUS, '100',  settings.domainName.DEVICE_SHARED);
529```
530
531## settings.setValueSync<sup>10+</sup>
532
533setValueSync(context: Context, name: string, value: string): boolean
534
535设置数据项的值。此方法相较setValue为同步方法。
536
537- 如果数据库中已经存在该数据项,setValueSync方法将更新该数据项的值。
538- 如果数据库中不存在该数据项,setValueSync方法将向数据库中插入该数据项。
539
540**模型约束**:此接口仅可在Stage模型下使用。
541
542**系统能力**:SystemCapability.Applications.Settings.Core
543
544**需要权限**: ohos.permission.MANAGE_SETTINGS,该权限仅系统应用可用。
545
546**参数**:
547
548| 参数名  | 类型    | 必填 | 说明                                                                                                                                         |
549| ------- | ------- | ---- |--------------------------------------------------------------------------------------------------------------------------------------------|
550| context | Context | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。 |
551| name    | string  | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。                                                                              |
552| value   | string  | 是   | 数据项的具体数值。取值范围随业务变动。                                                                                                                        |
553
554**返回值**:
555
556| 类型    | 说明                                                         |
557| ------- | ------------------------------------------------------------ |
558| boolean | 返回设置数据项的值是否成功的结果。true表示设置成功,false表示设置失败。 |
559
560**示例**:
561
562<!--code_no_check-->
563```js
564import { settings } from '@kit.BasicServicesKit';
565import { common } from '@kit.AbilityKit';
566
567// 更新数据项亮度的值(该数据项在数据库中已存在,故setValueSync方法将更新该数据项的值)。
568// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
569const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
570let ret = settings.setValueSync(context, settings.display.SCREEN_BRIGHTNESS_STATUS, '100');
571```
572
573## settings.setValueSync<sup>11+</sup>
574
575setValueSync(context: Context, name: string, value: string, domainName: string): boolean
576
577设置数据项的值。此方法相较setValue为同步方法。
578
579- 如果数据库中已经存在该数据项,则setValueSync方法将更新该数据项的值。
580- 如果数据库中尚未存在该数据项,则setValueSync方法将向数据库中插入该数据项。
581
582**模型约束**:此接口仅可在Stage模型下使用。
583
584**系统能力**:SystemCapability.Applications.Settings.Core
585
586**需要权限**:
587- 写入DEVICE_SHARED、USER_PROPERTY域需要权限ohos.permission.MANAGE_SETTINGS,该权限仅系统应用可用。
588- 写入USER_SECURITY域需要权限ohos.permission.MANAGE_SECURE_SETTINGS,该权限仅系统应用可用。
589
590**参数**:
591
592| 参数名     | 类型                   | 必填 | 说明                                                                                                                                                                                                                                                |
593|---------| ---------------------- | ---- |---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
594| context | Context                | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。                                                                                                        |
595| name    | string                 | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。                                                                                                                                                                                     |
596| value   | string                 | 是   | 数据项值。取值范围随业务变动。                                                                                                                                                                                                                                   |
597| domainName | string                 | 是   | 指定要设置的域名。 <br>- domainName为domainName.DEVICE_SHARED,<br>&nbsp;&nbsp;&nbsp;设备属性共享域。<br>- domainName为domainName.USER_PROPERTY,<br>&nbsp;&nbsp;&nbsp;表示为用户属性域。 <br>- domainName为domainName.USER_SECURITY,<br>&nbsp;&nbsp;&nbsp;表示为用户安全属性域(仅对系统应用开放)。 |
598
599**返回值**:
600
601| 类型             | 说明                                |
602| ---------------- | ----------------------------------- |
603| boolean          | 返回设置数据项的值是否成功的结果。true表示设置成功,false表示设置失败。 |
604
605**错误码**:
606
607以下错误码详细介绍请参考[通用错误码](../errorcode-universal.md)。
608
609| 错误码ID | 错误信息 |
610| ------- | -------- |
611| 201 | Permission denied. |
612
613**示例**:
614
615<!--code_no_check-->
616```js
617import { settings } from '@kit.BasicServicesKit';
618import { common } from '@kit.AbilityKit';
619
620// 更新数据项亮度的值(该数据项在数据库中已存在,故setValueSync方法将更新该数据项的值)。
621// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
622const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
623let ret = settings.setValueSync(context, settings.display.SCREEN_BRIGHTNESS_STATUS, '100', settings.domainName.DEVICE_SHARED);
624```
625
626## settings.registerKeyObserver<sup>11+</sup>
627
628registerKeyObserver(context: Context, name: string, domainName: string, observer:AsyncCallback\<void>): boolean
629
630用于在指定上下文中注册一个观察者,以便在指定域名中观察指定的数据项。当该数据项的值发生变化时,将调用注册的回调函数。成功注册返回true,否则返回false。
631
632**模型约束**:此接口仅可在Stage模型下使用。
633
634**系统能力**:SystemCapability.Applications.Settings.Core
635
636**参数**:
637
638| 参数名   | 类型                   | 必填 | 说明                                                                                                                                                                                                                                                |
639| -------- | ---------------------- | ---- |---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
640| context  | Context                | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。                                                                                                        |
641| name     | string                 | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。                                                                                                                                                                                     |
642|domainName| string                 | 是   | 指定要设置的域名。 <br>- domainName为domainName.DEVICE_SHARED,<br>&nbsp;&nbsp;&nbsp;设备属性共享域。<br>- domainName为domainName.USER_PROPERTY,<br>&nbsp;&nbsp;&nbsp;表示为用户属性域。 <br>- domainName为domainName.USER_SECURITY,<br>&nbsp;&nbsp;&nbsp;表示为用户安全属性域(仅对系统应用开放)。 |
643|observer  |  AsyncCallback\<void>  | 是   | 使用callback方式获取数据项的值。                                                                                                                                                                                                                              |
644
645**返回值**:
646
647| 类型             | 说明                                     |
648| ---------------- |----------------------------------------|
649| boolean | 返回注册观察者是否成功的结果。true表示注册成功,false表示注册失败。 |
650
651**示例**:
652
653<!--code_no_check-->
654```js
655import { settings } from '@kit.BasicServicesKit';
656import { common } from '@kit.AbilityKit';
657
658// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
659const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
660settings.registerKeyObserver(context, settings.display.SCREEN_BRIGHTNESS_STATUS, settings.domainName.DEVICE_SHARED, () => {
661  let value:string = settings.getValueSync(context, settings.display.SCREEN_BRIGHTNESS_STATUS, '10');
662  console.log(`Promise:value -> ${value}`);
663});
664```
665
666## settings.unregisterKeyObserver<sup>11+</sup>
667
668unregisterKeyObserver(context: Context, name: string, domainName: string): boolean
669
670同步方法,注销指定域名下对指定数据项名称的观察者。
671
672**模型约束**:此接口仅可在Stage模型下使用。
673
674**系统能力**:SystemCapability.Applications.Settings.Core
675
676**参数**:
677
678| 参数名   | 类型                   | 必填 | 说明                                                                                                                                                                                                                                               |
679| -------- | ---------------------- | ---- |--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
680| context  | Context                | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。                                                                                                       |
681| name     | string                 | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。                                                                                                                                                                                    |
682|domainName| string                 | 是   | 指定要设置的域名。 <br>- domainName为domainName.DEVICE_SHARED,<br>&nbsp;&nbsp;&nbsp;设备属性共享域。<br>- domainName为domainName.USER_PROPERTY,<br>&nbsp;&nbsp;&nbsp;表示为用户属性域。 <br>- domainName为domainName.USER_SECURITY,<br>&nbsp;&nbsp;&nbsp;表示为用户安全属性域(仅对系统应用开放) |
683
684**返回值**:
685
686| 类型             | 说明                                |
687| ---------------- | ----------------------------------- |
688| boolean | 返回注销指定域名下指定键的监视器是否成功。true表示注销成功,false表示注销失败。 |
689
690**示例**:
691
692<!--code_no_check-->
693```js
694import { settings } from '@kit.BasicServicesKit';
695import { common } from '@kit.AbilityKit';
696
697// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
698const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
699let ret = settings.unregisterKeyObserver(context, settings.display.SCREEN_BRIGHTNESS_STATUS,  settings.domainName.DEVICE_SHARED);
700```
701
702## settings.openNetworkManagerSettings<sup>18+</sup>
703
704openNetworkManagerSettings(context: Context): Promise\<boolean>
705
706打开网络管理器设置页面。使用Promise异步回调。
707
708**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。
709
710**系统能力**:SystemCapability.Applications.Settings.Core
711
712**设备行为差异**:该接口在Phone、PC/2in1、Tablet设备中可正常调用,在其他设备调用不生效。
713
714**参数**:
715
716| 参数名   | 类型                   | 必填 | 说明                                                                                                                                         |
717| -------- | ---------------------- | ---- |--------------------------------------------------------------------------------------------------------------------------------------------|
718| context  | Context                | 是   | 应用上下文(仅支持UIAbilityContext和ExtensionContext)。<br />Stage模型的应用Context定义见[Context](../apis-ability-kit/js-apis-inner-application-context.md)。 |
719
720**返回值**:
721
722| 类型             | 说明                                    |
723| ---------------- |---------------------------------------|
724| Promise\<boolean> | Promise对象。返回true表示操作成功,返回false表示操作失败。 |
725
726**错误码**:
727
728以下错误码详细介绍请参考[设置数据项错误码](./errorcode-settings.md)。
729
730| 错误码ID    | 错误信息                    |
731|----------|-------------------------|
732| 14800000 | Parameter error.        |
733| 14800010 | Original service error. |
734
735**示例**:
736
737<!--code_no_check-->
738```js
739import { settings } from '@kit.BasicServicesKit';
740import { common } from '@kit.AbilityKit';
741
742// 跳转网络管理器设置页面。
743// 请在组件内获取context,确保this.getUIContext().getHostContext()返回结果为UIAbilityContext。
744const context: Context = this.getUIContext().getHostContext() as common.UIAbilityContext;
745settings.openNetworkManagerSettings(context).then((status) => {
746  console.log(`callback:return whether setings is open.`)
747});
748```
749
750## settings.enableAirplaneMode
751
752enableAirplaneMode(enable: boolean, callback: AsyncCallback\<void>): void
753
754启用或禁用飞行模式。使用callback异步回调(暂不支持)。
755
756**系统能力**:SystemCapability.Applications.Settings.Core
757
758**参数**:
759
760| 参数名   | 类型                 | 必填 | 说明                                            |
761| -------- | -------------------- | ---- | ----------------------------------------------- |
762| enable   | boolean              | 是   | 是否开启飞行模式。true表示开启,false表示禁用。 |
763| callback | AsyncCallback\<void> | 是   | 回调函数。                                      |
764
765**示例**:
766
767```js
768let isEnabled :boolean = true;
769settings.enableAirplaneMode(isEnabled, (err:Error) => {
770    if (err) {
771        console.error('Failed to enable AirplaneMode.');
772        return;
773    }
774    console.log('Return true if enable.');
775})
776```
777
778## settings.enableAirplaneMode
779
780enableAirplaneMode(enable: boolean): Promise\<void>
781
782启用或禁用飞行模式。使用Promise异步回调(暂不支持)。
783
784**系统能力**:SystemCapability.Applications.Settings.Core
785
786**参数**:
787
788| 参数名 | 类型    | 必填 | 说明                                            |
789| ------ | ------- | ---- | ----------------------------------------------- |
790| enable | boolean | 是   | 是否开启飞行模式。true表示开启,false表示禁用。 |
791
792**返回值**:
793
794| 类型           | 说明                      |
795| -------------- | ------------------------- |
796| Promise\<void> | 无返回结果的Promise对象。 |
797
798**示例**:
799
800```js
801let isEnabled :boolean = true;
802settings.enableAirplaneMode(isEnabled).then(() => {
803  console.log('Succeeded in enabling AirplaneMode.');
804}).catch((err:Error) => {
805  console.error(`Failed to enable AirplaneMode. Cause: ${err}`);
806})
807```
808
809## settings.canShowFloating
810
811canShowFloating(callback: AsyncCallback\<boolean>): void
812
813检查应用是否能够以悬浮窗形式显示。使用callback异步回调(暂不支持)。
814
815**系统能力**:SystemCapability.Applications.Settings.Core
816
817**参数**:
818
819| 参数名   | 类型                    | 必填 | 说明                                                         |
820| -------- | ----------------------- | ---- | ------------------------------------------------------------ |
821| callback | AsyncCallback\<boolean> | 是   | 回调函数。<br/>返回true,表示应用能够以悬浮窗形式显示。返回false,表示不能。 |
822
823**示例**:
824
825```js
826settings.canShowFloating((err:Error, status: boolean) => {
827  if (err) {
828    console.error(`Failed to Checks whether a specified application can show as float window ${err.message} `);
829    return;
830  }
831  console.log('Checks whether a specified application can show as float window.');
832});
833```
834
835## settings.canShowFloating
836
837canShowFloating(): Promise\<boolean>
838
839检查应用是否能够以悬浮窗形式显示。使用Promise异步回调(暂不支持)。
840
841**系统能力**:SystemCapability.Applications.Settings.Core
842
843**返回值**:
844
845| 类型              | 说明                                                         |
846| ----------------- | ------------------------------------------------------------ |
847| Promise\<boolean> | Promise对象。<br/>返回true,表示应用能够以悬浮窗形式显示。返回false,表示不能。 |
848
849**示例**:
850
851```js
852settings.canShowFloating().then((status:boolean) => {
853    console.log('Checks whether a specified application can show as float window.');
854});
855```
856
857## settings.getUriSync<sup>8+</sup>
858
859getUriSync(name: string): string
860
861获取数据项的URI(暂不支持)。
862
863**系统能力**:SystemCapability.Applications.Settings.Core
864
865**参数**:
866
867| 参数名 | 类型   | 必填 | 说明                                                            |
868| ------ | ------ | ---- |---------------------------------------------------------------|
869| name   | string | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。 |
870
871**返回值**:
872
873| 类型   | 说明          |
874| ------ | ------------- |
875| string | 数据项的URI。 |
876
877**示例**:
878
879```js
880// 获取数据项的URI。
881let uriVar:string = settings.getUriSync(settings.display.SCREEN_BRIGHTNESS_STATUS);
882```
883
884## settings.getURI<sup>(deprecated)</sup>
885
886getURI(name: string, callback: AsyncCallback\<object>): void
887
888获取数据项的URI。使用callback异步回调(暂不支持)。
889
890> **说明:**
891>
892> 从 API version 7开始支持,从API version 9开始废弃,此接口不再提供代替接口。
893
894**系统能力**:SystemCapability.Applications.Settings.Core
895
896**参数**:
897
898| 参数名   | 类型                   | 必填 | 说明                                                            |
899| -------- | ---------------------- | ---- |---------------------------------------------------------------|
900| name     | string                 | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。 |
901| callback | AsyncCallback\<object> | 是   | 回调函数。获取数据项的URI。                                               |
902
903**示例**:
904
905```js
906settings.getURI(settings.display.SCREEN_BRIGHTNESS_STATUS, (uri:string) => {
907    console.log(`callback:uri -> ${JSON.stringify(uri)}`)
908})
909```
910
911## settings.getURI<sup>(deprecated)</sup>
912
913getURI(name: string): Promise\<object>
914
915获取数据项的URI。使用Promise异步回调(暂不支持)。
916
917> **说明:**
918>
919> 从 API version 7开始支持,从API version 9开始废弃,此接口不再提供代替接口。
920
921**系统能力**:SystemCapability.Applications.Settings.Core
922
923**参数**:
924
925| 参数名 | 类型   | 必填 | 说明                                                            |
926| ------ | ------ | ---- |---------------------------------------------------------------|
927| name   | string | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。 |
928
929**返回值**:
930
931| 类型             | 说明                                 |
932| ---------------- | ------------------------------------ |
933| Promise\<object> | Promise对象。返回获取的数据项的URI。 |
934
935**示例**:
936
937```js
938settings.getURI(settings.display.SCREEN_BRIGHTNESS_STATUS).then((uri:string) => {
939    console.log(`promise:uri -> ${JSON.stringify(uri)}`)
940})
941```
942
943
944
945## settings.getValue<sup>(deprecated)</sup>
946
947getValue(dataAbilityHelper: DataAbilityHelper, name: string, callback: AsyncCallback\<object>): void
948
949获取数据库中DEVICE_SHARD域指定数据项的值。使用callback异步回调。
950
951> **说明:**
952>
953> 从 API version 7开始支持,从API version 9开始废弃,建议使用[getValue()](#settingsgetvalue10)替代。
954
955**模型约束**:此接口仅可在FA模型下使用。
956
957**系统能力**:SystemCapability.Applications.Settings.Core
958
959**参数**:
960
961| 参数名            | 类型                                                         | 必填 | 说明                                                            |
962| ----------------- | ------------------------------------------------------------ | ---- |---------------------------------------------------------------|
963| dataAbilityHelper | [DataAbilityHelper](../apis-ability-kit/js-apis-inner-ability-dataAbilityHelper.md) | 是   | 数据管理辅助类。                                                      |
964| name              | string                                                       | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。 |
965| callback          | AsyncCallback\<object>                                       | 是   | 使用callback方式获取数据项的值。                                          |
966
967**示例**:
968
969```js
970import featureAbility from '@ohos.ability.featureAbility';
971
972let uri:string = settings.getUriSync(settings.display.SCREEN_BRIGHTNESS_STATUS);
973let helper = featureAbility.acquireDataAbilityHelper(uri);
974settings.getValue(helper, settings.display.SCREEN_BRIGHTNESS_STATUS, (err:Error, value:string) => {
975    if (err) {
976        console.error(`Failed to get the setting. ${err.message} `);
977        return;
978    }
979    console.log(`callback:value -> ${JSON.stringify(value)}`)
980});
981```
982
983## settings.getValue<sup>(deprecated)</sup>
984
985getValue(dataAbilityHelper: DataAbilityHelper, name: string): Promise\<object>
986
987获取数据库中DEVICE_SHARD域指定数据项的值。使用Promise异步回调。
988
989> **说明:**
990>
991> 从 API version 7开始支持,从API version 9开始废弃,建议使用[getValue()](#settingsgetvalue10-1)替代。
992
993**模型约束**:此接口仅可在FA模型下使用。
994
995**系统能力**:SystemCapability.Applications.Settings.Core
996
997**参数**:
998
999| 参数名            | 类型                                                         | 必填 | 说明                                                            |
1000| ----------------- | ------------------------------------------------------------ | ---- |---------------------------------------------------------------|
1001| dataAbilityHelper | [DataAbilityHelper](../apis-ability-kit/js-apis-inner-ability-dataAbilityHelper.md) | 是   | 数据管理辅助类。                                                      |
1002| name              | string                                                       | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。 |
1003
1004**返回值**:
1005
1006| 类型             | 说明                    |
1007| ---------------- |-----------------------|
1008| Promise\<object> | Promise对象。返回获取的数据项的值。 |
1009
1010**示例**:
1011
1012```js
1013import featureAbility from '@ohos.ability.featureAbility';
1014
1015let uri:string = settings.getUriSync(settings.display.SCREEN_BRIGHTNESS_STATUS);
1016let helper = featureAbility.acquireDataAbilityHelper(uri);
1017settings.getValue(helper, settings.display.SCREEN_BRIGHTNESS_STATUS).then((value:string) => {
1018    console.log(`promise:value -> ${JSON.stringify(value)}`)
1019});
1020```
1021
1022## settings.getValueSync<sup>(deprecated)</sup>
1023
1024getValueSync(dataAbilityHelper: DataAbilityHelper, name: string, defValue: string): string
1025
1026获取数据项的值。此方法相较getValue为同步方法。
1027
1028> **说明:**
1029>
1030> 从 API version 8开始支持,从API version 9开始废弃,建议使用[getValueSync()](#settingsgetvaluesync10)替代。
1031
1032**模型约束**:此接口仅可在FA模型下使用。
1033
1034**系统能力**:SystemCapability.Applications.Settings.Core
1035
1036**参数**:
1037
1038| 参数名            | 类型                                                         | 必填 | 说明                                                           |
1039| ----------------- | ------------------------------------------------------------ | ---- |--------------------------------------------------------------|
1040| dataAbilityHelper | [DataAbilityHelper](../apis-ability-kit/js-apis-inner-ability-dataAbilityHelper.md) | 是   | 数据管理辅助类。                                                     |
1041| name              | string                                                       | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。 |
1042| defValue          | string                                                       | 是   | 默认值。由开发者设置,在数据库中查询不到该数据时,返回默认值。                              |
1043
1044**返回值**:
1045
1046| 类型   | 说明             |
1047| ------ | ---------------- |
1048| string | 返回数据项的值。 |
1049
1050**示例**:
1051
1052```js
1053import featureAbility from '@ohos.ability.featureAbility';
1054
1055// 获取数据项亮度的值(该数据项在数据库中已存在)。
1056let uri:string = settings.getUriSync(settings.display.SCREEN_BRIGHTNESS_STATUS);
1057let helper = featureAbility.acquireDataAbilityHelper(uri);
1058let value:string = settings.getValueSync(helper, settings.display.SCREEN_BRIGHTNESS_STATUS, '10');
1059```
1060
1061## settings.setValueSync<sup>(deprecated)</sup>
1062
1063setValueSync(dataAbilityHelper: DataAbilityHelper, name: string, value: string): boolean
1064
1065设置数据项的值。此方法相较setValue为同步方法。
1066
1067- 如果数据库中已经存在该数据项,setValueSync方法将更新该数据项的值。
1068- 如果数据库中不存在该数据项,setValueSync方法将向数据库中插入该数据项。
1069
1070> **说明:**
1071>
1072> 从 API version 8开始支持,从API version 9开始废弃,建议使用[setValueSync()](#settingssetvaluesync10)替代。
1073
1074**模型约束**:此接口仅可在FA模型下使用。
1075
1076**需要权限**:ohos.permission.MANAGE_SETTINGS,该权限仅系统应用可用。
1077
1078**系统能力**:SystemCapability.Applications.Settings.Core
1079
1080**参数**:
1081
1082| 参数名            | 类型                                                         | 必填 | 说明                                                            |
1083| ----------------- | ------------------------------------------------------------ | ---- |---------------------------------------------------------------|
1084| dataAbilityHelper | [DataAbilityHelper](../apis-ability-kit/js-apis-inner-ability-dataAbilityHelper.md) | 是   | 数据管理辅助类。                                                      |
1085| name              | string                                                       | 是   | 数据项的名称。数据项名称分为以下两种:<br>- 上述任意一个数据库中已存在的数据项。<br>- 开发者自行添加的数据项。 |
1086| value             | string                                                       | 是   | 数据项的具体数值。取值范围随业务变动。                                           |
1087
1088**返回值**:
1089
1090| 类型    | 说明                                                         |
1091| ------- | ------------------------------------------------------------ |
1092| boolean | 返回设置数据项的值是否成功的结果。true表示设置成功,false表示设置失败。 |
1093
1094**示例**:
1095
1096```js
1097import featureAbility from '@ohos.ability.featureAbility';
1098
1099// 更新数据项亮度的值(该数据项在数据库中已存在,故setValueSync方法将更新该数据项的值)。
1100let uri:string = settings.getUriSync(settings.display.SCREEN_BRIGHTNESS_STATUS);
1101let helper = featureAbility.acquireDataAbilityHelper(uri);
1102let ret:string = settings.setValueSync(helper, settings.display.SCREEN_BRIGHTNESS_STATUS, '100');
1103```