• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="utf-8"?>
2<!--
3/*
4** Copyright 2009, The Android Open Source Project
5**
6** Licensed under the Apache License, Version 2.0 (the "License");
7** you may not use this file except in compliance with the License.
8** You may obtain a copy of the License at
9**
10**     http://www.apache.org/licenses/LICENSE-2.0
11**
12** Unless required by applicable law or agreed to in writing, software
13** distributed under the License is distributed on an "AS IS" BASIS,
14** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15** See the License for the specific language governing permissions and
16** limitations under the License.
17*/
18-->
19
20<!-- These resources are around just to allow their values to be customized
21     for different hardware and product builds.  Do not translate.
22
23     NOTE: The naming convention is "config_camelCaseValue". Some legacy
24     entries do not follow the convention, but all new entries should. -->
25
26<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
27    <!-- Do not translate. Defines the slots for the right-hand side icons.  That is to say, the
28         icons in the status bar that are not notifications. -->
29    <string-array name="config_statusBarIcons">
30        <item><xliff:g id="id">@string/status_bar_no_calling</xliff:g></item>
31        <item><xliff:g id="id">@string/status_bar_call_strength</xliff:g></item>
32        <item><xliff:g id="id">@string/status_bar_alarm_clock</xliff:g></item>
33        <item><xliff:g id="id">@string/status_bar_rotate</xliff:g></item>
34        <item><xliff:g id="id">@string/status_bar_headset</xliff:g></item>
35        <item><xliff:g id="id">@string/status_bar_data_saver</xliff:g></item>
36        <item><xliff:g id="id">@string/status_bar_ime</xliff:g></item>
37        <item><xliff:g id="id">@string/status_bar_sync_failing</xliff:g></item>
38        <item><xliff:g id="id">@string/status_bar_sync_active</xliff:g></item>
39        <item><xliff:g id="id">@string/status_bar_nfc</xliff:g></item>
40        <item><xliff:g id="id">@string/status_bar_tty</xliff:g></item>
41        <item><xliff:g id="id">@string/status_bar_speakerphone</xliff:g></item>
42        <item><xliff:g id="id">@string/status_bar_cdma_eri</xliff:g></item>
43        <item><xliff:g id="id">@string/status_bar_data_connection</xliff:g></item>
44        <item><xliff:g id="id">@string/status_bar_phone_evdo_signal</xliff:g></item>
45        <item><xliff:g id="id">@string/status_bar_phone_signal</xliff:g></item>
46        <item><xliff:g id="id">@string/status_bar_secure</xliff:g></item>
47        <item><xliff:g id="id">@string/status_bar_managed_profile</xliff:g></item>
48        <item><xliff:g id="id">@string/status_bar_cast</xliff:g></item>
49        <item><xliff:g id="id">@string/status_bar_screen_record</xliff:g></item>
50        <item><xliff:g id="id">@string/status_bar_vpn</xliff:g></item>
51        <item><xliff:g id="id">@string/status_bar_bluetooth</xliff:g></item>
52        <item><xliff:g id="id">@string/status_bar_camera</xliff:g></item>
53        <item><xliff:g id="id">@string/status_bar_microphone</xliff:g></item>
54        <item><xliff:g id="id">@string/status_bar_location</xliff:g></item>
55        <item><xliff:g id="id">@string/status_bar_mute</xliff:g></item>
56        <item><xliff:g id="id">@string/status_bar_volume</xliff:g></item>
57        <item><xliff:g id="id">@string/status_bar_zen</xliff:g></item>
58        <item><xliff:g id="id">@string/status_bar_ethernet</xliff:g></item>
59        <item><xliff:g id="id">@string/status_bar_wifi</xliff:g></item>
60        <item><xliff:g id="id">@string/status_bar_hotspot</xliff:g></item>
61        <item><xliff:g id="id">@string/status_bar_mobile</xliff:g></item>
62        <item><xliff:g id="id">@string/status_bar_airplane</xliff:g></item>
63        <item><xliff:g id="id">@string/status_bar_battery</xliff:g></item>
64        <item><xliff:g id="id">@string/status_bar_sensors_off</xliff:g></item>
65    </string-array>
66
67    <string translatable="false" name="status_bar_rotate">rotate</string>
68    <string translatable="false" name="status_bar_headset">headset</string>
69    <string translatable="false" name="status_bar_data_saver">data_saver</string>
70    <string translatable="false" name="status_bar_managed_profile">managed_profile</string>
71    <string translatable="false" name="status_bar_ime">ime</string>
72    <string translatable="false" name="status_bar_sync_failing">sync_failing</string>
73    <string translatable="false" name="status_bar_sync_active">sync_active</string>
74    <string translatable="false" name="status_bar_cast">cast</string>
75    <string translatable="false" name="status_bar_hotspot">hotspot</string>
76    <string translatable="false" name="status_bar_location">location</string>
77    <string translatable="false" name="status_bar_bluetooth">bluetooth</string>
78    <string translatable="false" name="status_bar_nfc">nfc</string>
79    <string translatable="false" name="status_bar_tty">tty</string>
80    <string translatable="false" name="status_bar_speakerphone">speakerphone</string>
81    <string translatable="false" name="status_bar_zen">zen</string>
82    <string translatable="false" name="status_bar_mute">mute</string>
83    <string translatable="false" name="status_bar_volume">volume</string>
84    <string translatable="false" name="status_bar_wifi">wifi</string>
85    <string translatable="false" name="status_bar_cdma_eri">cdma_eri</string>
86    <string translatable="false" name="status_bar_data_connection">data_connection</string>
87    <string translatable="false" name="status_bar_phone_evdo_signal">phone_evdo_signal</string>
88    <string translatable="false" name="status_bar_phone_signal">phone_signal</string>
89    <string translatable="false" name="status_bar_battery">battery</string>
90    <string translatable="false" name="status_bar_alarm_clock">alarm_clock</string>
91    <string translatable="false" name="status_bar_secure">secure</string>
92    <string translatable="false" name="status_bar_clock">clock</string>
93    <string translatable="false" name="status_bar_mobile">mobile</string>
94    <string translatable="false" name="status_bar_vpn">vpn</string>
95    <string translatable="false" name="status_bar_ethernet">ethernet</string>
96    <string translatable="false" name="status_bar_microphone">microphone</string>
97    <string translatable="false" name="status_bar_camera">camera</string>
98    <string translatable="false" name="status_bar_airplane">airplane</string>
99    <string translatable="false" name="status_bar_no_calling">no_calling</string>
100    <string translatable="false" name="status_bar_call_strength">call_strength</string>
101    <string translatable="false" name="status_bar_sensors_off">sensors_off</string>
102    <string translatable="false" name="status_bar_screen_record">screen_record</string>
103
104    <!-- Flag indicating whether the surface flinger has limited
105         alpha compositing functionality in hardware.  If set, the window
106         manager will disable alpha trasformation in animations where not
107         strictly needed. -->
108    <bool name="config_sf_limitedAlpha">false</bool>
109
110    <!-- Default value used to block data calls if ims is not
111         connected.  If you use the ims apn DCT will block
112         any other apn from connecting until ims apn is connected-->
113    <bool name="ImsConnectedDefaultValue">false</bool>
114
115    <!-- Flag indicating whether the surface flinger is inefficient
116         at performing a blur.  Used by parts of the UI to turn off
117         the blur effect where it isn't worth the performance hit.
118         As of Honeycomb, blurring is not supported anymore. -->
119    <bool name="config_sf_slowBlur">true</bool>
120
121    <!-- Flag indicating that the media framework should support playing of sounds on volume
122         key usage.  This adds noticeable additional overhead to volume key processing, so
123         is disableable for products for which it is irrelevant. -->
124    <bool name="config_useVolumeKeySounds">true</bool>
125
126    <!-- The attenuation in dB applied to the sound effects played
127         through AudioManager.playSoundEffect() when no volume is specified. -->
128    <integer name="config_soundEffectVolumeDb">-6</integer>
129
130    <!-- The attenuation in dB applied to the lock/unlock sounds. -->
131    <integer name="config_lockSoundVolumeDb">-6</integer>
132
133    <!-- Flag indicating whether the AUDIO_BECOMING_NOISY notification should
134         be sent during a change to the audio output device. -->
135    <bool name="config_sendAudioBecomingNoisy">true</bool>
136
137    <!-- Whether Hearing Aid profile is supported -->
138    <bool name="config_hearing_aid_profile_supported">false</bool>
139
140    <!-- Flag to disable all transition animations -->
141    <bool name="config_disableTransitionAnimation">false</bool>
142
143    <!-- The duration (in milliseconds) of a short animation. -->
144    <integer name="config_shortAnimTime">200</integer>
145
146    <!-- The duration (in milliseconds) of a medium-length animation. -->
147    <integer name="config_mediumAnimTime">400</integer>
148
149    <!-- The duration (in milliseconds) of a long animation. -->
150    <integer name="config_longAnimTime">500</integer>
151
152    <!-- The duration (in milliseconds) of the activity open/close and fragment open/close animations. -->
153    <integer name="config_activityShortDur">150</integer>
154    <integer name="config_activityDefaultDur">220</integer>
155
156    <!-- Fade out time for screen rotation -->
157    <integer name="config_screen_rotation_fade_out">116</integer>
158
159    <!-- Fade in time for screen rotation -->
160    <integer name="config_screen_rotation_fade_in">200</integer>
161
162    <!-- Fade in delay time for screen rotation -->
163    <integer name="config_screen_rotation_fade_in_delay">83</integer>
164
165    <!-- Total time for 90 degree screen rotation animations -->
166    <integer name="config_screen_rotation_total_90">283</integer>
167
168    <!-- Total time for 180 degree screen rotation animation -->
169    <integer name="config_screen_rotation_total_180">383</integer>
170
171    <!-- Total time for the rotation background color transition -->
172    <integer name="config_screen_rotation_color_transition">200</integer>
173
174    <!-- The duration (in milliseconds) of the tooltip show/hide animations. -->
175    <integer name="config_tooltipAnimTime">150</integer>
176
177    <!-- Duration for the dim animation behind a dialog.  This may be either
178         a percentage, which is relative to the duration of the enter/open
179         animation of the window being shown that is dimming behind, or it may
180         be an integer for a constant duration. -->
181    <fraction name="config_dimBehindFadeDuration">100%</fraction>
182
183    <!-- The maximum width we would prefer dialogs to be.  0 if there is no
184         maximum (let them grow as large as the screen).  Actual values are
185         specified for -large and -xlarge configurations. -->
186    <dimen name="config_prefDialogWidth">320dp</dimen>
187
188    <!-- Enables or disables fading edges when marquee is enabled in TextView.
189         Off by default, since the framebuffer readback used to implement the
190         fading edges is prohibitively expensive on most GPUs. -->
191    <bool name="config_ui_enableFadingMarquee">false</bool>
192
193    <!-- Enables or disables haptic effect when the text insertion/selection handle is moved
194         manually by the user. Off by default, since the expected haptic feedback may not be
195         available on some devices. -->
196    <bool name="config_enableHapticTextHandle">false</bool>
197
198    <!-- Whether dialogs should close automatically when the user touches outside
199         of them.  This should not normally be modified. -->
200    <bool name="config_closeDialogWhenTouchOutside">true</bool>
201
202    <!-- Device configuration indicating whether we should avoid using accelerated graphics
203         in certain places to reduce RAM footprint.  This is ignored if ro.config.low_ram
204         is true (in that case this is assumed true as well).  It can allow you to tune down
205         your device's memory use without going to the point of causing applications to turn
206         off features. -->
207    <bool name="config_avoidGfxAccel">false</bool>
208
209    <!-- Device configuration setting the minfree tunable in the lowmemorykiller in the kernel.
210         A high value will cause the lowmemorykiller to fire earlier, keeping more memory
211         in the file cache and preventing I/O thrashing, but allowing fewer processes to
212         stay in memory.  A low value will keep more processes in memory but may cause
213         thrashing if set too low.  Overrides the default value chosen by ActivityManager
214         based on screen size and total memory for the largest lowmemorykiller bucket, and
215         scaled proportionally to the smaller buckets.  -1 keeps the default. -->
216    <integer name="config_lowMemoryKillerMinFreeKbytesAbsolute">-1</integer>
217
218    <!-- Device configuration adjusting the minfree tunable in the lowmemorykiller in the
219         kernel.  A high value will cause the lowmemorykiller to fire earlier, keeping more
220         memory in the file cache and preventing I/O thrashing, but allowing fewer processes
221         to stay in memory.  A low value will keep more processes in memory but may cause
222         thrashing if set too low.  Directly added to the default value chosen by
223         ActivityManager based on screen size and total memory for the largest lowmemorykiller
224         bucket, and scaled proportionally to the smaller buckets. 0 keeps the default. -->
225    <integer name="config_lowMemoryKillerMinFreeKbytesAdjust">0</integer>
226
227    <!-- Device configuration setting the /proc/sys/vm/extra_free_kbytes tunable in the kernel
228         (if it exists).  A high value will increase the amount of memory that the kernel
229         tries to keep free, reducing allocation time and causing the lowmemorykiller to kill
230         earlier.  A low value allows more memory to be used by processes but may cause more
231         allocations to block waiting on disk I/O or lowmemorykiller.  Overrides the default
232         value chosen by ActivityManager based on screen size.  0 prevents keeping any extra
233         memory over what the kernel keeps by default.  -1 keeps the default. -->
234    <integer name="config_extraFreeKbytesAbsolute">-1</integer>
235
236    <!-- Device configuration adjusting the /proc/sys/vm/extra_free_kbytes tunable in the kernel
237         (if it exists).  0 uses the default value chosen by ActivityManager.  A positive value
238         will increase the amount of memory that the kernel tries to keep free, reducing
239         allocation time and causing the lowmemorykiller to kill earlier.  A negative value
240         allows more memory to be used by processes but may cause more allocations to block
241         waiting on disk I/O or lowmemorykiller.  Directly added to the default value chosen by
242         ActivityManager based on screen size. -->
243    <integer name="config_extraFreeKbytesAdjust">0</integer>
244
245    <!-- Set this to true to enable the platform's auto-power-save modes like doze and
246         app standby.  These are not enabled by default because they require a standard
247         cloud-to-device messaging service for apps to interact correctly with the modes
248         (such as to be able to deliver an instant message to the device even when it is
249         dozing).  This should be enabled if you have such services and expect apps to
250         correctly use them when installed on your device.  Otherwise, keep this disabled
251         so that applications can still use their own mechanisms. -->
252    <bool name="config_enableAutoPowerModes">false</bool>
253
254    <!-- Whether (if true) this is a kind of device that can be moved around (eg. phone/laptop),
255         or (if false) something for which movement is either not measurable or should not count
256         toward power states (eg. tv/soundbar). -->
257    <bool name="config_autoPowerModeUseMotionSensor">true</bool>
258
259    <!-- The threshold angle for any motion detection in auto-power save modes.
260         In hundreths of a degree. -->
261    <integer name="config_autoPowerModeThresholdAngle">200</integer>
262
263    <!-- The sensor id of an "any motion" sensor used in auto-power save modes.
264         0 indicates this sensor is not available. -->
265    <integer name="config_autoPowerModeAnyMotionSensor">0</integer>
266
267    <!-- If an any motion sensor is not available, prefer the wrist tilt detector over the
268         SMD. -->
269    <bool name="config_autoPowerModePreferWristTilt">false</bool>
270
271    <!-- If a location should be pre-fetched when going into device idle. -->
272    <bool name="config_autoPowerModePrefetchLocation">true</bool>
273
274    <!-- The duration (in milliseconds) that the radio will scan for a signal
275         when there's no network connection. If the scan doesn't timeout, use zero -->
276    <integer name="config_radioScanningTimeout">0</integer>
277
278    <!-- XXXXX NOTE THE FOLLOWING RESOURCES USE THE WRONG NAMING CONVENTION.
279         Please don't copy them, copy anything else. -->
280
281    <!-- This string array should be overridden by the device to present a list of network
282         attributes.  This is used by the connectivity manager to decide which networks can coexist
283         based on the hardware -->
284    <!-- An Array of "[Connection name],[ConnectivityManager.TYPE_xxxx],
285         [associated radio-type],[priority],[restoral-timer(ms)],[dependencyMet]  -->
286    <!-- the 5th element "resore-time" indicates the number of milliseconds to delay
287         before automatically restore the default connection.  Set -1 if the connection
288         does not require auto-restore. -->
289    <!-- the 6th element indicates boot-time dependency-met value. -->
290    <!-- NOTE: The telephony module is no longer reading the configuration below for available
291         APN types.  The set of APN types and relevant settings are specified within the telephony
292         module and are non-configurable.  Whether or not data connectivity over a cellular network
293         is available at all is controlled by the flag: config_moble_data_capable. -->
294    <string-array translatable="false" name="networkAttributes">
295        <item>"wifi,1,1,1,-1,true"</item>
296        <item>"mobile,0,0,0,-1,true"</item>
297        <item>"mobile_mms,2,0,2,60000,true"</item>
298        <item>"mobile_supl,3,0,2,60000,true"</item>
299        <item>"mobile_dun,4,0,2,60000,true"</item>
300        <item>"mobile_hipri,5,0,3,60000,true"</item>
301        <item>"mobile_fota,10,0,2,60000,true"</item>
302        <item>"mobile_ims,11,0,2,60000,true"</item>
303        <item>"mobile_cbs,12,0,2,60000,true"</item>
304        <item>"wifi_p2p,13,1,0,-1,true"</item>
305        <item>"mobile_ia,14,0,2,-1,true"</item>
306        <item>"mobile_emergency,15,0,2,-1,true"</item>
307    </string-array>
308
309    <!-- Array of ConnectivityManager.TYPE_xxxx constants for networks that may only
310         be controlled by systemOrSignature apps.  -->
311    <integer-array translatable="false" name="config_protectedNetworks">
312        <item>10</item>
313        <item>11</item>
314        <item>12</item>
315        <item>14</item>
316        <item>15</item>
317    </integer-array>
318
319    <!-- This string array should be overridden by the device to present a list of radio
320         attributes.  This is used by the connectivity manager to decide which networks can coexist
321         based on the hardware -->
322    <!-- An Array of "[ConnectivityManager connectionType],
323                      [# simultaneous connection types]"  -->
324    <string-array translatable="false" name="radioAttributes">
325        <item>"1,1"</item>
326        <item>"0,1"</item>
327    </string-array>
328
329    <!-- Whether/how to notify the user on network switches. See LingerMonitor.java. -->
330    <integer translatable="false" name="config_networkNotifySwitchType">0</integer>
331
332    <!-- What types of network switches to notify. See LingerMonitor.java. -->
333    <string-array translatable="false" name="config_networkNotifySwitches">
334    </string-array>
335
336    <!-- Whether the device should automatically switch away from Wi-Fi networks that lose
337         Internet access. Actual device behaviour is controlled by
338         Settings.Global.NETWORK_AVOID_BAD_WIFI. This is the default value of that setting. -->
339    <integer translatable="false" name="config_networkAvoidBadWifi">1</integer>
340
341    <!-- If the hardware supports specially marking packets that caused a wakeup of the
342         main CPU, set this value to the mark used. -->
343    <integer name="config_networkWakeupPacketMark">0</integer>
344
345    <!-- Mask to use when checking skb mark defined in config_networkWakeupPacketMark above. -->
346    <integer name="config_networkWakeupPacketMask">0</integer>
347
348    <!-- Whether the APF Filter in the device should filter out IEEE 802.3 Frames
349         Those frames are identified by the field Eth-type having values
350         less than 0x600 -->
351    <bool translatable="false" name="config_apfDrop802_3Frames">true</bool>
352
353    <!-- An array of Denylisted EtherType, packets with EtherTypes within this array
354         will be dropped
355         TODO: need to put proper values, these are for testing purposes only -->
356    <integer-array translatable="false" name="config_apfEthTypeBlackList">
357        <item>0x88A2</item>
358        <item>0x88A4</item>
359        <item>0x88B8</item>
360        <item>0x88CD</item>
361        <item>0x88E3</item>
362    </integer-array>
363
364    <!-- Default value for ConnectivityManager.getMultipathPreference() on metered networks. Actual
365         device behaviour is controlled by Settings.Global.NETWORK_METERED_MULTIPATH_PREFERENCE.
366         This is the default value of that setting. -->
367    <integer translatable="false" name="config_networkMeteredMultipathPreference">0</integer>
368
369    <!-- Default daily multipath budget used by ConnectivityManager.getMultipathPreference()
370         on metered networks. This default quota only used if quota could not be determined from
371         data plan or data limit/warning set by the user. The value that is actually used is
372         controlled by Settings.Global.NETWORK_DEFAULT_DAILY_MULTIPATH_QUOTA_BYTES. This is the
373         default value of that setting. -->
374    <integer translatable="false" name="config_networkDefaultDailyMultipathQuotaBytes">2500000</integer>
375
376    <!-- Default supported concurrent socket keepalive slots per transport type, used by
377         ConnectivityManager.createSocketKeepalive() for calculating the number of keepalive
378         offload slots that should be reserved for privileged access. This string array should be
379         overridden by the device to present the capability of creating socket keepalives. -->
380    <!-- An Array of "[NetworkCapabilities.TRANSPORT_*],[supported keepalives] -->
381    <string-array translatable="false" name="config_networkSupportedKeepaliveCount">
382        <item>0,1</item>
383        <item>1,3</item>
384    </string-array>
385
386    <!-- Reserved privileged keepalive slots per transport. -->
387    <integer translatable="false" name="config_reservedPrivilegedKeepaliveSlots">2</integer>
388
389    <!-- Allowed unprivileged keepalive slots per uid. -->
390    <integer translatable="false" name="config_allowedUnprivilegedKeepalivePerUid">2</integer>
391
392    <!-- This setting is deprecated, please use
393         com.android.networkstack.tethering.R.array.config_tether_usb_regexs instead. -->
394    <string-array translatable="false" name="config_tether_usb_regexs">
395    </string-array>
396
397    <!-- This setting is deprecated, please use
398         com.android.networkstack.tethering.R.array.config_tether_wifi_regexs instead. -->
399    <string-array translatable="false" name="config_tether_wifi_regexs">
400    </string-array>
401
402    <!-- This setting is deprecated, please use
403         com.android.networkstack.tethering.R.array.config_tether_bluetooth_regexs instead. -->
404    <string-array translatable="false" name="config_tether_bluetooth_regexs">
405    </string-array>
406
407    <!-- Max number of Bluetooth tethering connections allowed. If this is
408         updated config_tether_dhcp_range has to be updated appropriately. -->
409    <integer translatable="false" name="config_max_pan_devices">5</integer>
410
411    <!-- This setting is deprecated, please use
412         com.android.networkstack.tethering.R.array.config_dhcp_range instead. -->
413    <string-array translatable="false" name="config_tether_dhcp_range">
414    </string-array>
415
416    <!-- Regex of wired ethernet ifaces -->
417    <string translatable="false" name="config_ethernet_iface_regex">eth\\d</string>
418
419    <!-- Configuration of Ethernet interfaces in the following format:
420         <interface name|mac address>;[Network Capabilities];[IP config];[Override Transport]
421         Where
422               [Network Capabilities] Optional. A comma seprated list of network capabilities.
423                   Values must be from NetworkCapabilities#NET_CAPABILITY_* constants.
424                   The NOT_ROAMING, NOT_CONGESTED and NOT_SUSPENDED capabilities are always
425                   added automatically because this configuration provides no way to update
426                   them dynamically.
427               [IP config] Optional. If empty or not specified - DHCP will be used, otherwise
428                   use the following format to specify static IP configuration:
429                       ip=<ip-address/mask> gateway=<ip-address> dns=<comma-sep-ip-addresses>
430                       domains=<comma-sep-domains>
431               [Override Transport] Optional. An override network transport type to allow
432                    the propagation of an interface type on the other end of a local Ethernet
433                    interface. Value must be from NetworkCapabilities#TRANSPORT_* constants. If
434                    left out, this will default to TRANSPORT_ETHERNET.
435         -->
436    <string-array translatable="false" name="config_ethernet_interfaces">
437        <!--
438        <item>eth1;12,13,14,15;ip=192.168.0.10/24 gateway=192.168.0.1 dns=4.4.4.4,8.8.8.8</item>
439        <item>eth2;;ip=192.168.0.11/24</item>
440        <item>eth3;12,13,14,15;ip=192.168.0.12/24;1</item>
441        -->
442    </string-array>
443
444    <!-- Whether the internal vehicle network should remain active even when no
445         apps requested it. -->
446    <bool name="config_vehicleInternalNetworkAlwaysRequested">false</bool>
447
448    <!-- This setting is deprecated, please use
449         com.android.networkstack.tethering.R.array.config_mobile_hotspot_provision_app instead. -->
450    <string-array translatable="false" name="config_mobile_hotspot_provision_app">
451    <!--
452        <item>com.example.provisioning</item>
453        <item>com.example.provisioning.Activity</item>
454    -->
455    </string-array>
456
457    <!-- This setting is deprecated, please use
458         com.android.networkstack.tethering.R.string.config_mobile_hotspot_provision_app_no_ui
459         instead. -->
460    <string translatable="false" name="config_mobile_hotspot_provision_app_no_ui"></string>
461
462    <!-- This setting is deprecated, please use
463         com.android.networkstack.tethering.R.string.config_mobile_hotspot_provision_response
464         instead. -->
465    <string translatable="false" name="config_mobile_hotspot_provision_response"></string>
466
467    <!-- This setting is deprecated, please use
468         com.android.networkstack.tethering.R.integer.config_mobile_hotspot_provision_check_period
469         instead. -->
470    <integer translatable="false" name="config_mobile_hotspot_provision_check_period">24</integer>
471
472    <!-- This setting is deprecated, please use
473         com.android.networkstack.tethering.R.string.config_wifi_tether_enable instead. -->
474    <string translatable="false" name="config_wifi_tether_enable">com.android.settings/.wifi.tether.TetherService</string>
475
476    <!-- This setting is deprecated, please use
477         com.android.networkstack.tethering.R.array.config_tether_upstream_types. -->
478    <integer-array translatable="false" name="config_tether_upstream_types">
479        <item>1</item>
480        <item>7</item>
481        <item>0</item>
482    </integer-array>
483
484    <!-- If the DUN connection for this CDMA device supports more than just DUN -->
485    <!-- traffic you should list them here. -->
486    <!-- If this device is not CDMA this is ignored.  If this list is empty on -->
487    <!-- a DUN-requiring CDMA device, the DUN APN will just support just DUN. -->
488    <string-array translatable="false" name="config_cdma_dun_supported_types">
489    </string-array>
490
491    <!-- Flag indicating whether we should enable the automatic brightness.
492         Software implementation will be used if config_hardware_auto_brightness_available is not set -->
493    <bool name="config_automatic_brightness_available">false</bool>
494
495    <!-- Flag indicating whether we should enable the adaptive sleep.-->
496    <bool name="config_adaptive_sleep_available">false</bool>
497
498    <!-- Flag indicating whether we should enable smart battery. -->
499    <bool name="config_smart_battery_available">false</bool>
500
501    <!-- Flag indicating whether we should enable camera-based autorotate -->
502    <bool name="config_camera_autorotate">false</bool>
503
504    <!-- Fast brightness animation ramp rate in brightness units per second-->
505    <integer translatable="false" name="config_brightness_ramp_rate_fast">180</integer>
506
507    <!-- Slow brightness animation ramp rate in brightness units per second-->
508    <integer translatable="false" name="config_brightness_ramp_rate_slow">60</integer>
509
510    <!-- Don't name config resources like this.  It should look like config_annoyDianne -->
511    <bool name="config_annoy_dianne">true</bool>
512
513    <!-- XXXXXX END OF RESOURCES USING WRONG NAMING CONVENTION -->
514
515    <!-- If this is true, notification effects will be played by the notification server.
516         When false, car notification effects will be handled elsewhere. -->
517    <bool name="config_enableServerNotificationEffectsForAutomotive">false</bool>
518
519    <!-- If this is true, the screen will come on when you unplug usb/power/whatever. -->
520    <bool name="config_unplugTurnsOnScreen">false</bool>
521
522    <!-- If this is true, the message that USB is only being used for charging will be shown. -->
523    <bool name="config_usbChargingMessage">true</bool>
524
525    <!-- Set this true only if the device has separate attention and notification lights. -->
526    <bool name="config_useAttentionLight">false</bool>
527
528    <!-- If this is true, the screen will fade off. -->
529    <bool name="config_animateScreenLights">false</bool>
530
531    <!-- If this is true, key chords can be used to take a screenshot on the device. -->
532    <bool name="config_enableScreenshotChord">true</bool>
533
534    <!-- If this is true, allow wake from theater mode when plugged in or unplugged. -->
535    <bool name="config_allowTheaterModeWakeFromUnplug">false</bool>
536    <!-- If this is true, allow wake from theater mode from gesture. -->
537    <bool name="config_allowTheaterModeWakeFromGesture">false</bool>
538    <!-- If this is true, allow wake from theater mode from camera lens cover is switched. -->
539    <bool name="config_allowTheaterModeWakeFromCameraLens">false</bool>
540    <!-- If this is true, allow wake from theater mode from power key press. -->
541    <bool name="config_allowTheaterModeWakeFromPowerKey">true</bool>
542    <!-- If this is true, allow wake from theater mode from regular key press. Setting this value to
543         true implies config_allowTheaterModeWakeFromPowerKey is also true-->
544    <bool name="config_allowTheaterModeWakeFromKey">false</bool>
545    <!-- If this is true, allow wake from theater mode from motion. -->
546    <bool name="config_allowTheaterModeWakeFromMotion">false</bool>
547    <!-- If this is true, allow wake from theater mode from motion. -->
548    <bool name="config_allowTheaterModeWakeFromMotionWhenNotDreaming">false</bool>
549    <!-- If this is true, allow wake from theater mode from lid switch. -->
550    <bool name="config_allowTheaterModeWakeFromLidSwitch">false</bool>
551    <!-- If this is true, allow wake from theater mode when docked. -->
552    <bool name="config_allowTheaterModeWakeFromDock">false</bool>
553    <!-- If this is true, allow wake from theater mode from window layout flag. -->
554    <bool name="config_allowTheaterModeWakeFromWindowLayout">false</bool>
555    <!-- If this is true, go to sleep when theater mode is enabled from button press -->
556    <bool name="config_goToSleepOnButtonPressTheaterMode">true</bool>
557    <!-- If this is true, long press on power button will be available from the non-interactive state -->
558    <bool name="config_supportLongPressPowerWhenNonInteractive">false</bool>
559
560    <!-- Auto-rotation behavior -->
561
562    <!-- If true, enables auto-rotation features using the accelerometer.
563         Otherwise, auto-rotation is disabled.  Applications may still request
564         to use specific orientations but the sensor is ignored and sensor-based
565         orientations are not available.  Furthermore, all auto-rotation related
566         settings are omitted from the system UI.  In certain situations we may
567         still use the accelerometer to determine the orientation, such as when
568         docked if the dock is configured to enable the accelerometer. -->
569    <bool name="config_supportAutoRotation">true</bool>
570
571    <!-- If true, the screen can be rotated via the accelerometer in all 4
572         rotations as the default behavior. -->
573    <bool name="config_allowAllRotations">false</bool>
574
575    <!-- If true, the direction rotation is applied to get to an application's requested
576         orientation is reversed.  Normally, the model is that landscape is
577         clockwise from portrait; thus on a portrait device an app requesting
578         landscape will cause a clockwise rotation, and on a landscape device an
579         app requesting portrait will cause a counter-clockwise rotation.  Setting
580         true here reverses that logic. -->
581    <bool name="config_reverseDefaultRotation">false</bool>
582
583    <!-- Sets the minimum and maximum tilt tolerance for each possible rotation.
584         This array consists of 4 pairs of values which specify the minimum and maximum
585         tilt angle at which the device will transition into each rotation.
586
587         The tilt angle represents the direction in which the plane of the screen is facing;
588         it is also known as the angle of elevation.
589
590           -90 degree tilt means that the screen is facing straight down
591                           (the device is being held overhead upside-down)
592             0 degree tilt means that the screen is facing outwards
593                           (the device is being held vertically)
594            90 degree tilt means that the screen is facing straight up
595                           (the device is resting on a flat table)
596
597        The default tolerances are set conservatively such that the device is more
598        likely to remain in its natural orientation than rotate into a counterclockwise,
599        clockwise, or reversed posture (with an especially strong bias against the latter)
600        to prevent accidental rotation while carrying the device in hand.
601
602        These thresholds may need to be tuned when the device is intended to be
603        mounted into a dock with a particularly shallow profile wherein rotation
604        would ordinarily have been suppressed.
605
606        It is helpful to consider the desired behavior both when the device is being
607        held at a positive tilt (typical case) vs. a negative tilt (reading overhead in
608        bed) since they are quite different.  In the overhead case, we typically want
609        the device to more strongly prefer to retain its current configuration (in absence
610        of a clear indication that a rotation is desired) since the user's head and neck may
611        be held at an unusual angle.
612    -->
613    <integer-array name="config_autoRotationTiltTolerance">
614        <!-- rotation:   0 (natural)    --> <item>-25</item> <item>70</item>
615        <!-- rotation:  90 (rotate CCW) --> <item>-25</item> <item>65</item>
616        <!-- rotation: 180 (reverse)    --> <item>-25</item> <item>60</item>
617        <!-- rotation: 270 (rotate CW)  --> <item>-25</item> <item>65</item>
618    </integer-array>
619
620    <!-- Lid switch behavior -->
621
622    <!-- The number of degrees to rotate the display when the keyboard is open.
623         A value of -1 means no change in orientation by default. -->
624    <integer name="config_lidOpenRotation">-1</integer>
625
626    <!-- Indicate whether the lid state impacts the accessibility of
627         the physical keyboard.  0 means it doesn't, 1 means it is accessible
628         when the lid is open, 2 means it is accessible when the lid is
629         closed.  The default is 0. -->
630    <integer name="config_lidKeyboardAccessibility">0</integer>
631
632    <!-- Indicate whether the lid state impacts the accessibility of
633         the navigation buttons.  0 means it doesn't, 1 means it is accessible
634         when the lid is open, 2 means it is accessible when the lid is
635         closed.  The default is 0. -->
636    <integer name="config_lidNavigationAccessibility">0</integer>
637
638    <!-- Indicate whether closing the lid causes the lockscreen to appear.
639         The default is false. -->
640    <bool name="config_lidControlsScreenLock">false</bool>
641
642    <!-- Indicate whether closing the lid causes the device to go to sleep and opening
643         it causes the device to wake up.
644         The default is false. -->
645    <bool name="config_lidControlsSleep">false</bool>
646
647    <!-- The device states (supplied by DeviceStateManager) that should be treated as folded by the
648         display fold controller. Default is empty. -->
649    <integer-array name="config_foldedDeviceStates">
650        <!-- Example:
651        <item>0</item>
652        <item>1</item>
653        <item>2</item>
654        -->
655    </integer-array>
656
657    <!-- Indicate the display area rect for foldable devices in folded state. -->
658    <string name="config_foldedArea"></string>
659
660    <!-- Indicates that the device supports having more than one internal display on at the same
661         time. Only applicable to devices with more than one internal display. If this option is
662         set to false, DisplayManager will make additional effort to ensure no more than 1 internal
663         display is powered on at the same time. -->
664    <bool name="config_supportsConcurrentInternalDisplays">true</bool>
665
666    <!-- Desk dock behavior -->
667
668    <!-- The number of degrees to rotate the display when the device is in a desk dock.
669         A value of -1 means no change in orientation by default. -->
670    <integer name="config_deskDockRotation">-1</integer>
671
672    <!-- Control whether being in the desk dock (and powered) always
673         keeps the screen on.  By default it stays on when plugged in to
674         AC.  0 will not keep it on; or together 1 to stay on when plugged
675         in to AC and 2 to stay on when plugged in to USB.  (So 3 for both.) -->
676    <integer name="config_deskDockKeepsScreenOn">1</integer>
677
678    <!-- Control whether being in the desk dock should enable accelerometer
679         based screen orientation.  This defaults to true because it is
680         common for desk docks to be sold in a variety of form factors
681         with different orientations.  Since we cannot always tell these docks
682         apart and the docks cannot report their true orientation on their own,
683         we rely on gravity to determine the effective orientation. -->
684    <bool name="config_deskDockEnablesAccelerometer">true</bool>
685
686    <!-- Car dock behavior -->
687
688    <!-- The number of degrees to rotate the display when the device is in a car dock.
689         A value of -1 means no change in orientation by default. -->
690    <integer name="config_carDockRotation">-1</integer>
691
692    <!-- Control whether being in the car dock (and powered) always
693         keeps the screen on.  By default it stays on when plugged in to
694         AC.  0 will not keep it on; or together 1 to stay on when plugged
695         in to AC and 2 to stay on when plugged in to USB.  (So 3 for both.) -->
696    <integer name="config_carDockKeepsScreenOn">1</integer>
697
698    <!-- Control whether being in the car dock should enable accelerometer based
699         screen orientation.  This defaults to true because putting a device in
700         a car dock make the accelerometer more a physical input (like a lid). -->
701
702    <bool name="config_carDockEnablesAccelerometer">true</bool>
703
704    <!--  Control whether to launch Car dock home app when user presses home button or when
705          car dock intent is fired.
706          In mobile device, usually separate home app is expected in car mode, and this should be
707          enabled. But in environments like real car, default home app may be enough, and in that
708          case, this can be disabled (set to false). -->
709    <bool name="config_enableCarDockHomeLaunch">true</bool>
710
711    <!-- Control whether to force apps to give up control over the display of system bars at all
712         times regardless of System Ui Flags.
713         In the Automotive case, this is helpful if there's a requirement for an UI element to be on
714         screen at all times. Setting this to true also gives System UI the ability to override the
715         visibility controls for the system through the usage of the
716         "SYSTEM_BAR_VISIBILITY_OVERRIDE" setting.
717         Ex: Only setting the config to true will force show system bars for the entire system.
718         Ex: Setting the config to true and the "SYSTEM_BAR_VISIBILITY_OVERRIDE" setting to
719         "immersive.status=apps" will force show navigation bar for all apps and force hide status
720         bar for all apps. -->
721    <bool name="config_remoteInsetsControllerControlsSystemBars">false</bool>
722
723    <!-- HDMI behavior -->
724
725    <!-- The number of degrees to rotate the display when the device has HDMI connected
726         but is not in a dock.  A value of -1 means no change in orientation by default.
727         Use -1 except on older devices whose Hardware Composer HAL does not
728         provide full support for multiple displays.  -->
729    <integer name="config_undockedHdmiRotation">-1</integer>
730
731    <!-- Control the default UI mode type to use when there is no other type override
732         happening.  One of the following values (See Configuration.java):
733             1  UI_MODE_TYPE_NORMAL
734             4  UI_MODE_TYPE_TELEVISION
735             5  UI_MODE_TYPE_APPLIANCE
736             6  UI_MODE_TYPE_WATCH
737             7  UI_MODE_TYPE_VR_HEADSET
738         Any other values will have surprising consequences. -->
739    <integer name="config_defaultUiModeType">1</integer>
740
741    <!--  Control whether to lock UI mode to what is selected from config_defaultUiModeType.
742          Once UI mode is locked, applications cannot change it anymore. -->
743    <bool name="config_lockUiMode">false</bool>
744
745    <!--  Control whether to lock day/night mode change from normal application. When it is
746          true, day / night mode change is only allowed to apps with MODIFY_DAY_NIGHT_MODE
747          permission. -->
748    <bool name="config_lockDayNightMode">true</bool>
749
750    <!-- Control the default night mode to use when there is no other mode override set.
751         One of the following values (see UiModeManager.java):
752             0 - MODE_NIGHT_AUTO
753             1 - MODE_NIGHT_NO
754             2 - MODE_NIGHT_YES
755    -->
756    <integer name="config_defaultNightMode">1</integer>
757
758    <!-- Boolean indicating whether the HWC setColorTransform function can be performed efficiently
759         in hardware. -->
760    <bool name="config_setColorTransformAccelerated">false</bool>
761
762    <!-- Boolean indicating whether the HWC setColorTransform function can be performed efficiently
763         in hardware for individual layers. -->
764    <bool name="config_setColorTransformAcceleratedPerLayer">false</bool>
765
766    <!-- Control whether Night display is available. This should only be enabled on devices
767         that have a HWC implementation that can apply the matrix passed to setColorTransform
768         without impacting power, performance, and app compatibility (e.g. protected content). -->
769    <bool name="config_nightDisplayAvailable">@bool/config_setColorTransformAccelerated</bool>
770
771    <!-- Default mode to control how Night display is automatically activated.
772         One of the following values (see ColorDisplayManager.java):
773             0 - AUTO_MODE_DISABLED
774             1 - AUTO_MODE_CUSTOM_TIME
775             2 - AUTO_MODE_TWILIGHT
776    -->
777    <integer name="config_defaultNightDisplayAutoMode">0</integer>
778
779    <!-- Default time when Night display is automatically activated.
780         Represented as milliseconds from midnight (e.g. 79200000 == 10pm). -->
781    <integer name="config_defaultNightDisplayCustomStartTime">79200000</integer>
782
783    <!-- Default time when Night display is automatically deactivated.
784         Represented as milliseconds from midnight (e.g. 21600000 == 6am). -->
785    <integer name="config_defaultNightDisplayCustomEndTime">21600000</integer>
786
787    <!-- Minimum color temperature, in Kelvin, supported by Night display. -->
788    <integer name="config_nightDisplayColorTemperatureMin">2596</integer>
789
790    <!-- Default color temperature, in Kelvin, to tint the screen when Night display is
791         activated. -->
792    <integer name="config_nightDisplayColorTemperatureDefault">2850</integer>
793
794    <!-- Maximum color temperature, in Kelvin, supported by Night display. -->
795    <integer name="config_nightDisplayColorTemperatureMax">4082</integer>
796
797    <string-array name="config_nightDisplayColorTemperatureCoefficientsNative">
798        <!-- R a-coefficient --> <item>0.0</item>
799        <!-- R b-coefficient --> <item>0.0</item>
800        <!-- R y-intercept --> <item>1.0</item>
801        <!-- G a-coefficient --> <item>-0.00000000962353339</item>
802        <!-- G b-coefficient --> <item>0.000153045476</item>
803        <!-- G y-intercept --> <item>0.390782778</item>
804        <!-- B a-coefficient --> <item>-0.0000000189359041</item>
805        <!-- B b-coefficient --> <item>0.000302412211</item>
806        <!-- B y-intercept --> <item>-0.198650895</item>
807    </string-array>
808
809    <string-array name="config_nightDisplayColorTemperatureCoefficients">
810        <!-- R a-coefficient --> <item>0.0</item>
811        <!-- R b-coefficient --> <item>0.0</item>
812        <!-- R y-intercept --> <item>1.0</item>
813        <!-- G a-coefficient --> <item>-0.00000000962353339</item>
814        <!-- G b-coefficient --> <item>0.000153045476</item>
815        <!-- G y-intercept --> <item>0.390782778</item>
816        <!-- B a-coefficient --> <item>-0.0000000189359041</item>
817        <!-- B b-coefficient --> <item>0.000302412211</item>
818        <!-- B y-intercept --> <item>-0.198650895</item>
819    </string-array>
820
821    <!-- Control whether bright color reduction is available. This should only be enabled on devices
822         that have a HWC implementation that can apply the matrix passed to setColorTransform
823         without impacting power, performance, and app compatibility (e.g. protected content). -->
824    <bool name="config_reduceBrightColorsAvailable">@bool/config_setColorTransformAccelerated</bool>
825
826    <string-array name="config_reduceBrightColorsCoefficientsNonlinear">
827        <!-- a-coefficient --> <item>-0.4429953456</item>
828        <!-- b-coefficient --> <item>-0.2434077725</item>
829        <!-- y-intercept --> <item>0.9809063061</item>
830    </string-array>
831
832    <string-array name="config_reduceBrightColorsCoefficients">
833        <!-- a-coefficient --> <item>-0.000000000000001</item>
834        <!-- b-coefficient --> <item>-0.955555555555554</item>
835        <!-- y-intercept --> <item>1.000000000000000</item>
836    </string-array>
837
838    <!-- Default strength, in percentage, of bright color reduction when activated. -->
839    <integer name="config_reduceBrightColorsStrengthDefault">50</integer>
840
841    <!-- Minimum strength, in percentage, supported by bright color reduction. -->
842    <integer name="config_reduceBrightColorsStrengthMin">25</integer>
843
844    <!-- Maximum strength, in percentage, supported by bright color reduction. -->
845    <integer name="config_reduceBrightColorsStrengthMax">90</integer>
846
847    <!-- Boolean indicating whether display white balance is supported. -->
848    <bool name="config_displayWhiteBalanceAvailable">false</bool>
849
850    <!-- Boolean indicating whether display white balance should be enabled by default. -->
851    <bool name="config_displayWhiteBalanceEnabledDefault">false</bool>
852
853    <!-- Minimum color temperature, in Kelvin, supported by display white balance. -->
854    <integer name="config_displayWhiteBalanceColorTemperatureMin">4000</integer>
855
856    <!-- Maximum color temperature, in Kelvin, supported by display white balance. -->
857    <integer name="config_displayWhiteBalanceColorTemperatureMax">8000</integer>
858
859    <!-- Default color temperature, in Kelvin, used by display white balance. -->
860    <integer name="config_displayWhiteBalanceColorTemperatureDefault">6500</integer>
861
862    <!-- The display primaries, in CIE1931 XYZ color space, for display
863         white balance to use in its calculations. The array must include a total of 12 float
864         values: 3 values per color (X, Y, Z) and 4 colors (R, G, B, W) -->
865    <string-array name="config_displayWhiteBalanceDisplayPrimaries">
866        <!-- Red X -->   <item>0.412315</item>
867        <!-- Red Y -->   <item>0.212600</item>
868        <!-- Red Z -->   <item>0.019327</item>
869        <!-- Green X --> <item>0.357600</item>
870        <!-- Green Y --> <item>0.715200</item>
871        <!-- Green Z --> <item>0.119200</item>
872        <!-- Blue X -->  <item>0.180500</item>
873        <!-- Blue Y -->  <item>0.072200</item>
874        <!-- Blue Z -->  <item>0.950633</item>
875        <!-- White X --> <item>0.950456</item>
876        <!-- White Y --> <item>1.000000</item>
877        <!-- White Z --> <item>1.089058</item>
878    </string-array>
879
880    <!-- The nominal white coordinates, in CIE1931 XYZ color space, for Display White Balance to
881         use in its calculations. AWB will adapt this white point to the target ambient white
882         point. The array must include a total of 3 float values (X, Y, Z) -->
883    <string-array name="config_displayWhiteBalanceDisplayNominalWhite">
884        <!-- Nominal White X --> <item>0.950456</item>
885        <!-- Nominal White Y --> <item>1.000000</item>
886        <!-- Nominal White Z --> <item>1.089058</item>
887    </string-array>
888
889
890    <!-- Indicate available ColorDisplayManager.COLOR_MODE_xxx. -->
891    <integer-array name="config_availableColorModes">
892        <!-- Example:
893        <item>0</item>
894        <item>1</item>
895        <item>2</item>
896        -->
897    </integer-array>
898
899    <!-- Mapping for default ColorDisplayManager.COLOR_MODE_xxx to other color modes, if
900         if applicable. By default, all map to the same value. -->
901    <integer-array name="config_mappedColorModes">
902        <item>0</item> <!-- COLOR_MODE_NATURAL -->
903        <item>1</item> <!-- COLOR_MODE_BOOSTED -->
904        <item>2</item> <!-- COLOR_MODE_SATURATED -->
905        <item>3</item> <!-- COLOR_MODE_AUTOMATIC -->
906    </integer-array>
907
908    <!-- Hint to decide whether restored vendor color modes are compatible with the new device. If
909         unset or a match is not made, only the standard color modes will be restored. If set, it
910         should be a unique identifier for the kinds of vendor modes this device supports, such as a
911         manufacturer name. -->
912    <string name="config_vendorColorModesRestoreHint" translatable="false"></string>
913
914    <!-- Color mode to use when accessibility transforms are enabled. This color mode must be
915         supported by the device, but not necessarily appear in config_availableColorModes. The
916         regularly selected color mode will be used if this value is negative. -->
917    <integer name="config_accessibilityColorMode">-1</integer>
918
919    <!-- The following two arrays specify which color space to use for display composition when a
920         certain color mode is active.
921         Composition color spaces are defined in android.view.Display.COLOR_MODE_xxx, and color
922         modes are defined in ColorDisplayManager.COLOR_MODE_xxx and
923         ColorDisplayManager.VENDOR_COLOR_MODE_xxx.
924         The color space COLOR_MODE_DEFAULT (0) lets the system select the most appropriate
925         composition color space for currently displayed content. Other values (e.g.,
926         COLOR_MODE_SRGB) override system selection; these other color spaces must be supported by
927         the device for for display composition.
928         If a color mode does not have a corresponding color space specified in this array, the
929         currently set composition color space will not be modified.-->
930    <integer-array name="config_displayCompositionColorModes">
931    </integer-array>
932    <integer-array name="config_displayCompositionColorSpaces">
933    </integer-array>
934
935    <!-- Indicate whether to allow the device to suspend when the screen is off
936         due to the proximity sensor.  This resource should only be set to true
937         if the sensor HAL correctly handles the proximity sensor as a wake-up source.
938         Otherwise, the device may fail to wake out of suspend reliably.
939         The default is false. -->
940    <bool name="config_suspendWhenScreenOffDueToProximity">false</bool>
941
942    <!-- The time in milliseconds of prolonged user inactivity after which device goes to sleep,
943         even if wakelocks are held. -->
944    <integer name="config_attentiveTimeout">-1</integer>
945
946    <!-- How long to show a warning message to user before the device goes to sleep after prolonged
947         user inactivity. -->
948    <integer name="config_attentiveWarningDuration">30000</integer>
949
950    <!-- Control the behavior when the user long presses the power button.
951            0 - Nothing
952            1 - Global actions menu
953            2 - Power off (with confirmation)
954            3 - Power off (without confirmation)
955            4 - Go to voice assist
956            5 - Go to assistant (Settings.Secure.ASSISTANT)
957    -->
958    <integer name="config_longPressOnPowerBehavior">5</integer>
959
960    <!-- Whether the setting to change long press on power behaviour from default to assistant (5)
961         is available in Settings.
962     -->
963    <bool name="config_longPressOnPowerForAssistantSettingAvailable">true</bool>
964
965    <!-- Control the behavior when the user long presses the power button for a long time.
966            0 - Nothing
967            1 - Global actions menu
968    -->
969    <integer name="config_veryLongPressOnPowerBehavior">0</integer>
970
971    <!-- Control the behavior when the user presses the power and volume up buttons together.
972            0 - Nothing
973            1 - Mute toggle
974            2 - Global actions menu
975    -->
976    <integer name="config_keyChordPowerVolumeUp">2</integer>
977
978    <!-- Control the behavior when the user long presses the back button.  Non-zero values are only
979         valid for watches as part of CDD/CTS.
980            0 - Nothing
981            1 - Go to voice assist
982    -->
983    <integer name="config_longPressOnBackBehavior">0</integer>
984
985    <!-- Allows activities to be launched on a long press on power during device setup. -->
986    <bool name="config_allowStartActivityForLongPressOnPowerInSetup">false</bool>
987
988    <!-- Control the behavior when the user short presses the power button.
989            0 - Nothing
990            1 - Go to sleep (doze)
991            2 - Really go to sleep (don't doze)
992            3 - Really go to sleep and go home (don't doze)
993            4 - Go to home
994            5 - Dismiss IME if shown. Otherwise go to home
995    -->
996    <integer name="config_shortPressOnPowerBehavior">1</integer>
997
998    <!-- Control the behavior when the user double presses the power button.
999            0 - Nothing
1000            1 - Toggle theater mode setting
1001            2 - Brightness boost
1002    -->
1003    <integer name="config_doublePressOnPowerBehavior">0</integer>
1004
1005    <!-- Control the behavior when the user triple presses the power button.
1006            0 - Nothing
1007            1 - Toggle theater mode setting
1008            2 - Brightness boost
1009    -->
1010    <integer name="config_triplePressOnPowerBehavior">0</integer>
1011
1012    <!-- Control the behavior when the user presses the sleep button.
1013            0 - Go to sleep (doze)
1014            1 - Go to sleep (doze) and go home
1015    -->
1016    <integer name="config_shortPressOnSleepBehavior">0</integer>
1017
1018    <!-- Time to wait while a button is pressed before triggering a very long press. -->
1019    <integer name="config_veryLongPressTimeout">3500</integer>
1020
1021    <!-- Time to wait before sending a HOME intent when waking up from power/home button.
1022         (0 - do not send HOME intent on wakeup)
1023    -->
1024    <integer name="config_wakeUpToLastStateTimeoutMillis">0</integer>
1025
1026    <!-- Package name for default keyguard appwidget [DO NOT TRANSLATE] -->
1027    <string name="widget_default_package_name" translatable="false"></string>
1028
1029    <!-- Class name for default keyguard appwidget [DO NOT TRANSLATE] -->
1030    <string name="widget_default_class_name" translatable="false"></string>
1031
1032    <!-- Indicate whether the SD card is accessible without removing the battery. -->
1033    <bool name="config_batterySdCardAccessibility">false</bool>
1034
1035    <!-- List of file paths for USB host busses to exclude from USB host support.
1036         For example, if the first USB bus on the device is used to communicate
1037         with the modem or some other restricted hardware, add "/dev/bus/usb/001/"
1038         to this list.  If this is empty, no parts of the host USB bus will be excluded.
1039    -->
1040    <string-array name="config_usbHostDenylist" translatable="false">
1041    </string-array>
1042
1043    <!-- List of paths to serial ports that are available to the serial manager.
1044         for example, /dev/ttyUSB0
1045    -->
1046    <string-array translatable="false" name="config_serialPorts">
1047    </string-array>
1048
1049    <!-- Vibrator pattern for feedback about a long screen/key press -->
1050    <integer-array name="config_longPressVibePattern">
1051        <item>0</item>
1052        <item>1</item>
1053        <item>20</item>
1054        <item>21</item>
1055    </integer-array>
1056
1057    <!-- Vibrator pattern for feedback about touching a virtual key -->
1058    <integer-array name="config_virtualKeyVibePattern">
1059        <item>0</item>
1060        <item>10</item>
1061        <item>20</item>
1062        <item>30</item>
1063    </integer-array>
1064
1065    <!-- Vibrator pattern for a very short but reliable vibration for soft keyboard tap -->
1066    <integer-array name="config_keyboardTapVibePattern">
1067        <item>40</item>
1068    </integer-array>
1069
1070    <!-- Vibrator pattern for feedback when selecting an hour/minute tick of a Clock -->
1071    <integer-array name="config_clockTickVibePattern">
1072        <item>125</item>
1073        <item>30</item>
1074    </integer-array>
1075
1076    <!-- Vibrator pattern for feedback when selecting a day/month/year date of a Calendar -->
1077    <integer-array name="config_calendarDateVibePattern">
1078        <item>125</item>
1079        <item>30</item>
1080    </integer-array>
1081
1082    <!-- Vibrator pattern for feedback about booting with safe mode enabled -->
1083    <integer-array name="config_safeModeEnabledVibePattern">
1084        <item>0</item>
1085        <item>1</item>
1086        <item>20</item>
1087        <item>21</item>
1088        <item>500</item>
1089        <item>600</item>
1090    </integer-array>
1091
1092    <!-- Vibrator pattern for feedback about hitting a scroll barrier -->
1093    <integer-array name="config_scrollBarrierVibePattern">
1094        <item>0</item>
1095        <item>15</item>
1096        <item>10</item>
1097        <item>10</item>
1098    </integer-array>
1099
1100    <!-- The URI to associate with each ringtone effect constant, intended to be used with the
1101         android.os.VibrationEffect#get(Uri, Context) API.
1102         The position of the string in the string-array determines which ringtone effect is chosen.
1103         For example, if the URI passed into get match the third string in the string-array, then
1104         RINGTONE_3 will be the returned effect -->
1105    <string-array translatable="false" name="config_ringtoneEffectUris">
1106    </string-array>
1107
1108    <!-- The default intensity level for haptic feedback. See
1109         Settings.System.HAPTIC_FEEDBACK_INTENSITY more details on the constant values and
1110         meanings. -->
1111    <integer name="config_defaultHapticFeedbackIntensity">2</integer>
1112    <!-- The default intensity level for notification vibrations. See
1113         Settings.System.NOTIFICATION_VIBRATION_INTENSITY more details on the constant values and
1114         meanings. -->
1115    <integer name="config_defaultNotificationVibrationIntensity">2</integer>
1116    <!-- The default intensity level for ring vibrations. See
1117         Settings.System.RING_VIBRATION_INTENSITY more details on the constant values and
1118         meanings. -->
1119    <integer name="config_defaultRingVibrationIntensity">2</integer>
1120
1121    <!-- Whether to use the strict phone number matcher by default. -->
1122    <bool name="config_use_strict_phone_number_comparation">false</bool>
1123
1124    <!-- Whether to use the strict phone number matcher in Russia. -->
1125    <bool name="config_use_strict_phone_number_comparation_for_russia">true</bool>
1126
1127    <!-- Whether to use the strict phone number matcher in Kazakhstan. -->
1128    <bool name="config_use_strict_phone_number_comparation_for_kazakhstan">true</bool>
1129
1130    <!-- The character count of the minimum match for comparison phone numbers -->
1131    <integer name="config_phonenumber_compare_min_match">7</integer>
1132
1133    <!-- Display low battery warning when battery level dips to this value.
1134         Also, the battery stats are flushed to disk when we hit this level.  -->
1135    <integer name="config_criticalBatteryWarningLevel">5</integer>
1136
1137    <!-- Shutdown if the battery temperature exceeds (this value * 0.1) Celsius. -->
1138    <integer name="config_shutdownBatteryTemperature">680</integer>
1139
1140    <!-- Display low battery warning when battery level dips to this value -->
1141    <integer name="config_lowBatteryWarningLevel">15</integer>
1142
1143    <!-- The default suggested battery % at which we enable battery saver automatically.  -->
1144    <integer name="config_lowBatteryAutoTriggerDefaultLevel">15</integer>
1145
1146    <!-- The app which will handle routine based automatic battery saver, if empty the UI for
1147         routine based battery saver will be hidden -->
1148    <string name="config_batterySaverScheduleProvider"></string>
1149
1150    <!-- Close low battery warning when battery level reaches the lowBatteryWarningLevel
1151         plus this -->
1152    <integer name="config_lowBatteryCloseWarningBump">5</integer>
1153
1154    <!-- Default color for notification LED. -->
1155    <color name="config_defaultNotificationColor">#ffffffff</color>
1156
1157    <!-- Default LED on time for notification LED in milliseconds. -->
1158    <integer name="config_defaultNotificationLedOn">500</integer>
1159
1160    <!-- Default LED off time for notification LED in milliseconds. -->
1161    <integer name="config_defaultNotificationLedOff">2000</integer>
1162
1163    <!-- Default value for led color when battery is low on charge -->
1164    <integer name="config_notificationsBatteryLowARGB">0xFFFF0000</integer>
1165
1166    <!-- Default value for led color when battery is medium charged -->
1167    <integer name="config_notificationsBatteryMediumARGB">0xFFFFFF00</integer>
1168
1169    <!-- Default value for led color when battery is fully charged -->
1170    <integer name="config_notificationsBatteryFullARGB">0xFF00FF00</integer>
1171
1172    <!-- Default value for LED on time when the battery is low on charge in miliseconds -->
1173    <integer name="config_notificationsBatteryLedOn">125</integer>
1174
1175    <!-- Is the notification LED intrusive? Used to decide if there should be a disable option -->
1176    <bool name="config_intrusiveNotificationLed">false</bool>
1177
1178    <!-- De we do icon badges? Used to decide if there should be a disable option-->
1179    <bool name="config_notificationBadging">true</bool>
1180
1181    <!-- Default value for LED off time when the battery is low on charge in miliseconds -->
1182    <integer name="config_notificationsBatteryLedOff">2875</integer>
1183
1184    <!-- If true, only colorized CallStyle notifications will apply custom colors -->
1185    <bool name="config_callNotificationActionColorsRequireColorized">true</bool>
1186
1187    <!-- Number of notifications to keep in the notification service historical archive -->
1188    <integer name="config_notificationServiceArchiveSize">100</integer>
1189
1190    <!-- Allow the menu hard key to be disabled in LockScreen on some devices -->
1191    <bool name="config_disableMenuKeyInLockScreen">false</bool>
1192
1193    <!-- Don't show lock screen before unlock screen (PIN/pattern/password) -->
1194    <bool name="config_enableLockBeforeUnlockScreen">false</bool>
1195
1196    <!-- Disable lockscreen rotation by default -->
1197    <bool name="config_enableLockScreenRotation">false</bool>
1198
1199    <!-- Is the device capable of hot swapping an UICC Card -->
1200    <bool name="config_hotswapCapable">false</bool>
1201
1202    <!-- Component name of the ICC hotswap prompt for restart dialog -->
1203    <string name="config_iccHotswapPromptForRestartDialogComponent" translatable="false">@null</string>
1204
1205    <!-- Enable puk unlockscreen by default.
1206         If unlock screen is disabled, the puk should be unlocked through Emergency Dialer -->
1207    <bool name="config_enable_puk_unlock_screen">true</bool>
1208
1209    <!-- Enable emergency call when sim is locked or puk locked. Some countries/carriers do not
1210         allow emergency calls to be placed without the IMSI, which is locked in the SIM.
1211         If so, this should be set to 'false' in an overlay. -->
1212    <bool name="config_enable_emergency_call_while_sim_locked">true</bool>
1213
1214    <!-- Is the lock-screen disabled for new users by default -->
1215    <bool name="config_disableLockscreenByDefault">false</bool>
1216
1217    <!-- If true, enables verification of the lockscreen credential in the factory reset protection
1218        flow. This should be true if gatekeeper / weaver credentials can still be checked after a
1219        factory reset. -->
1220    <bool name="config_enableCredentialFactoryResetProtection">true</bool>
1221
1222    <!-- Control the behavior when the user long presses the home button.
1223            0 - Nothing
1224            1 - Launch all apps intent
1225            2 - Launch assist intent
1226            3 - Launch notification panel
1227         This needs to match the constants in
1228         policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
1229    -->
1230    <integer name="config_longPressOnHomeBehavior">0</integer>
1231
1232    <!-- Control the behavior when the user double-taps the home button.
1233            0 - Nothing
1234            1 - Recent apps view in SystemUI
1235         This needs to match the constants in
1236         policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
1237    -->
1238    <integer name="config_doubleTapOnHomeBehavior">0</integer>
1239
1240    <!-- Note: This setting is deprecated, please use
1241    config_screenBrightnessSettingMinimumFloat instead -->
1242    <integer name="config_screenBrightnessSettingMinimum">10</integer>
1243
1244    <!-- Note: This setting is deprecated, please use
1245    config_screenBrightnessSettingMaximumFloat instead -->
1246    <integer name="config_screenBrightnessSettingMaximum">255</integer>
1247
1248    <!-- Note: This setting is deprecated, please use
1249    config_screenBrightnessSettingDefaultFloat instead -->
1250    <integer name="config_screenBrightnessSettingDefault">102</integer>
1251
1252    <!-- Minimum screen brightness setting allowed by power manager.
1253         -2 is invalid so setting will resort to int value specified above.
1254         Set this to 0.0 to allow screen to go to minimal brightness.
1255         The user is forbidden from setting the brightness below this level. -->
1256    <item name="config_screenBrightnessSettingMinimumFloat" format="float" type="dimen">-2</item>
1257
1258    <!-- Maximum screen brightness allowed by the power manager.
1259         -2 is invalid so setting will resort to int value specified above.
1260         Set this to 1.0 for maximum brightness range.
1261         The user is forbidden from setting the brightness above this level. -->
1262    <item name="config_screenBrightnessSettingMaximumFloat" format="float" type="dimen">-2</item>
1263
1264    <!-- Default screen brightness setting set.
1265         -2 is invalid so setting will resort to int value specified above.
1266         Must be in the range specified by minimum and maximum. -->
1267    <item name="config_screenBrightnessSettingDefaultFloat" format="float" type="dimen">-2</item>
1268
1269    <!-- Note: This setting is deprecated, please use
1270    config_screenBrightnessSettingForVrDefaultFloat instead -->
1271    <integer name="config_screenBrightnessForVrSettingDefault">86</integer>
1272
1273    <!-- Note: This setting is deprecated, please use
1274    config_screenBrightnessSettingForVrMinimumFloat instead -->
1275    <integer name="config_screenBrightnessForVrSettingMinimum">79</integer>
1276
1277    <!-- Note: This setting is deprecated, please use
1278    config_screenBrightnessSettingForVrMaximumFloat instead -->
1279    <integer name="config_screenBrightnessForVrSettingMaximum">255</integer>
1280
1281    <!-- Default screen brightness for VR setting as a float.
1282    Equivalent to 86/255-->
1283    <item name="config_screenBrightnessSettingForVrDefaultFloat" format="float" type="dimen">0.33464</item>
1284
1285    <!-- Minimum screen brightness setting allowed for VR. Device panels start increasing pulse
1286     width as brightness decreases below this threshold as float.
1287     Equivalent to 79/255 -->
1288    <item name="config_screenBrightnessSettingForVrMinimumFloat" format="float" type="dimen">0.307087</item>
1289
1290    <!-- Maximum screen brightness setting allowed for VR as float. -->
1291    <item name="config_screenBrightnessSettingForVrMaximumFloat" format="float" type="dimen">1.0</item>
1292
1293    <!-- Screen brightness used to dim the screen while dozing in a very low power state.
1294         May be less than the minimum allowed brightness setting
1295         that can be set by the user. -->
1296    <integer name="config_screenBrightnessDoze">1</integer>
1297    <item name="config_screenBrightnessDozeFloat" format="float" type="dimen">0.0</item>
1298
1299    <!-- Delay that allows some content to arrive at the display before switching
1300         from DOZE to ON. -->
1301    <integer name="config_wakeUpDelayDoze">0</integer>
1302
1303    <!-- Whether or not to skip the initial brightness ramps when the display transitions to
1304         STATE_ON. Setting this to true will skip the brightness ramp to the last stored active
1305         brightness value and will repeat for the following ramp if autobrightness is enabled. -->
1306    <bool name="config_skipScreenOnBrightnessRamp">false</bool>
1307
1308    <!-- Allow automatic adjusting of the screen brightness while dozing in low power state. -->
1309    <bool name="config_allowAutoBrightnessWhileDozing">false</bool>
1310
1311    <!-- Stability requirements in milliseconds for accepting a new brightness level.  This is used
1312         for debouncing the light sensor.  Different constants are used to debounce the light sensor
1313         when adapting to brighter or darker environments.  This parameter controls how quickly
1314         brightness changes occur in response to an observed change in light level that exceeds the
1315         hysteresis threshold. -->
1316    <integer name="config_autoBrightnessBrighteningLightDebounce">4000</integer>
1317    <integer name="config_autoBrightnessDarkeningLightDebounce">8000</integer>
1318
1319    <!-- Initial light sensor event rate in milliseconds for automatic brightness control. This is
1320         used for obtaining the first light sample when the device stops dozing.
1321
1322         Set this to -1 to disable this feature. -->
1323    <integer name="config_autoBrightnessInitialLightSensorRate">-1</integer>
1324
1325    <!-- Light sensor event rate in milliseconds for automatic brightness control. -->
1326    <integer name="config_autoBrightnessLightSensorRate">250</integer>
1327
1328    <!-- The maximum range of gamma adjustment possible using the screen
1329         auto-brightness adjustment setting. -->
1330    <fraction name="config_autoBrightnessAdjustmentMaxGamma">300%</fraction>
1331
1332    <!-- If we allow automatic adjustment of screen brightness while dozing, how many times we want
1333         to reduce it to preserve the battery. Value of 100% means no scaling. -->
1334    <fraction name="config_screenAutoBrightnessDozeScaleFactor">100%</fraction>
1335
1336    <!-- When the screen is turned on, the previous estimate of the ambient light level at the time
1337         the screen was turned off is restored and is used to determine the initial screen
1338         brightness.
1339
1340         If this flag is true, then the ambient light level estimate will be promptly recomputed
1341         after the warm-up interface and the screen brightness will be adjusted immediately.
1342
1343         If this flag is false, then the ambient light level estimate will be adjusted more
1344         gradually in the same manner that normally happens when the screen is on according to the
1345         brightening or dimming debounce thresholds.  As a result, it may take somewhat longer to
1346         adapt to the environment.  This mode may be better suited for watches. -->
1347    <bool name="config_autoBrightnessResetAmbientLuxAfterWarmUp">true</bool>
1348
1349    <!-- Screen brightness used to dim the screen when the user activity
1350         timeout expires.  May be less than the minimum allowed brightness setting
1351         that can be set by the user. -->
1352    <integer name="config_screenBrightnessDim">10</integer>
1353    <item name="config_screenBrightnessDimFloat" format="float" type="dimen">0.05</item>
1354
1355    <!-- Minimum allowable screen brightness to use in a very dark room.
1356         This value sets the floor for the darkest possible auto-brightness
1357         adjustment.  It is expected to be somewhat less than the first entry in
1358         config_autoBrightnessLcdBacklightValues so as to allow the user to have
1359         some range of adjustment to dim the screen further than usual in very
1360         dark rooms. The contents of the screen must still be clearly visible
1361         in darkness (although they may not be visible in a bright room). -->
1362    <integer name="config_screenBrightnessDark">1</integer>
1363
1364    <!-- Array of lux values to define the minimum brightness curve, which guarantees that any
1365         brightness curve that dips below it is rejected by the system.
1366         This prevents auto-brightness from setting the screen so dark as to prevent the user from
1367         resetting or disabling it.
1368
1369         The values must be non-negative and strictly increasing, and correspond to the values in
1370         the config_minimumBrightnessCurveNits array. -->
1371    <array name="config_minimumBrightnessCurveLux">
1372        <item>0.0</item>
1373        <item>2000.0</item>
1374        <item>4000.0</item>
1375    </array>
1376
1377    <!-- Array of nits values to define the minimum brightness curve, which guarantees that any
1378         brightness curve that dips below it is rejected by the system.
1379         This should map lux to the absolute minimum nits that are still readable in that ambient
1380         brightness.
1381
1382         The values must be non-negative and non-decreasing, and correspond to the values in the
1383         config_minimumBrightnessCurveLux array. -->
1384    <array name="config_minimumBrightnessCurveNits">
1385        <item>0.0</item>
1386        <item>50.0</item>
1387        <item>90.0</item>
1388    </array>
1389
1390    <!-- Array of light sensor lux values to define our levels for auto backlight brightness support.
1391         The N entries of this array define N + 1 control points as follows:
1392         (1-based arrays)
1393
1394         Point 1:            (0, value[1]):             lux <= 0
1395         Point 2:     (level[1], value[2]):  0        < lux <= level[1]
1396         Point 3:     (level[2], value[3]):  level[2] < lux <= level[3]
1397         ...
1398         Point N+1: (level[N], value[N+1]):  level[N] < lux
1399
1400         The control points must be strictly increasing.  Each control point
1401         corresponds to an entry in the brightness backlight values arrays.
1402         For example, if lux == level[1] (first element of the levels array)
1403         then the brightness will be determined by value[2] (second element
1404         of the brightness values array).
1405
1406         Spline interpolation is used to determine the auto-brightness
1407         backlight values for lux levels between these control points.
1408
1409         Must be overridden in platform specific overlays -->
1410    <integer-array name="config_autoBrightnessLevels">
1411    </integer-array>
1412
1413    <!-- Timeout (in milliseconds) after which we remove the effects any user interactions might've
1414         had on the brightness mapping. This timeout doesn't start until we transition to a
1415         non-interactive display policy so that we don't reset while users are using their devices,
1416         but also so that we don't erroneously keep the short-term model if the device is dozing
1417         but the display is fully on. -->
1418    <integer name="config_autoBrightnessShortTermModelTimeout">300000</integer>
1419
1420    <!-- Array of output values for LCD backlight corresponding to the lux values
1421         in the config_autoBrightnessLevels array.  This array should have size one greater
1422         than the size of the config_autoBrightnessLevels array.
1423         The brightness values must be between 0 and 255 and be non-decreasing.
1424         This must be overridden in platform specific overlays -->
1425    <integer-array name="config_autoBrightnessLcdBacklightValues">
1426    </integer-array>
1427
1428    <!-- Array of desired screen brightness in nits corresponding to the lux values
1429         in the config_autoBrightnessLevels array. As with config_screenBrightnessMinimumNits and
1430         config_screenBrightnessMaximumNits, the display brightness is defined as the measured
1431         brightness of an all-white image.
1432
1433         If this is defined then:
1434            - config_autoBrightnessLcdBacklightValues should not be defined
1435            - config_screenBrightnessNits must be defined
1436            - config_screenBrightnessBacklight must be defined
1437
1438         This array should have size one greater than the size of the config_autoBrightnessLevels
1439         array. The brightness values must be non-negative and non-decreasing. This must be
1440         overridden in platform specific overlays -->
1441    <array name="config_autoBrightnessDisplayValuesNits">
1442    </array>
1443
1444    <!-- Array of output values for button backlight corresponding to the luX values
1445         in the config_autoBrightnessLevels array.  This array should have size one greater
1446         than the size of the config_autoBrightnessLevels array.
1447         The brightness values must be between 0 and 255 and be non-decreasing.
1448         This must be overridden in platform specific overlays -->
1449    <integer-array name="config_autoBrightnessButtonBacklightValues">
1450    </integer-array>
1451
1452    <!-- Array of output values for keyboard backlight corresponding to the lux values
1453         in the config_autoBrightnessLevels array.  This array should have size one greater
1454         than the size of the config_autoBrightnessLevels array.
1455         The brightness values must be between 0 and 255 and be non-decreasing.
1456         This must be overridden in platform specific overlays -->
1457    <integer-array name="config_autoBrightnessKeyboardBacklightValues">
1458    </integer-array>
1459
1460    <!-- An array describing the screen's backlight values corresponding to the brightness
1461         values in the config_screenBrightnessNits array.
1462
1463         This array should be equal in size to config_screenBrightnessBacklight. -->
1464    <integer-array name="config_screenBrightnessBacklight">
1465    </integer-array>
1466
1467    <!-- An array of floats describing the screen brightness in nits corresponding to the backlight
1468         values in the config_screenBrightnessBacklight array.  On OLED displays these  values
1469         should be measured with an all white image while the display is in the fully on state.
1470         Note that this value should *not* reflect the maximum brightness value for any high
1471         brightness modes but only the maximum brightness value obtainable in a sustainable manner.
1472
1473         This array should be equal in size to config_screenBrightnessBacklight -->
1474    <array name="config_screenBrightnessNits">
1475    </array>
1476
1477    <!-- Array of ambient lux threshold values. This is used for determining hysteresis constraint
1478         values by calculating the index to use for lookup and then setting the constraint value
1479         to the corresponding value of the array. The new brightening hysteresis constraint value
1480         is the n-th element of config_ambientBrighteningThresholds, and the new darkening
1481         hysteresis constraint value is the n-th element of config_ambientDarkeningThresholds.
1482
1483         The (zero-based) index is calculated as follows: (MAX is the largest index of the array)
1484         condition                       calculated index
1485         value < level[0]                0
1486         level[n] <= value < level[n+1]  n+1
1487         level[MAX] <= value             MAX+1 -->
1488    <integer-array name="config_ambientThresholdLevels">
1489    </integer-array>
1490
1491    <!-- Array of hysteresis constraint values for brightening, represented as tenths of a
1492         percent. The length of this array is assumed to be one greater than
1493         config_ambientThresholdLevels. The brightening threshold is calculated as
1494         lux * (1.0f + CONSTRAINT_VALUE). When the current lux is higher than this threshold,
1495         the screen brightness is recalculated. See the config_ambientThresholdLevels
1496         description for how the constraint value is chosen. -->
1497    <integer-array name="config_ambientBrighteningThresholds">
1498        <item>100</item>
1499    </integer-array>
1500
1501    <!-- Array of hysteresis constraint values for darkening, represented as tenths of a
1502         percent. The length of this array is assumed to be one greater than
1503         config_ambientThresholdLevels. The darkening threshold is calculated as
1504         lux * (1.0f - CONSTRAINT_VALUE). When the current lux is lower than this threshold,
1505         the screen brightness is recalculated. See the config_ambientThresholdLevels
1506         description for how the constraint value is chosen. -->
1507    <integer-array name="config_ambientDarkeningThresholds">
1508        <item>200</item>
1509    </integer-array>
1510
1511    <!-- Array of screen brightness threshold values. This is used for determining hysteresis
1512         constraint values by calculating the index to use for lookup and then setting the
1513         constraint value to the corresponding value of the array. The new brightening hysteresis
1514         constraint value is the n-th element of config_screenBrighteningThresholds, and the new
1515         darkening hysteresis constraint value is the n-th element of
1516         config_screenDarkeningThresholds.
1517
1518         The (zero-based) index is calculated as follows: (MAX is the largest index of the array)
1519         condition                       calculated index
1520         value < level[0]                0
1521         level[n] <= value < level[n+1]  n+1
1522         level[MAX] <= value             MAX+1 -->
1523    <integer-array name="config_screenThresholdLevels">
1524    </integer-array>
1525
1526    <!-- Array of hysteresis constraint values for brightening, represented as tenths of a
1527         percent. The length of this array is assumed to be one greater than
1528         config_screenThresholdLevels. The brightening threshold is calculated as
1529         screenBrightness * (1.0f + CONSTRAINT_VALUE). When the new screen brightness is higher
1530         than this threshold, it is applied. See the config_screenThresholdLevels description for
1531         how the constraint value is chosen. -->
1532    <integer-array name="config_screenBrighteningThresholds">
1533        <item>100</item>
1534    </integer-array>
1535
1536    <!-- Array of hysteresis constraint values for darkening, represented as tenths of a
1537         percent. The length of this array is assumed to be one greater than
1538         config_screenThresholdLevels. The darkening threshold is calculated as
1539         screenBrightness * (1.0f - CONSTRAINT_VALUE). When the new screen brightness is lower than
1540         this threshold, it is applied. See the config_screenThresholdLevels description for how
1541         the constraint value is chosen. -->
1542    <integer-array name="config_screenDarkeningThresholds">
1543        <item>200</item>
1544    </integer-array>
1545
1546    <!-- Amount of time it takes for the light sensor to warm up in milliseconds.
1547         For this time after the screen turns on, the Power Manager
1548         will not debounce light sensor readings -->
1549    <integer name="config_lightSensorWarmupTime">0</integer>
1550
1551    <!-- Enables swipe versus poly-finger touch disambiguation in the KeyboardView -->
1552    <bool name="config_swipeDisambiguation">true</bool>
1553
1554    <!-- Specifies the amount of time to disable virtual keys after the screen is touched
1555         in order to filter out accidental virtual key presses due to swiping gestures
1556         or taps near the edge of the display.  May be 0 to disable the feature.
1557         It is recommended that this value be no more than 250 ms.
1558         This feature should be disabled for most devices. -->
1559    <integer name="config_virtualKeyQuietTimeMillis">0</integer>
1560
1561    <!-- A list of potential packages, in priority order, that may contain an
1562         ephemeral resolver. Each package will be be queried for a component
1563         that has been granted the PACKAGE_EPHEMERAL_AGENT permission.
1564         This may be empty if ephemeral apps are not supported. -->
1565    <string-array name="config_ephemeralResolverPackage" translatable="false">
1566        <!-- Add packages here -->
1567    </string-array>
1568
1569    <!-- The set of system packages on device that are queryable by any app regardless of the
1570         contents of its manifest. -->
1571    <string-array name="config_forceQueryablePackages" translatable="false">
1572        <item>com.android.settings</item>
1573        <item>com.android.providers.settings</item>
1574        <!-- Add packages here -->
1575    </string-array>
1576
1577    <!-- If true, will force all packages on any system partition as queryable by any app regardless
1578         of the contents of its manifest. -->
1579    <bool name="config_forceSystemPackagesQueryable">false</bool>
1580
1581    <!-- Component name of the default wallpaper. This will be ImageWallpaper if not
1582         specified -->
1583    <string name="default_wallpaper_component" translatable="false">@null</string>
1584
1585    <!-- By default a product has no distinct default lock wallpaper -->
1586    <item name="default_lock_wallpaper" type="drawable">@null</item>
1587
1588    <!-- Component name of the built in wallpaper used to display bitmap wallpapers. This must not be null. -->
1589    <string name="image_wallpaper_component" translatable="false">com.android.systemui/com.android.systemui.ImageWallpaper</string>
1590
1591    <!-- True if WallpaperService is enabled -->
1592    <bool name="config_enableWallpaperService">true</bool>
1593
1594    <!-- True if the device should block turning display on at boot until wallpaper is ready -->
1595    <bool name="config_checkWallpaperAtBoot">true</bool>
1596
1597    <!-- Class name of WallpaperManagerService. -->
1598    <string name="config_wallpaperManagerServiceName" translatable="false">com.android.server.wallpaper.WallpaperManagerService</string>
1599
1600    <!-- Specifies priority of automatic time sources. Suggestions from higher entries in the list
1601         take precedence over lower ones.
1602         See com.android.server.timedetector.TimeDetectorStrategy for available sources. -->
1603    <string-array name="config_autoTimeSourcesPriority">
1604        <item>network</item>
1605        <item>telephony</item>
1606    </string-array>
1607
1608    <!-- Enables the GnssTimeUpdate service. This is the global switch for enabling Gnss time based
1609         suggestions to TimeDetector service. See also config_autoTimeSourcesPriority. -->
1610    <bool name="config_enableGnssTimeUpdateService">false</bool>
1611
1612    <!-- Enables the TimeZoneRuleManager service. This is the global switch for the updateable time
1613         zone update mechanism. -->
1614    <bool name="config_enableUpdateableTimeZoneRules">false</bool>
1615
1616    <!-- Enables APK-based time zone update triggering. Set this to false when updates are triggered
1617         via external events and not by APK updates. For example, if an updater checks with a server
1618         on a regular schedule.
1619         [This is only used if config_enableUpdateableTimeZoneRules is true.] -->
1620    <bool name="config_timeZoneRulesUpdateTrackingEnabled">false</bool>
1621
1622    <!-- The package of the time zone rules updater application. Expected to be the same
1623         for all Android devices that support APK-based time zone rule updates.
1624         A package-targeted com.android.intent.action.timezone.TRIGGER_RULES_UPDATE_CHECK intent
1625         will be sent to the updater app if the system server detects an update to the updater or
1626         data app packages.
1627         The package referenced here must have the android.permission.UPDATE_TIME_ZONE_RULES
1628         permission.
1629         [This is only used if config_enableUpdateableTimeZoneRules and
1630         config_timeZoneRulesUpdateTrackingEnabled are true.] -->
1631    <string name="config_timeZoneRulesUpdaterPackage" translatable="false">com.android.timezone.updater</string>
1632
1633    <!-- The package of the time zone rules data application. Expected to be configured
1634         by OEMs to reference their own priv-app APK package.
1635         A package-targeted com.android.intent.action.timezone.TRIGGER_RULES_UPDATE_CHECK intent
1636         will be sent to the updater app if the system server detects an update to the updater or
1637         data app packages.
1638         [This is only used if config_enableUpdateableTimeZoneRules and
1639         config_timeZoneRulesUpdateTrackingEnabled are true.] -->
1640    <string name="config_timeZoneRulesDataPackage" translatable="false"></string>
1641
1642    <!-- The allowed time in milliseconds between an update check intent being broadcast and the
1643         response being considered overdue. Reliability triggers will not fire in this time.
1644         [This is only used if config_enableUpdateableTimeZoneRules and
1645         config_timeZoneRulesUpdateTrackingEnabled are true.] -->
1646    <!-- 5 minutes -->
1647    <integer name="config_timeZoneRulesCheckTimeMillisAllowed">300000</integer>
1648
1649    <!-- The number of times a time zone update check is allowed to fail before the system will stop
1650         reacting to reliability triggers.
1651         [This is only used if config_enableUpdateableTimeZoneRules and
1652         config_timeZoneRulesUpdateTrackingEnabled are true.] -->
1653    <integer name="config_timeZoneRulesCheckRetryCount">5</integer>
1654
1655    <!-- Whether the geolocation time zone detection feature is enabled. Setting this to false means
1656         the feature cannot be used. Setting this to true means system server components can be
1657         tested and location time zone detection may be used if other configuration allows (see
1658         location time zone provider configuration settings below). -->
1659    <bool name="config_enableGeolocationTimeZoneDetection" translatable="false">true</bool>
1660
1661    <!-- Whether the primary location time zone provider is enabled.
1662         This setting is ignored if config_enableGeolocationTimeZoneDetection is false.
1663
1664         AOSP does not configure a primary location time zone provider. -->
1665    <bool name="config_enablePrimaryLocationTimeZoneProvider" translatable="false">false</bool>
1666
1667    <!-- The package hosting the primary location time zone provider.
1668         Only used when config_enableGeolocationTimeZoneDetection and
1669         config_enablePrimaryLocationTimeZoneProvider are true.
1670
1671         See android.service.timezone.TimeZoneProviderService for how to host location time zone
1672         provider services. -->
1673    <string name="config_primaryLocationTimeZoneProviderPackageName" translatable="false"></string>
1674
1675    <!-- Whether the secondary location time zone provider is enabled.
1676         This setting is ignored if config_enableGeolocationTimeZoneDetection is false.
1677
1678         AOSP does not configure a secondary location time zone provider. -->
1679    <bool name="config_enableSecondaryLocationTimeZoneProvider" translatable="false">false</bool>
1680
1681    <!-- The package hosting the secondary location time zone provider.
1682         Only used when config_enableGeolocationTimeZoneDetection and
1683         config_enableSecondaryLocationTimeZoneProvider are true.
1684
1685         See android.service.timezone.TimeZoneProviderService for how to host location time zone
1686         provider services. -->
1687    <string name="config_secondaryLocationTimeZoneProviderPackageName" translatable="false"></string>
1688
1689    <!-- Whether to enable network location overlay which allows network location provider to be
1690         replaced by an app at run-time. When disabled, only the
1691         config_networkLocationProviderPackageName package will be searched for network location
1692         provider, otherwise any system package is eligible. Anyone who wants to disable the overlay
1693         mechanism can set it to false. -->
1694    <bool name="config_enableNetworkLocationOverlay" translatable="false">true</bool>
1695    <!-- Package name providing network location support. Used only when
1696         config_enableNetworkLocationOverlay is false. -->
1697    <string name="config_networkLocationProviderPackageName" translatable="false">@null</string>
1698
1699    <!-- Whether to enable fused location provider overlay which allows fused location provider to
1700         be replaced by an app at run-time. When disabled, only the
1701         config_fusedLocationProviderPackageName package will be searched for fused location
1702         provider, otherwise any system package is eligible. Anyone who wants to disable the overlay
1703         mechanism can set it to false. -->
1704    <bool name="config_enableFusedLocationOverlay" translatable="false">true</bool>
1705    <!-- Package name providing fused location support. Used only when
1706         config_enableFusedLocationOverlay is false. -->
1707    <string name="config_fusedLocationProviderPackageName" translatable="false">com.android.location.fused</string>
1708
1709    <!-- Default value for the ADAS GNSS Location Enabled setting if this setting has never been
1710         set before. -->
1711    <bool name="config_defaultAdasGnssLocationEnabled" translatable="false">false</bool>
1712
1713    <string-array name="config_locationExtraPackageNames" translatable="false"></string-array>
1714
1715    <!-- The package name of the default network recommendation app.
1716         A network recommendation provider must:
1717             * Be granted the SCORE_NETWORKS permission.
1718             * Be granted the ACCESS_COARSE_LOCATION permission.
1719             * Include a Service for the android.net.scoring.RECOMMEND_NETWORKS action
1720               protected by the BIND_NETWORK_RECOMMENDATION_SERVICE permission.
1721
1722         This must be set to a valid network recommendation app or empty.
1723     -->
1724    <string name="config_defaultNetworkRecommendationProviderPackage" translatable="false"></string>
1725
1726    <!-- Whether to enable geocoder overlay which allows geocoder to be replaced
1727         by an app at run-time. When disabled, only the
1728         config_geocoderProviderPackageName package will be searched for
1729         geocoder, otherwise any system package is eligible. Anyone who wants to
1730         disable the overlay mechanism can set it to false.
1731         -->
1732    <bool name="config_enableGeocoderOverlay" translatable="false">true</bool>
1733    <!-- Package name providing geocoder API support. Used only when
1734         config_enableGeocoderOverlay is false. -->
1735    <string name="config_geocoderProviderPackageName" translatable="false">@null</string>
1736
1737    <!-- Whether to enable geofence overlay which allows geofence to be replaced
1738         by an app at run-time. When disabled, only the
1739         config_geofenceProviderPackageName package will be searched for
1740         geofence implementation, otherwise any system package is eligible. Anyone who
1741         wants to disable the overlay mechanism can set it to false.
1742         -->
1743    <bool name="config_enableGeofenceOverlay" translatable="false">true</bool>
1744    <!-- Package name providing geofence API support. Used only when
1745         config_enableGeofenceOverlay is false. -->
1746    <string name="config_geofenceProviderPackageName" translatable="false">@null</string>
1747
1748    <!-- Whether to enable Hardware Activity-Recognition overlay which allows Hardware
1749         Activity-Recognition to be replaced by an app at run-time. When disabled, only the
1750         config_activityRecognitionHardwarePackageName package will be searched for
1751         its implementation, otherwise any system package is eligible. Anyone who
1752         wants to disable the overlay mechanism can set it to false.
1753         -->
1754    <bool name="config_enableActivityRecognitionHardwareOverlay" translatable="false">true</bool>
1755    <!-- Package name providing Hardware Activity-Recognition API support. Used only when
1756         config_enableActivityRecognitionHardwareOverlay is false. -->
1757    <string name="config_activityRecognitionHardwarePackageName" translatable="false">@null</string>
1758
1759    <!-- Package name(s) containing location provider support. These packages will be auto-granted
1760         several permissions by the system, and should be system packages. -->
1761    <string-array name="config_locationProviderPackageNames" translatable="false">
1762        <!-- The standard AOSP fused location provider -->
1763        <item>com.android.location.fused</item>
1764    </string-array>
1765
1766    <!-- Package name(s) of Advanced Driver Assistance applications. These packages have additional
1767    management of access to location, specific to driving assistance use-cases. They must be system
1768    packages. This configuration is only applicable to devices that declare
1769    PackageManager.FEATURE_AUTOMOTIVE. -->
1770    <string-array name="config_locationDriverAssistancePackageNames" translatable="false">
1771    </string-array>
1772
1773    <!-- This string array can be overriden to enable test location providers initially. -->
1774    <!-- Array of "[locationProviderName],[requiresNetwork],
1775         [requiresSatellite],[requiresCell],[hasMonetaryCost],
1776         [supportAltitute],[supportsSpeed],[supportsBearing],
1777         [powerRequirement],[accuracy]" -->
1778    <!-- powerRequirement is defined in android.location.Criteria
1779         0 = NO_REQUIREMENT / 1 = POWER_LOW / 2 = POWER_MEDIUM / 3 = POWER_HIGH -->
1780    <!-- accuracy is defined in anroid.location.Criteria
1781         1 = ACCURACY_FINE / 2 = ACCURACY_COARSE -->
1782    <string-array name="config_testLocationProviders" translatable="false">
1783        <!-- Example test network location provider
1784        <item>network,false,false,false,false,true,true,true,1,2</item>
1785        -->
1786    </string-array>
1787
1788    <!-- Optional IPsec algorithms enabled by this device, defaulting to empty. OEMs can override
1789         it by providing a list of algorithm names in an overlay config.xml file.
1790
1791         As Android releases new versions, more algorithms are becoming mandatory. Mandatory
1792         algorithms will be automatically enabled on the device. Optional algorithms need
1793         to be explicitly declared in this resource to be enabled.
1794             * SDK level 28 makes the following algorithms mandatory : "cbc(aes)", "hmac(md5)",
1795               "hmac(sha1)", "hmac(sha256)", "hmac(sha384)", "hmac(sha512)", "rfc4106(gcm(aes))"
1796             * SDK level 31 makes the following algorithms mandatory : "rfc3686(ctr(aes))",
1797               "xcbc(aes)", "cmac(aes)", "rfc7539esp(chacha20,poly1305)"
1798     -->
1799    <string-array name="config_optionalIpSecAlgorithms" translatable="false">
1800        <!-- Add algorithm here -->
1801    </string-array>
1802
1803    <!-- Boolean indicating if placing the phone face down will result in a screen off. -->
1804    <bool name="config_flipToScreenOffEnabled">true</bool>
1805
1806    <!-- Integer to set a max latency the accelerometer will batch sensor requests with. -->
1807    <integer name="config_flipToScreenOffMaxLatencyMicros">2000000</integer>
1808
1809    <!-- Boolean indicating if current platform supports bluetooth SCO for off call
1810    use cases -->
1811    <bool name="config_bluetooth_sco_off_call">true</bool>
1812
1813    <!-- Boolean indicating if current platform supports bluetooth wide band
1814         speech -->
1815    <bool name="config_bluetooth_wide_band_speech">true</bool>
1816
1817    <!-- Boolean indicating if current platform need do one-time bluetooth address
1818         re-validation -->
1819    <bool name="config_bluetooth_address_validation">false</bool>
1820
1821    <!-- Boolean indicating if current platform supports BLE peripheral mode -->
1822    <bool name="config_bluetooth_le_peripheral_mode_supported">false</bool>
1823
1824    <!-- Boolean indicating if current platform supports HFP inband ringing -->
1825    <bool name="config_bluetooth_hfp_inband_ringing_support">false</bool>
1826
1827    <!-- Max number of scan filters supported by blutooth controller. 0 if the
1828         device does not support hardware scan filters-->
1829    <integer translatable="false" name="config_bluetooth_max_scan_filters">0</integer>
1830
1831    <!-- Max number of advertisers supported by bluetooth controller. 0 if the
1832         device does not support multiple advertisement-->
1833    <integer translatable="false" name="config_bluetooth_max_advertisers">0</integer>
1834
1835    <!-- Idle current for bluetooth controller. 0 by default-->
1836    <integer translatable="false" name="config_bluetooth_idle_cur_ma">0</integer>
1837
1838    <!-- Rx current for bluetooth controller. 0 by default-->
1839    <integer translatable="false" name="config_bluetooth_rx_cur_ma">0</integer>
1840
1841    <!-- Tx current for bluetooth controller. 0 by default-->
1842    <integer translatable="false" name="config_bluetooth_tx_cur_ma">0</integer>
1843
1844    <!-- Operating volatage for bluetooth controller. 0 by default-->
1845    <integer translatable="false" name="config_bluetooth_operating_voltage_mv">0</integer>
1846
1847    <!-- Max number of connected audio devices supported by Bluetooth stack -->
1848    <integer name="config_bluetooth_max_connected_audio_devices">5</integer>
1849
1850    <!-- Whether supported profiles should be reloaded upon enabling bluetooth -->
1851    <bool name="config_bluetooth_reload_supported_profiles_when_enabled">false</bool>
1852
1853    <!-- Enabling autoconnect over pan -->
1854    <bool name="config_bluetooth_pan_enable_autoconnect">false</bool>
1855
1856    <!-- The default data-use polling period. -->
1857    <integer name="config_datause_polling_period_sec">600</integer>
1858
1859    <!-- The default data-use threshold in bytes. 0 disables-->
1860    <integer name="config_datause_threshold_bytes">0</integer>
1861
1862    <!-- The default reduced-datarate value in kilobits per sec -->
1863    <integer name="config_datause_throttle_kbitsps">300</integer>
1864
1865    <!-- The default iface on which to monitor data use -->
1866    <string name="config_datause_iface" translatable="false">rmnet0</string>
1867
1868    <!-- The default reduced-datarate notification mask -->
1869    <!-- 2 means give warning -->
1870    <integer name="config_datause_notification_type">2</integer>
1871
1872    <!-- If Voice Radio Technology is RIL_RADIO_TECHNOLOGY_LTE:14 or
1873         RIL_RADIO_TECHNOLOGY_UNKNOWN:0 this is the value that should be used instead.
1874         A configuration value of RIL_RADIO_TECHNOLOGY_UNKNOWN:0 means
1875         there is no replacement value and that the default assumption
1876         for phone type (GSM) should be used. -->
1877    <integer name="config_volte_replacement_rat">0</integer>
1878
1879    <!-- Flag indicating whether the current device is "voice capable".
1880         If true, this means that the device supports circuit-switched
1881         (i.e. voice) phone calls over the telephony network, and is
1882         allowed to display the in-call UI while a cellular voice call is
1883         active.  This can be overridden to false for "data only" devices
1884         which can't make voice calls and don't support any in-call UI.
1885
1886         Note: this flag is subtly different from the
1887         PackageManager.FEATURE_TELEPHONY system feature, which is
1888         available on *any* device with a telephony radio, even if the
1889         device is data-only. -->
1890    <bool name="config_voice_capable">true</bool>
1891
1892    <!-- Flag indicating whether all audio streams should be mapped to
1893         one single stream. If true, all audio streams are mapped to
1894         STREAM_MUSIC as if it's on TV platform. -->
1895    <bool name="config_single_volume">false</bool>
1896
1897    <!-- Flag indicating whether platform level volume adjustments are enabled for remote sessions
1898         on grouped devices. -->
1899    <bool name="config_volumeAdjustmentForRemoteGroupSessions">true</bool>
1900
1901    <!-- Flag indicating that an outbound call must have a call capable phone account
1902         that has declared it can process the call's handle. -->
1903    <bool name="config_requireCallCapableAccountForHandle">false</bool>
1904
1905    <!-- Flag indicating if the user is notified when the mobile network access is restricted -->
1906    <bool name="config_user_notification_of_restrictied_mobile_access">true</bool>
1907
1908    <!-- Flag indicating whether the current device allows sms service.
1909         If true, this means that the device supports both sending and
1910         receiving sms via the telephony network.
1911         This can be overridden to false for "data only" devices
1912         which can't send and receive sms message.
1913
1914         Note: Disable SMS also disable voicemail waiting sms,
1915               cell broadcasting sms, and MMS. -->
1916    <bool name="config_sms_capable">true</bool>
1917
1918    <!-- Default SMS Application. This will be the default SMS application when
1919         the phone first boots. The user can then change the default app to one
1920         of their choosing.
1921         This can be overridden for devices where a different default SMS
1922         application is desired.
1923
1924         If this string is empty or the specified package does not exist, then
1925         the platform will search for an SMS app and use that (if there is one)
1926
1927         Note: This config is deprecated, please use config_defaultSms instead. -->
1928    <string name="default_sms_application" translatable="false">com.android.messaging</string>
1929
1930    <!-- Flag indicating whether the current device supports "Ask every time" for sms-->
1931    <bool name="config_sms_ask_every_time_support">true</bool>
1932
1933    <!-- Flag indicating whether the current device allows data.
1934         If true, this means that the device supports data connectivity through
1935         the telephony network.
1936         This can be overridden to false for devices that support voice and/or sms . -->
1937    <bool name="config_mobile_data_capable">true</bool>
1938
1939    <!-- Default web browser.  This is the package name of the application that will
1940         be the default browser when the device first boots.  Afterwards the user
1941         can select whatever browser app they wish to use as the default.
1942
1943         If this string is empty or the specified package does not exist, then
1944         the behavior will be as though no app was named as an explicit default.
1945
1946         Note: This config is deprecated, please use config_defaultBrowser instead. -->
1947    <string name="default_browser" translatable="false"></string>
1948
1949    <!-- The name of the package that will hold the assistant role by default. -->
1950    <string name="config_defaultAssistant" translatable="false" />
1951    <!-- Whether the default assistant settings should be shown. -->
1952    <bool name="config_showDefaultAssistant">true</bool>
1953    <!-- The name of the package that will hold the browser role by default. -->
1954    <string name="config_defaultBrowser" translatable="false">@string/default_browser</string>
1955    <!-- The name of the package that will hold the dialer role by default. -->
1956    <string name="config_defaultDialer" translatable="false">com.android.dialer</string>
1957    <!-- The name of the package that will hold the SMS role by default. -->
1958    <string name="config_defaultSms" translatable="false">@string/default_sms_application</string>
1959    <!-- Whether the default emergency settings should be shown. -->
1960    <bool name="config_showDefaultEmergency">false</bool>
1961    <!-- Whether the default home settings should be shown. -->
1962    <bool name="config_showDefaultHome">true</bool>
1963    <!-- The name of the package that will hold the call redirection role by default. -->
1964    <string name="config_defaultCallRedirection" translatable="false"></string>
1965    <!-- The name of the package that will hold the call screening role by default. -->
1966    <string name="config_defaultCallScreening" translatable="false"></string>
1967    <!-- The name of the package that will hold the system gallery role. -->
1968    <string name="config_systemGallery" translatable="false">com.android.gallery3d</string>
1969    <!-- The names of the packages that will hold the automotive projection role. -->
1970    <string name="config_systemAutomotiveProjection" translatable="false"></string>
1971    <!-- The name of the package that will hold the system cluster service role. -->
1972    <string name="config_systemAutomotiveCluster" translatable="false"></string>
1973    <!-- The name of the package that will hold the system shell role. -->
1974    <string name="config_systemShell" translatable="false">com.android.shell</string>
1975    <!-- The name of the package that will hold the system contacts role. -->
1976    <string name="config_systemContacts" translatable="false">com.android.contacts</string>
1977    <!-- The name of the package that will hold the speech recognizer role by default. -->
1978    <string name="config_systemSpeechRecognizer" translatable="false"></string>
1979    <!-- The name of the package that will hold the system Wi-Fi coex manager role. -->
1980    <string name="config_systemWifiCoexManager" translatable="false"></string>
1981    <!-- The name of the package that will hold the wellbeing role. -->
1982    <string name="config_systemWellbeing" translatable="false"></string>
1983    <!-- The name of the package that will hold the television notification handler role -->
1984    <string name="config_systemTelevisionNotificationHandler" translatable="false"></string>
1985    <!-- The name of the package that will hold the system activity recognizer role. -->
1986    <string name="config_systemActivityRecognizer" translatable="false"></string>
1987    <!-- The name of the package that will hold the system ui role -->
1988    <string name="config_systemUi" translatable="false">com.android.systemui</string>
1989    <!-- The name of the package that will hold the television remote service role.
1990        TODO(b/189347385) make this a @SystemAPI -->
1991    <string name="config_systemTelevisionRemoteService" translatable="false">@string/config_tvRemoteServicePackage</string>
1992
1993    <!-- The name of the package that will be allowed to change its components' label/icon. -->
1994    <string name="config_overrideComponentUiPackage" translatable="false">com.android.stk</string>
1995
1996    <!-- Enable/disable default bluetooth profiles:
1997        HSP_AG, ObexObjectPush, Audio, NAP -->
1998    <bool name="config_bluetooth_default_profiles">true</bool>
1999
2000    <!-- IP address of the dns server to use if nobody else suggests one -->
2001    <string name="config_default_dns_server" translatable="false">8.8.8.8</string>
2002
2003    <!-- The default mobile provisioning apn. Empty by default, maybe overridden by
2004         an mcc/mnc specific config.xml -->
2005    <string name="mobile_provisioning_apn" translatable="false"></string>
2006
2007    <!-- The default mobile provisioning url. Empty by default, maybe overridden by
2008         an mcc/mnc specific config.xml -->
2009    <string name="mobile_provisioning_url" translatable="false"></string>
2010
2011    <!-- The default character set for GsmAlphabet -->
2012    <!-- Empty string means MBCS is not considered -->
2013    <string name="gsm_alphabet_default_charset" translatable="false"></string>
2014
2015    <!-- Enables SIP on WIFI only -->
2016    <bool name="config_sip_wifi_only">false</bool>
2017
2018    <!-- Enables built-in SIP phone capability -->
2019    <bool name="config_built_in_sip_phone">true</bool>
2020
2021    <!-- Boolean indicating if restoring network selection should be skipped -->
2022    <!-- The restoring is handled by modem if it is true-->
2023    <bool translatable="false" name="skip_restoring_network_selection">false</bool>
2024
2025    <!-- Maximum number of database connections opened and managed by framework layer
2026         to handle queries on each database when using Write-Ahead Logging. -->
2027    <integer name="db_connection_pool_size">4</integer>
2028
2029    <!-- The default journal mode to use use when Write-Ahead Logging is not active.
2030         Choices are: OFF, DELETE, TRUNCATE, PERSIST and MEMORY.
2031         PERSIST may improve performance by reducing how often journal blocks are
2032         reallocated (compared to truncation) resulting in better data block locality
2033         and less churn of the storage media.
2034
2035         The PERSIST mode results in data persisting in the journal beyond the life of
2036         a transaction, so it interacts poorly with SECURE_DELETE. -->
2037    <string name="db_default_journal_mode" translatable="false">TRUNCATE</string>
2038
2039    <!-- Maximum size of the persistent journal file in bytes.
2040         If the journal file grows to be larger than this amount then SQLite will
2041         truncate it after committing the transaction. -->
2042    <integer name="db_journal_size_limit">524288</integer>
2043
2044    <!-- When opening a database with WAL enabled and if the wal file already exists and larger
2045         than this size in bytes, we'll truncate it. -->
2046    <integer name="db_wal_truncate_size">1048576</integer>
2047
2048    <!-- The database synchronization mode when using the default journal mode.
2049         FULL is safest and preserves durability at the cost of extra fsyncs.
2050         NORMAL also preserves durability in non-WAL modes and uses checksums to ensure
2051         integrity although there is a small chance that an error might go unnoticed.
2052         Choices are: FULL, NORMAL, OFF. -->
2053    <string name="db_default_sync_mode" translatable="false">FULL</string>
2054
2055    <!-- The database synchronization mode when using Write-Ahead Logging.
2056         From https://www.sqlite.org/pragma.html#pragma_synchronous:
2057         WAL mode is safe from corruption with synchronous=NORMAL, and probably DELETE mode is safe
2058         too on modern filesystems. WAL mode is always consistent with synchronous=NORMAL, but WAL
2059         mode does lose durability. A transaction committed in WAL mode with
2060         synchronous=NORMAL might roll back following a power loss or system crash.
2061         Transactions are durable across application crashes regardless of the synchronous setting
2062         or journal mode. The synchronous=NORMAL setting is a good choice for most applications
2063         running in WAL mode.
2064         Choices are: FULL, NORMAL, OFF. -->
2065    <string name="db_wal_sync_mode" translatable="false">NORMAL</string>
2066
2067    <!-- The Write-Ahead Log auto-checkpoint interval in database pages (typically 1 to 4KB).
2068         The log is checkpointed automatically whenever it exceeds this many pages.
2069         When a database is reopened, its journal mode is set back to the default
2070         journal mode, which may cause a checkpoint operation to occur.  Checkpoints
2071         can also happen at other times when transactions are committed.
2072         The bigger the WAL file, the longer a checkpoint operation takes, so we try
2073         to keep the WAL file relatively small to avoid long delays.
2074         The size of the WAL file is also constrained by 'db_journal_size_limit'. -->
2075    <integer name="db_wal_autocheckpoint">100</integer>
2076
2077    <!-- The number of milliseconds that SQLite connection is allowed to be idle before it
2078         is closed and removed from the pool -->
2079    <integer name="db_default_idle_connection_timeout">30000</integer>
2080
2081    <!-- Max space (in MB) allocated to DownloadManager to store the downloaded
2082         files if they are to be stored in DownloadManager's data dir,
2083         which typically is /data/data/com.android.providers.downloads/files -->
2084    <integer name="config_downloadDataDirSize">200</integer>
2085
2086    <!-- Max number of downloads allowed to proceed concurrently -->
2087    <integer name="config_MaxConcurrentDownloadsAllowed">5</integer>
2088
2089    <!-- When the free space available in DownloadManager's data dir falls
2090         below the percentage value specified by this param, DownloadManager
2091         starts removing files to try to make percentage of available
2092         free space above this threshold value. -->
2093    <integer name="config_downloadDataDirLowSpaceThreshold">10</integer>
2094
2095    <!-- The URL that should be sent in an x-wap-profile header with an HTTP request,
2096         as defined in the Open Mobile Alliance User Agent Profile specification
2097         OMA-TS-UAProf-V2_0-20060206-A Section 8.1.1.1. If the URL contains a '%s'
2098         format string then that substring will be replaced with the value of
2099         Build.MODEL. The format string shall not be escaped. -->
2100    <string name="config_useragentprofile_url" translatable="false"></string>
2101
2102    <!-- When a database query is executed, the results returned are paginated
2103         in pages of size (in KB) indicated by this value -->
2104    <integer name="config_cursorWindowSize">2048</integer>
2105
2106    <!-- Sets whether menu shortcuts should be displayed on panel menus when
2107         a keyboard is present. -->
2108    <bool name="config_showMenuShortcutsWhenKeyboardPresent">false</bool>
2109
2110    <!-- Do not translate. Defines the slots is Two Digit Number for dialing normally not USSD.
2111
2112         Note: This config is deprecated, please use carrier config which is
2113               CarrierConfigManager.KEY_MMI_TWO_DIGIT_NUMBER_PATTERN_STRING_ARRAY instead. -->
2114    <string-array name="config_twoDigitNumberPattern" translatable="false">
2115    </string-array>
2116
2117    <!-- If this value is true, Sms encoded as octet is decoded by utf8 decoder.
2118         If false, decoded by Latin decoder. -->
2119    <bool name="config_sms_utf8_support">false</bool>
2120
2121    <!-- If this value is true, The mms content-disposition field is supported correctly.
2122         If false, Content-disposition fragments are ignored -->
2123    <bool name="config_mms_content_disposition_support">true</bool>
2124
2125    <!-- MMS user agent string -->
2126    <string name="config_mms_user_agent" translatable="false"></string>
2127
2128    <!-- MMS user agent prolfile url -->
2129    <string name="config_mms_user_agent_profile_url" translatable="false"></string>
2130
2131    <!-- National Language Identifier codes for the following two config items.
2132         (from 3GPP TS 23.038 V9.1.1 Table 6.2.1.2.4.1):
2133          0  - reserved
2134          1  - Turkish
2135          2  - Spanish (single shift table only)
2136          3  - Portuguese
2137          4  - Bengali
2138          5  - Gujarati
2139          6  - Hindi
2140          7  - Kannada
2141          8  - Malayalam
2142          9  - Oriya
2143         10  - Punjabi
2144         11  - Tamil
2145         12  - Telugu
2146         13  - Urdu
2147         14+ - reserved -->
2148
2149    <!-- National language single shift tables to enable for SMS encoding.
2150         Decoding is always enabled. 3GPP TS 23.038 states that this feature
2151         should not be enabled until a formal request is issued by the relevant
2152         national regulatory body. Array elements are codes from the table above.
2153         Example 1: devices sold in Turkey must include table 1 to conform with
2154           By-Law Number 27230. (http://www.btk.gov.tr/eng/pdf/2009/BY-LAW_SMS.pdf)
2155         Example 2: devices sold in India should include tables 4 through 13
2156           to enable use of the new Release 9 tables for Indic languages. -->
2157    <integer-array name="config_sms_enabled_single_shift_tables"></integer-array>
2158
2159    <!-- National language locking shift tables to enable for SMS encoding.
2160         Decoding is always enabled. 3GPP TS 23.038 states that this feature
2161         should not be enabled until a formal request is issued by the relevant
2162         national regulatory body. Array elements are codes from the table above.
2163         Example 1: devices sold in Turkey must include table 1 after the
2164           Turkish Telecommunication Authority requires locking shift encoding
2165           to be enabled (est. July 2012). (http://www.btk.gov.tr/eng/pdf/2009/BY-LAW_SMS.pdf)
2166           See also: http://www.mobitech.com.tr/tr/ersanozturkblog_en/index.php?entry=entry090223-160014
2167         Example 2: devices sold in India should include tables 4 through 13
2168         to enable use of the new Release 9 tables for Indic languages. -->
2169    <integer-array name="config_sms_enabled_locking_shift_tables"></integer-array>
2170
2171    <!-- Set to true if the RSSI should always display CDMA signal strength even on EVDO -->
2172    <bool name="config_alwaysUseCdmaRssi">false</bool>
2173
2174
2175    <!-- If this value is true, duplicate Source/Destination port fields
2176         in WDP header of some carriers OMADM wap push are supported.
2177         ex: MSGTYPE-TotalSegments-CurrentSegment
2178             -SourcePortDestPort-SourcePortDestPort-OMADM PDU
2179         If false, not supported. -->
2180    <bool name="config_duplicate_port_omadm_wappush">false</bool>
2181
2182    <!-- Maximum numerical value that will be shown in a status bar
2183         notification icon or in the notification itself. Will be replaced
2184         with @string/status_bar_notification_info_overflow when shown in the
2185         UI. -->
2186    <integer name="status_bar_notification_info_maxnum">999</integer>
2187
2188    <!-- Path to an ISO image to be shared with via USB mass storage.
2189         This is intended to allow packaging drivers or tools for installation on a PC. -->
2190    <string translatable="false" name="config_isoImagePath"></string>
2191
2192    <!-- Whether the system enables per-display focus. If the system has the input method for each
2193         display, this value should be true. -->
2194    <bool name="config_perDisplayFocusEnabled">false</bool>
2195
2196    <!-- Whether a software navigation bar should be shown. NOTE: in the future this may be
2197         autodetected from the Configuration. -->
2198    <bool name="config_showNavigationBar">false</bool>
2199
2200    <!-- Whether action menu items should be displayed in ALLCAPS or not.
2201         Defaults to true. If this is not appropriate for specific locales
2202         it should be disabled in that locale's resources. -->
2203    <bool name="config_actionMenuItemAllCaps">true</bool>
2204
2205    <!-- Remote server that can provide NTP responses. -->
2206    <string translatable="false" name="config_ntpServer">time.android.com</string>
2207    <!-- Normal polling frequency in milliseconds -->
2208    <integer name="config_ntpPollingInterval">86400000</integer>
2209    <!-- Try-again polling interval in milliseconds, in case the network request failed -->
2210    <integer name="config_ntpPollingIntervalShorter">60000</integer>
2211    <!-- Number of times to try again with the shorter interval, before backing
2212         off until the normal polling interval. A value < 0 indicates infinite. -->
2213    <integer name="config_ntpRetry">3</integer>
2214    <!-- Timeout to wait for NTP server response in milliseconds. -->
2215    <integer name="config_ntpTimeout">5000</integer>
2216
2217    <!-- Default network policy warning threshold, in megabytes. -->
2218    <integer name="config_networkPolicyDefaultWarning">2048</integer>
2219
2220    <!-- Set and Unsets WiMAX -->
2221    <bool name="config_wimaxEnabled">false</bool>
2222    <!-- Location of the wimax framwork jar location -->
2223    <string name="config_wimaxServiceJarLocation" translatable="false"></string>
2224    <!-- Location of the wimax native library locaiton -->
2225    <string name="config_wimaxNativeLibLocation" translatable="false"></string>
2226    <!-- Name of the wimax manager class -->
2227    <string name="config_wimaxManagerClassname" translatable="false"></string>
2228    <!-- Name of the wimax service class -->
2229    <string name="config_wimaxServiceClassname" translatable="false"></string>
2230    <!-- Name of the wimax state tracker clas -->
2231    <string name="config_wimaxStateTrackerClassname" translatable="false"></string>
2232
2233    <!-- Specifies whether the dreams feature should be supported.
2234         When true, the system will allow the user to configure dreams (screensavers)
2235         to launch when a user activity timeout occurs or the system is told to nap.
2236         When false, the dreams feature will be disabled (this does not affect dozing).
2237
2238         Consider setting this resource to false or disabling dreams by default when a
2239         doze component is specified below since dreaming will supercede dozing and
2240         will prevent the system from entering a low power state until the dream ends. -->
2241    <bool name="config_dreamsSupported">true</bool>
2242
2243    <!-- If supported, are dreams enabled? (by default) -->
2244    <bool name="config_dreamsEnabledByDefault">true</bool>
2245    <!-- If supported and enabled, are dreams activated when docked? (by default) -->
2246    <bool name="config_dreamsActivatedOnDockByDefault">true</bool>
2247    <!-- If supported and enabled, are dreams activated when asleep and charging? (by default) -->
2248    <bool name="config_dreamsActivatedOnSleepByDefault">false</bool>
2249    <!-- ComponentName of the default dream (Settings.Secure.DEFAULT_SCREENSAVER_COMPONENT) -->
2250    <string name="config_dreamsDefaultComponent" translatable="false">com.google.android.deskclock/com.android.deskclock.Screensaver</string>
2251
2252    <!-- Are we allowed to dream while not plugged in? -->
2253    <bool name="config_dreamsEnabledOnBattery">false</bool>
2254    <!-- Minimum battery level to allow dreaming when powered.
2255         Use -1 to disable this safety feature. -->
2256    <integer name="config_dreamsBatteryLevelMinimumWhenPowered">-1</integer>
2257    <!-- Minimum battery level to allow dreaming when not powered.
2258         Use -1 to disable this safety feature. -->
2259    <integer name="config_dreamsBatteryLevelMinimumWhenNotPowered">15</integer>
2260    <!-- If the battery level drops by this percentage and the user activity timeout
2261         has expired, then assume the device is receiving insufficient current to charge
2262         effectively and terminate the dream.  Use -1 to disable this safety feature.  -->
2263    <integer name="config_dreamsBatteryLevelDrainCutoff">5</integer>
2264    <!-- Limit of how long the device can remain unlocked due to attention checking.  -->
2265    <integer name="config_attentionMaximumExtension">900000</integer> <!-- 15 minutes.  -->
2266
2267    <!-- ComponentName of a dream to show whenever the system would otherwise have
2268         gone to sleep.  When the PowerManager is asked to go to sleep, it will instead
2269         try to start this dream if possible.  The dream should typically call startDozing()
2270         to put the display into a low power state and allow the application processor
2271         to be suspended.  When the dream ends, the system will go to sleep as usual.
2272         Specify the component name or an empty string if none.
2273
2274         Note that doze dreams are not subject to the same start conditions as ordinary dreams.
2275         Doze dreams will run whenever the power manager is in a dozing state. -->
2276    <string name="config_dozeComponent" translatable="false"></string>
2277
2278    <!-- If true, the doze component is not started until after the screen has been
2279         turned off and the screen off animation has been performed. -->
2280    <bool name="config_dozeAfterScreenOffByDefault">false</bool>
2281
2282    <!-- Doze: should the TYPE_PICK_UP_GESTURE sensor be used as a pulse signal. -->
2283    <bool name="config_dozePulsePickup">false</bool>
2284
2285    <!-- Type of the double tap sensor. Empty if double tap is not supported. -->
2286    <string name="config_dozeDoubleTapSensorType" translatable="false"></string>
2287
2288    <!-- Type of the tap sensor. Empty if tap is not supported. -->
2289    <string name="config_dozeTapSensorType" translatable="false"></string>
2290
2291    <!-- Type of the long press sensor. Empty if long press is not supported. -->
2292    <string name="config_dozeLongPressSensorType" translatable="false"></string>
2293
2294    <!-- Type of the udfps long press sensor. Empty if long press is not supported. -->
2295    <string name="config_dozeUdfpsLongPressSensorType" translatable="false"></string>
2296
2297    <!-- If the sensor that wakes up the lock screen is available or not. -->
2298    <bool name="config_dozeWakeLockScreenSensorAvailable">false</bool>
2299    <integer name="config_dozeWakeLockScreenDebounce">300</integer>
2300
2301    <!-- Type of the quick pickup sensor. Empty if quick pickup is not supported. -->
2302    <string name="config_quickPickupSensorType" translatable="false"></string>
2303
2304    <!-- Control whether the always on display mode is available. This should only be enabled on
2305         devices where the display has been tuned to be power efficient in DOZE and/or DOZE_SUSPEND
2306         states. -->
2307    <bool name="config_dozeAlwaysOnDisplayAvailable">false</bool>
2308
2309    <!-- Control whether the always on display mode is enabled by default. This value will be used
2310         during initialization when the setting is still null. -->
2311    <bool name="config_dozeAlwaysOnEnabled">true</bool>
2312
2313    <!-- If AOD can show an ambient version of the wallpaper -->
2314    <bool name="config_dozeSupportsAodWallpaper">true</bool>
2315
2316    <!-- Whether the display blanks itself when transitioning from a doze to a non-doze state -->
2317    <bool name="config_displayBlanksAfterDoze">false</bool>
2318
2319    <!-- True if the display hardware only has brightness buckets rather than a full range of
2320         backlight values -->
2321    <bool name="config_displayBrightnessBucketsInDoze">false</bool>
2322
2323    <!-- Power Management: Specifies whether to decouple the auto-suspend state of the
2324         device from the display on/off state.
2325
2326         When false, autosuspend_disable() will be called before the display is turned on
2327         and autosuspend_enable() will be called after the display is turned off.
2328         This mode provides best compatibility for devices using legacy power management
2329         features such as early suspend / late resume.
2330
2331         When true, autosuspend_display() and autosuspend_enable() will be called
2332         independently of whether the display is being turned on or off.  This mode
2333         enables the power manager to suspend the application processor while the
2334         display is on.
2335
2336         This resource should be set to "true" when a doze component has been specified
2337         to maximize power savings but not all devices support it.
2338
2339         Refer to autosuspend.h for details.
2340    -->
2341    <bool name="config_powerDecoupleAutoSuspendModeFromDisplay">false</bool>
2342
2343    <!-- Power Management: Specifies whether to decouple the interactive state of the
2344         device from the display on/off state.
2345
2346         When false, setInteractive(..., true) will be called before the display is turned on
2347         and setInteractive(..., false) will be called after the display is turned off.
2348         This mode provides best compatibility for devices that expect the interactive
2349         state to be tied to the display state.
2350
2351         When true, setInteractive(...) will be called independently of whether the display
2352         is being turned on or off.  This mode enables the power manager to reduce
2353         clocks and disable the touch controller while the display is on.
2354
2355         This resource should be set to "true" when a doze component has been specified
2356         to maximize power savings but not all devices support it.
2357
2358         Refer to power.h for details.
2359    -->
2360    <bool name="config_powerDecoupleInteractiveModeFromDisplay">false</bool>
2361
2362    <!-- User activity timeout: Minimum screen off timeout in milliseconds.
2363
2364         Sets a lower bound for the {@link Settings.System#SCREEN_OFF_TIMEOUT} setting
2365         which determines how soon the device will go to sleep when there is no
2366         user activity.
2367
2368         This value must be greater than zero, otherwise the device will immediately
2369         fall asleep again as soon as it is awoken.
2370    -->
2371    <integer name="config_minimumScreenOffTimeout">10000</integer>
2372
2373    <!-- User activity timeout: Maximum screen dim duration in milliseconds.
2374
2375         Sets an upper bound for how long the screen will dim before the device goes
2376         to sleep when there is no user activity.  The dim duration is subtracted from
2377         the overall screen off timeout to determine the screen dim timeout.
2378         When the screen dim timeout expires, the screen will dim, shortly thereafter
2379         the device will go to sleep.
2380
2381         If the screen off timeout is very short, the dim duration may be reduced
2382         proportionally.  See config_maximumScreenDimRatio.
2383
2384         This value may be zero in which case the screen will not dim before the
2385         device goes to sleep.
2386    -->
2387    <integer name="config_maximumScreenDimDuration">7000</integer>
2388
2389    <!-- User activity timeout: Maximum screen dim duration as a percentage of screen off timeout.
2390
2391         This resource is similar to config_maximumScreenDimDuration but the maximum
2392         screen dim duration is defined as a ratio of the overall screen off timeout
2393         instead of as an absolute value in milliseconds.  This is useful for reducing
2394         the dim duration when the screen off timeout is very short.
2395
2396         When computing the screen dim duration, the power manager uses the lesser
2397         of the effective durations expressed by config_maximumScreenDimDuration and
2398         config_maximumScreenDimRatio.
2399
2400         This value must be between 0% and 100%.  If the value is zero, the screen will not
2401         dim before the device goes to sleep.
2402    -->
2403    <fraction name="config_maximumScreenDimRatio">20%</fraction>
2404
2405    <!-- Minimum size of the scrollbar thumb's touch target. -->
2406    <dimen name="config_minScrollbarTouchTarget">48dp</dimen>
2407
2408    <!-- Base "touch slop" value used by ViewConfiguration as a
2409         movement threshold where scrolling should begin. -->
2410    <dimen name="config_viewConfigurationTouchSlop">8dp</dimen>
2411
2412    <!-- Base "hover slop" value used by ViewConfiguration as a
2413         movement threshold under which hover is considered "stationary". -->
2414    <dimen name="config_viewConfigurationHoverSlop">4dp</dimen>
2415
2416    <!-- Multiplier for gesture thresholds when a MotionEvent classification is ambiguous. -->
2417    <item name="config_ambiguousGestureMultiplier" format="float" type="dimen">2.0</item>
2418
2419    <!-- Minimum velocity to initiate a fling, as measured in dips per second. -->
2420    <dimen name="config_viewMinFlingVelocity">50dp</dimen>
2421
2422    <!-- Maximum velocity to initiate a fling, as measured in dips per second. -->
2423    <dimen name="config_viewMaxFlingVelocity">8000dp</dimen>
2424
2425    <!-- Amount of time in ms the user needs to press the relevant key to bring up the
2426         global actions dialog -->
2427    <integer name="config_globalActionsKeyTimeout">500</integer>
2428
2429    <!-- Amount of time in ms the user needs to press the relevant keys to trigger the
2430         screenshot chord -->
2431    <integer name="config_screenshotChordKeyTimeout">0</integer>
2432
2433    <!-- Default width of a vertical scrollbar and height of a horizontal scrollbar.
2434         Takes effect only if the scrollbar drawables have no intrinsic size. -->
2435    <dimen name="config_scrollbarSize">4dp</dimen>
2436
2437    <!-- Distance that should be scrolled, per axis value, in response to a horizontal
2438         {@link MotionEvent#ACTION_SCROLL} event. -->
2439    <dimen name="config_horizontalScrollFactor">64dp</dimen>
2440
2441    <!-- Distance that should be scrolled, per axis value, in response to a vertical
2442         {@link MotionEvent#ACTION_SCROLL} event. -->
2443    <dimen name="config_verticalScrollFactor">64dp</dimen>
2444
2445    <!-- Obsolete. Distance that should be scrolled, per axis value, in response to a
2446         {@link MotionEvent#ACTION_SCROLL} event. -->
2447    <dimen name="config_scrollFactor">64dp</dimen>
2448
2449    <!-- Maximum number of grid columns permitted in the ResolverActivity
2450         used for picking activities to handle an intent. -->
2451    <integer name="config_maxResolverActivityColumns">3</integer>
2452
2453    <!-- Array of OEM specific USB mode override config.
2454         OEM can override a certain USB mode depending on ro.bootmode.
2455         Specify an array of below items to set override rule.
2456         [bootmode]:[original USB mode]:[USB mode used]-->
2457    <integer-array translatable="false" name="config_oemUsbModeOverride">
2458    </integer-array>
2459
2460    <!-- Set to true to add links to Cell Broadcast app from Settings and MMS app. -->
2461    <bool name="config_cellBroadcastAppLinks">true</bool>
2462
2463    <!-- The default value if the SyncStorageEngine should sync automatically or not -->
2464    <bool name="config_syncstorageengine_masterSyncAutomatically">true</bool>
2465
2466    <!--  Maximum number of supported users -->
2467    <integer name="config_multiuserMaximumUsers">1</integer>
2468
2469    <!-- Maximum number of users we allow to be running at a time -->
2470    <integer name="config_multiuserMaxRunningUsers">3</integer>
2471
2472    <!-- Whether to delay user data locking for background user.
2473         If false, user switched-out from user switching will still be in running state until
2474         config_multiuserMaxRunningUsers is reached. Once config_multiuserMaxRunningUsers is
2475         reached, user will be stopped and user data is locked.
2476         If true, user switched out from user switching will always be stopped but its user data
2477         is not locked. Total number of unlocked users will be limited by
2478         config_multiuserMaxRunningUsers. Once that limit is reached, least recently stopped user
2479         will be locked. -->
2480    <bool name="config_multiuserDelayUserDataLocking">false</bool>
2481
2482    <!-- Whether to only install system packages on a user if they're allowlisted for that user
2483         type. These are flags and can be freely combined.
2484         0  - disable allowlist (install all system packages; no logging)
2485         1  - enforce (only install system packages if they are allowlisted)
2486         2  - log (log non-allowlisted packages)
2487         4  - any package not mentioned in the allowlist file is implicitly allowlisted on all users
2488         8  - same as 4, but just for the SYSTEM user
2489         16 - ignore OTAs (don't install system packages during OTAs)
2490         Common scenarios:
2491          - to enable feature (fully enforced) for a complete allowlist: 1
2492          - to enable feature for an incomplete allowlist (so use implicit allowlist mode): 5
2493          - to enable feature but implicitly allowlist for SYSTEM user to ease local development: 9
2494          - to disable feature completely if it had never been enabled: 16
2495          - to henceforth disable feature and try to undo its previous effects: 0
2496        Note: This list must be kept current with PACKAGE_WHITELIST_MODE_PROP in
2497        frameworks/base/services/core/java/com/android/server/pm/UserSystemPackageInstaller.java -->
2498    <integer name="config_userTypePackageWhitelistMode">13</integer> <!-- 1+4+8 -->
2499
2500    <!-- Whether UI for multi user should be shown -->
2501    <bool name="config_enableMultiUserUI">false</bool>
2502
2503    <!-- Whether the new Auto Selection Network UI should be shown -->
2504    <bool name="config_enableNewAutoSelectNetworkUI">false</bool>
2505
2506    <!-- If true, then we do not ask user for permission for apps to connect to USB devices.
2507         Do not set this to true for production devices. Doing so will cause you to fail CTS. -->
2508    <bool name="config_disableUsbPermissionDialogs">false</bool>
2509
2510    <!-- Activity to handle Usb Device connection in USB Host side. Keeping it to null value will
2511         lead into handling it inside system using Intent resolution. Non-null contents will have
2512         format of package-name/ActivityClassName. -->
2513    <string name="config_UsbDeviceConnectionHandling_component" translatable="false">@null</string>
2514
2515    <!-- Minimum span needed to begin a touch scaling gesture.
2516         If the span is equal to or greater than this size, a scaling gesture
2517         will begin, where supported. (See android.view.ScaleGestureDetector)
2518
2519         This also takes into account the size of any active touch points.
2520         Devices with screens that deviate too far from their assigned density
2521         bucket should consider tuning this value in a device-specific overlay.
2522         For best results, care should be taken such that this value remains
2523         larger than the minimum reported touchMajor/touchMinor values
2524         reported by the hardware. -->
2525    <dimen name="config_minScalingSpan">27mm</dimen>
2526
2527    <!-- Minimum accepted value for touchMajor while scaling. This may be tuned
2528         per-device in overlays. -->
2529    <dimen name="config_minScalingTouchMajor">48dp</dimen>
2530
2531    <!-- Safe headphone volume index. When music stream volume is below this index
2532    the SPL on headphone output is compliant to EN 60950 requirements for portable music
2533    players. -->
2534    <integer name="config_safe_media_volume_index">10</integer>
2535
2536    <!-- Safe USB headset gain. This value is used to ensure that the SPL on the USB
2537    headset output is compliant to EN 60950 requirements for portable music players. -->
2538    <integer name="config_safe_media_volume_usb_mB">-3700</integer>
2539
2540    <!-- Configure mobile network MTU. The standard default is set here but each carrier
2541         may have a specific value set in an overlay config.xml file. -->
2542    <integer name="config_mobile_mtu">1500</integer>
2543
2544    <!-- Configure mobile tcp buffer sizes in the form:
2545         rat-name:rmem_min,rmem_def,rmem_max,wmem_min,wmem_def,wmem_max
2546         If no value is found for the rat-name in use, the system default will be applied.
2547    -->
2548    <string-array name="config_mobile_tcp_buffers">
2549    </string-array>
2550
2551    <!-- Configure ethernet tcp buffersizes in the form:
2552         rmem_min,rmem_def,rmem_max,wmem_min,wmem_def,wmem_max -->
2553    <string name="config_ethernet_tcp_buffers" translatable="false">524288,1048576,3145728,524288,1048576,2097152</string>
2554
2555    <!-- What source to use to estimate link upstream and downstream bandwidth capacities.
2556         Default is bandwidth_estimator.
2557         Values are bandwidth_estimator, carrier_config and modem. -->
2558    <string name="config_bandwidthEstimateSource">bandwidth_estimator</string>
2559
2560    <!-- Whether WiFi display is supported by this device.
2561         There are many prerequisites for this feature to work correctly.
2562         Here are a few of them:
2563         * The WiFi radio must support WiFi P2P.
2564         * The WiFi radio must support concurrent connections to the WiFi display and
2565           to an access point.
2566         * The Audio Server audio_policy_configuration.xml file must specify a rule for
2567           the "r_submix" remote submix module.  This module is used to record and stream system
2568           audio output to the WiFi display encoder in the media server.
2569         * The remote submix module "audio.r_submix.default" must be installed on the device.
2570         * The device must be provisioned with HDCP keys (for protected content).
2571    -->
2572    <bool name="config_enableWifiDisplay">false</bool>
2573
2574    <!-- When true, local displays that do not contain any of their own content will automatically
2575         mirror the content of the default display. -->
2576    <bool name="config_localDisplaysMirrorContent">true</bool>
2577
2578    <!-- Controls if local secondary displays should be private or not. Value specified in the array
2579         represents physical port address of each display and display in this list will be marked
2580         as private. {@see android.view.Display#FLAG_PRIVATE} -->
2581    <integer-array translatable="false" name="config_localPrivateDisplayPorts"></integer-array>
2582
2583    <!-- The default mode for the default display. One of the following values (See Display.java):
2584             0 - COLOR_MODE_DEFAULT
2585             7 - COLOR_MODE_SRGB
2586    -->
2587    <integer name="config_defaultDisplayDefaultColorMode">0</integer>
2588
2589    <!-- When true use the linux /dev/input/event subsystem to detect the switch changes
2590         on the headphone/microphone jack. When false use the older uevent framework. -->
2591    <bool name="config_useDevInputEventForAudioJack">false</bool>
2592
2593    <!-- Whether safe headphone volume is enabled or not (country specific). -->
2594    <bool name="config_safe_media_volume_enabled">true</bool>
2595
2596    <!-- Whether safe headphone volume warning dialog is disabled on Vol+ (operator specific). -->
2597    <bool name="config_safe_media_disable_on_volume_up">true</bool>
2598
2599    <!-- Set to true if the wifi display supports compositing content stored
2600         in gralloc protected buffers.  For this to be true, there must exist
2601         a protected hardware path for surface flinger to composite and send
2602         protected buffers to the wifi display video encoder.
2603
2604         If this flag is false, we advise applications not to use protected
2605         buffers (if possible) when presenting content to a wifi display because
2606         the content may be blanked.
2607
2608         This flag controls whether the {@link Display#FLAG_SUPPORTS_PROTECTED_BUFFERS}
2609         flag is set for wifi displays.
2610    -->
2611    <bool name="config_wifiDisplaySupportsProtectedBuffers">false</bool>
2612
2613    <!-- Whether camera shutter sound is forced or not  (country specific). -->
2614    <bool name="config_camera_sound_forced">false</bool>
2615
2616    <!-- Set to true if we need to not prefer an APN.
2617         This is being added to enable a simple scenario of pre-paid
2618         provisioning on some carriers, working around a bug (7305641)
2619         where if the preferred is used we don't try the others. -->
2620    <bool name="config_dontPreferApn">false</bool>
2621
2622    <!-- Set to true if after a provisioning apn the radio should be restarted -->
2623    <bool name="config_restartRadioAfterProvisioning">false</bool>
2624
2625    <!-- Vibrator pattern to be used as the default for notifications
2626         that specify DEFAULT_VIBRATE.
2627     -->
2628    <integer-array name="config_defaultNotificationVibePattern">
2629        <item>0</item>
2630        <item>350</item>
2631        <item>250</item>
2632        <item>350</item>
2633    </integer-array>
2634
2635    <!-- Vibrator pattern to be used as the default for notifications
2636         that do not specify vibration but vibrate anyway because the device
2637         is in vibrate mode.
2638     -->
2639    <integer-array name="config_notificationFallbackVibePattern">
2640        <item>0</item>
2641        <item>100</item>
2642        <item>150</item>
2643        <item>100</item>
2644    </integer-array>
2645
2646    <!-- Flag indicating if the speed up audio on mt call code should be executed -->
2647    <bool name="config_speed_up_audio_on_mt_calls">false</bool>
2648
2649    <!-- Class name of the framework account picker activity.
2650         Can be customized for other product types -->
2651    <string name="config_chooseAccountActivity" translatable="false"
2652            >android/android.accounts.ChooseAccountActivity</string>
2653    <!-- Class name of the account type and account picker activity.
2654         Can be customized for other product types -->
2655    <string name="config_chooseTypeAndAccountActivity" translatable="false"
2656            >android/android.accounts.ChooseTypeAndAccountActivity</string>
2657    <!-- Name of the activity that will handle requests to the system to choose an activity for
2658         the purposes of resolving an intent. -->
2659    <string name="config_chooserActivity" translatable="false"
2660            >com.android.systemui/com.android.systemui.chooser.ChooserActivity</string>
2661    <!-- Component name of a custom ResolverActivity (Intent resolver) to be used instead of
2662         the default framework version. If left empty, then the framework version will be used.
2663         Example: com.google.android.myapp/.resolver.MyResolverActivity  -->
2664    <string name="config_customResolverActivity" translatable="false"></string>
2665
2666    <!-- Name of the activity or service that prompts the user to reject, accept, or allowlist
2667         an adb host's public key, when an unwhitelisted host connects to the local adbd.
2668         Can be customized for other product types -->
2669    <string name="config_customAdbPublicKeyConfirmationComponent"
2670            >com.android.systemui/com.android.systemui.usb.UsbDebuggingActivity</string>
2671
2672    <!-- Name of the activity that prompts the secondary user to acknowledge they need to
2673         switch to the primary user to enable USB debugging.
2674         Can be customized for other product types -->
2675    <string name="config_customAdbPublicKeyConfirmationSecondaryUserComponent"
2676            >com.android.systemui/com.android.systemui.usb.UsbDebuggingSecondaryUserActivity</string>
2677
2678    <!-- Name of the activity or service that prompts the user to reject, accept, or allowlist
2679         a wireless network for wireless debugging.
2680         Can be customized for other product types -->
2681    <string name="config_customAdbWifiNetworkConfirmationComponent"
2682            >com.android.systemui/com.android.systemui.wifi.WifiDebuggingActivity</string>
2683
2684    <!-- Name of the activity that prompts the secondary user to acknowledge they need to
2685         switch to the primary user to enable wireless debugging.
2686         Can be customized for other product types -->
2687    <string name="config_customAdbWifiNetworkConfirmationSecondaryUserComponent"
2688            >com.android.systemui/com.android.systemui.wifi.WifiDebuggingSecondaryUserActivity</string>
2689
2690    <!-- Component name of the activity that shows the usb containment status. -->
2691    <string name="config_usbContaminantActivity" translatable="false"
2692            >com.android.systemui/com.android.systemui.usb.UsbContaminantActivity</string>
2693
2694    <!-- Component name of the activity that shows the request for access to a usb device. -->
2695    <string name="config_usbPermissionActivity" translatable="false"
2696            >com.android.systemui/com.android.systemui.usb.UsbPermissionActivity</string>
2697
2698    <!-- Component name of the activity that shows more information about a usb accessory. -->
2699    <string name="config_usbAccessoryUriActivity" translatable="false"
2700            >com.android.systemui/com.android.systemui.usb.UsbAccessoryUriActivity</string>
2701
2702    <!-- Component name of the activity that confirms the activity to start when a usb device is
2703         plugged in. -->
2704    <string name="config_usbConfirmActivity" translatable="false"
2705            >com.android.systemui/com.android.systemui.usb.UsbConfirmActivity</string>
2706
2707    <!-- Component name of the activity to select the activity to start when a usb device is plugged
2708         in. -->
2709    <string name="config_usbResolverActivity" translatable="false"
2710            >com.android.systemui/com.android.systemui.usb.UsbResolverActivity</string>
2711
2712    <!-- Component name of the activity used to inform a user about a sensory being blocked because
2713     of privacy settings. -->
2714    <string name="config_sensorUseStartedActivity" translatable="false"
2715            >com.android.systemui/com.android.systemui.sensorprivacy.SensorUseStartedActivity</string>
2716
2717    <!-- Name of the dialog that is used to request the user's consent for a Platform VPN -->
2718    <string name="config_platformVpnConfirmDialogComponent" translatable="false"
2719            >com.android.vpndialogs/com.android.vpndialogs.PlatformVpnConfirmDialog</string>
2720
2721    <!-- Name of the dialog that is used to request the user's consent for a VpnService VPN -->
2722    <string name="config_customVpnConfirmDialogComponent" translatable="false"
2723            >com.android.vpndialogs/com.android.vpndialogs.ConfirmDialog</string>
2724
2725    <!-- Name of the dialog that is used to inform the user that always-on VPN is disconnected -->
2726    <string name="config_customVpnAlwaysOnDisconnectedDialogComponent" translatable="false"
2727            >com.android.vpndialogs/com.android.vpndialogs.AlwaysOnDisconnectedDialog</string>
2728
2729    <!-- Name of the dialog that is used to install the carrier app when the SIM is inserted -->
2730    <string name="config_carrierAppInstallDialogComponent" translatable="false"
2731            >com.android.simappdialog/com.android.simappdialog.InstallCarrierAppActivity</string>
2732
2733    <!-- Apps that are authorized to access shared accounts, overridden by product overlays -->
2734    <string name="config_appsAuthorizedForSharedAccounts" translatable="false">;com.android.settings;</string>
2735
2736    <!-- Flag indicating that the media framework should not allow changes or mute on any
2737         stream or global volumes. -->
2738    <bool name="config_useFixedVolume">false</bool>
2739
2740    <!-- The list of IMEs which should be disabled until used.
2741         This function suppresses update notifications for these pre-installed apps.
2742         We need to set this configuration carefully that they should not have functionarities
2743         other than "IME" or "Spell Checker". In InputMethodManagerService,
2744         the listed IMEs are disabled until used when all of the following conditions are met.
2745         1. Not selected as an enabled IME in the Settings
2746         2. Not selected as a spell checker in the Settings
2747         3. Installed
2748         4. A pre-installed IME
2749         5. Not enabled
2750         And the disabled_until_used state for an IME is released by InputMethodManagerService
2751         when the IME is selected as an enabled IME. -->
2752    <string-array name="config_disabledUntilUsedPreinstalledImes" translatable="false">
2753        <item>com.android.inputmethod.latin</item>
2754    </string-array>
2755
2756    <!-- The list of classes that should be added to the notification ranking pipeline.
2757     See {@link com.android.server.notification.NotificationSignalExtractor}
2758      If you add a new extractor to this list make sure to update
2759      NotificationManagerService.handleRankingSort()-->
2760    <string-array name="config_notificationSignalExtractors">
2761        <!-- many of the following extractors depend on the notification channel, so this
2762        extractor must come first -->
2763        <item>com.android.server.notification.NotificationChannelExtractor</item>
2764        <item>com.android.server.notification.NotificationAdjustmentExtractor</item>
2765        <item>com.android.server.notification.BubbleExtractor</item>
2766        <!-- depends on AdjustmentExtractor-->
2767        <item>com.android.server.notification.ValidateNotificationPeople</item>
2768        <item>com.android.server.notification.PriorityExtractor</item>
2769        <!-- depends on PriorityExtractor -->
2770        <item>com.android.server.notification.ZenModeExtractor</item>
2771        <item>com.android.server.notification.ImportanceExtractor</item>
2772        <!-- depends on ImportanceExtractor-->
2773        <item>com.android.server.notification.NotificationIntrusivenessExtractor</item>
2774        <item>com.android.server.notification.VisibilityExtractor</item>
2775        <!-- Depends on ZenModeExtractor -->
2776        <item>com.android.server.notification.BadgeExtractor</item>
2777        <item>com.android.server.notification.CriticalNotificationExtractor</item>
2778
2779    </string-array>
2780
2781    <!-- Default Gravity setting for the system Toast view. Equivalent to: Gravity.CENTER_HORIZONTAL | Gravity.BOTTOM -->
2782    <integer name="config_toastDefaultGravity">0x00000051</integer>
2783
2784    <!-- set to false if we need to show user confirmation
2785         when alpha identifier is not provided by the UICC -->
2786    <bool name="config_stkNoAlphaUsrCnf">true</bool>
2787
2788    <!-- Threshold (in ms) under which a screen off / screen on will be considered a reset of the
2789         immersive mode confirmation prompt.-->
2790    <integer name="config_immersive_mode_confirmation_panic">5000</integer>
2791
2792    <!-- For some operators, PDU has garbages. To fix it, need to use valid index -->
2793    <integer name="config_valid_wappush_index">-1</integer>
2794
2795    <!-- call barring MMI code from TS 22.030 Annex B -->
2796    <string-array translatable="false" name="config_callBarringMMI">
2797        <item>33</item>
2798        <item>331</item>
2799        <item>332</item>
2800        <item>35</item>
2801        <item>351</item>
2802        <item>330</item>
2803        <item>333</item>
2804        <item>353</item>
2805    </string-array>
2806
2807    <!-- Ims supported call barring MMI code -->
2808    <string-array translatable="false" name="config_callBarringMMI_for_ims">
2809        <item>33</item>
2810        <item>331</item>
2811        <item>332</item>
2812        <item>35</item>
2813        <item>351</item>
2814        <item>330</item>
2815        <item>333</item>
2816        <item>353</item>
2817    </string-array>
2818
2819    <!-- Override the default detection behavior for the framework method
2820         android.view.ViewConfiguration#hasPermanentMenuKey().
2821         Valid settings are:
2822         0 - No change. Use the default autodetection behavior.
2823         1 - The device DOES have a permanent menu key; ignore autodetection.
2824         2 - The device DOES NOT have a permanent menu key; ignore autodetection. -->
2825    <integer name="config_overrideHasPermanentMenuKey">0</integer>
2826
2827    <!-- Override the DPad detection behavior for configuration purposes -->
2828    <bool name="config_hasPermanentDpad">false</bool>
2829
2830    <!-- default window inset isRound property -->
2831    <bool name="config_windowIsRound">false</bool>
2832
2833    <!-- Override this value if the device has a chin, i.e. area that is not actual part of the
2834         screen but you would like to be treated as a real display. The value is the height of the
2835         chin. -->
2836    <integer name="config_windowOutsetBottom">0</integer>
2837
2838    <!-- Package name for default network scorer app; overridden by product overlays. -->
2839    <string name="config_defaultNetworkScorerPackageName"></string>
2840
2841    <!-- The amount to scale fullscreen snapshots for Overview and snapshot starting windows. -->
2842    <item name="config_highResTaskSnapshotScale" format="float" type="dimen">1.0</item>
2843
2844    <!-- The amount to scale reduced scale snapshots for Overview and snapshot starting windows.
2845         Reduced scale snapshots are loaded before full screen snapshots to improve load times and
2846         minimize the chance the user will see an empty task card. If set to 0, reduced scale
2847         snapshots are disabled, and snapshots will only be stored at config_highResTaskSnapshotScale
2848         -->
2849    <item name="config_lowResTaskSnapshotScale" format="float" type="dimen">0.5</item>
2850
2851    <!-- Feature flag to store TaskSnapshot in 16 bit pixel format to save memory. -->
2852    <bool name="config_use16BitTaskSnapshotPixelFormat">false</bool>
2853
2854    <!-- Determines whether recent tasks are provided to the user. Default device has recents
2855         property. If this is false, then the following recents config flags are ignored. -->
2856    <bool name="config_hasRecents">true</bool>
2857
2858    <!-- Component name for the activity that will be presenting the Recents UI, which will receive
2859         special permissions for API related to fetching and presenting recent tasks. The default
2860         configuration uses Launcehr3QuickStep as default launcher and points to the corresponding
2861         recents component. When using a different default launcher, change this appropriately or
2862         use the default systemui implementation: com.android.systemui/.recents.RecentsActivity -->
2863    <string name="config_recentsComponentName" translatable="false"
2864            >com.android.launcher3/com.android.quickstep.RecentsActivity</string>
2865
2866    <!-- SystemUi service component -->
2867    <string name="config_systemUIServiceComponent" translatable="false"
2868            >com.android.systemui/com.android.systemui.SystemUIService</string>
2869
2870    <!-- Package handling Quick controls -->
2871    <string name="config_controlsPackage" translatable="false"
2872            >com.android.systemui</string>
2873
2874    <!-- Keyguard component -->
2875    <string name="config_keyguardComponent" translatable="false"
2876            >com.android.systemui/com.android.systemui.keyguard.KeyguardService</string>
2877
2878    <!-- Screen record dialog component -->
2879    <string name="config_screenRecorderComponent" translatable="false"
2880            >com.android.systemui/com.android.systemui.screenrecord.ScreenRecordDialog</string>
2881
2882    <!-- The component name of a special dock app that merely launches a dream.
2883         We don't want to launch this app when docked because it causes an unnecessary
2884         activity transition.  We just want to start the dream. -->
2885    <string name="config_somnambulatorComponent" translatable="false"
2886            >com.android.systemui/com.android.systemui.Somnambulator</string>
2887
2888    <!-- The component name of a special dock app that merely launches a dream.
2889         We don't want to launch this app when docked because it causes an unnecessary
2890         activity transition.  We just want to start the dream.. -->
2891    <string name="config_screenshotServiceComponent" translatable="false"
2892            >com.android.systemui/com.android.systemui.screenshot.TakeScreenshotService</string>
2893
2894    <!-- The component notified when there is an error while taking a screenshot. -->
2895    <string name="config_screenshotErrorReceiverComponent" translatable="false"
2896            >com.android.systemui/com.android.systemui.screenshot.ScreenshotServiceErrorReceiver</string>
2897
2898    <!-- The component for the activity shown to grant permissions for a slice. -->
2899    <string name="config_slicePermissionComponent" translatable="false"
2900            >com.android.systemui/com.android.systemui.SlicePermissionActivity</string>
2901
2902    <!-- The minimum number of visible recent tasks to be presented to the user through the
2903         SystemUI. Can be -1 if there is no minimum limit. -->
2904    <integer name="config_minNumVisibleRecentTasks_grid">-1</integer>
2905
2906    <!-- The maximum number of visible recent tasks to be presented to the user through the
2907         SystemUI. Can be -1 if there is no maximum limit. -->
2908    <integer name="config_maxNumVisibleRecentTasks_grid">9</integer>
2909
2910    <!-- The minimum number of visible recent tasks to be presented to the user through the
2911         SystemUI. Can be -1 if there is no minimum limit. -->
2912    <integer name="config_minNumVisibleRecentTasks_lowRam">-1</integer>
2913
2914    <!-- The maximum number of visible recent tasks to be presented to the user through the
2915         SystemUI. Can be -1 if there is no maximum limit. -->
2916    <integer name="config_maxNumVisibleRecentTasks_lowRam">9</integer>
2917
2918    <!-- The minimum number of visible recent tasks to be presented to the user through the
2919         SystemUI. Can be -1 if there is no minimum limit. -->
2920    <integer name="config_minNumVisibleRecentTasks">5</integer>
2921
2922    <!-- The maximum number of visible recent tasks to be presented to the user through the
2923         SystemUI. Can be -1 if there is no maximum limit. -->
2924    <integer name="config_maxNumVisibleRecentTasks">-1</integer>
2925
2926    <!-- The duration in which a recent task is considered in session and should be visible. -->
2927    <integer name="config_activeTaskDurationHours">6</integer>
2928
2929    <!-- default window ShowCircularMask property -->
2930    <bool name="config_windowShowCircularMask">false</bool>
2931
2932    <!-- default value for whether circular emulators (ro.emulator.circular)
2933         should show a display overlay on the screen -->
2934    <bool name="config_windowEnableCircularEmulatorDisplayOverlay">false</bool>
2935
2936    <!-- Defines the default set of global actions. Actions may still be disabled or hidden based
2937         on the current state of the device.
2938         Each item must be one of the following strings:
2939         "power" = Power off
2940         "settings" = An action to launch settings
2941         "airplane" = Airplane mode toggle
2942         "bugreport" = Take bug report, if available
2943         "silent" = silent mode
2944         "users" = list of users
2945         "restart" = restart device
2946         "emergency" = Launch emergency dialer
2947         "lockdown" = Lock down device until the user authenticates
2948         "logout" =  Logout the current user
2949         -->
2950    <string-array translatable="false" name="config_globalActionsList">
2951        <item>emergency</item>
2952        <item>lockdown</item>
2953        <item>power</item>
2954        <item>restart</item>
2955        <item>logout</item>
2956        <item>screenshot</item>
2957        <item>bugreport</item>
2958    </string-array>
2959
2960    <!-- Number of milliseconds to hold a wake lock to ensure that drawing is fully
2961         flushed to the display while dozing.  This value needs to be large enough
2962         to account for processing and rendering time plus a frame or two of latency
2963         in the display pipeline plus some slack just to be sure. -->
2964    <integer name="config_drawLockTimeoutMillis">120</integer>
2965
2966    <!-- An array of device capabilities defined by GSMA SGP.22 v2.0.
2967         The first item is the capability name that the device supports. The second item is the
2968         major version. The minor and revision versions are default to 0s.
2969         The device capabilities and their definition in the spec are:
2970             gsm : gsmSupportedRelease
2971             utran : utranSupportedRelease
2972             cdma1x : cdma2000onexSupportedRelease
2973             hrpd : cdma2000hrpdSupportedRelease
2974             ehrpd : cdma2000ehrpdSupportedRelease
2975             eutran : eutranSupportedRelease
2976             nfc : contactlessSupportedRelease
2977             crl : rspCrlSupportedVersion
2978             nrepc : nrEpcSupportedRelease
2979             nr5gc : nr5gcSupportedRelease
2980             eutran5gc : eutran5gcSupportedRelease
2981    -->
2982    <string-array translatable="false" name="config_telephonyEuiccDeviceCapabilities">
2983        <!-- Example:
2984        <item>"gsm,11"</item>
2985        <item>"utran,11"</item>
2986        <item>"cdma1x,1"</item>
2987        <item>"hrpd,3"</item>
2988        <item>"ehrpd,12"</item>
2989        <item>"eutran,11"</item>
2990        <item>"nfc,1"</item>
2991        <item>"crl,1"</item>
2992        <item>"nrepc,15"</item>
2993        <item>"nr5gc,15"</item>
2994        <item>"eutran5gc,15"</item>
2995        -->
2996    </string-array>
2997
2998    <!-- default telephony hardware configuration for this platform.
2999    -->
3000    <!-- this string array should be overridden by the device to present a list
3001         telephony hardware resource.  this is used by the telephony device controller
3002         (TDC) to offer the basic capabilities of the hardware to the telephony
3003         framework
3004    -->
3005    <!-- an array of "[hardware type],[hardware-uuid],[state],[[hardware-type specific]]"
3006         with, [[hardware-type specific]] in:
3007            - "[[ril-model],[rat],[max-active-voice],[max-active-data],[max-active-standby]]"
3008              for 'modem' hardware
3009            - "[[associated-modem-uuid]]"
3010              for 'sim' hardware.
3011         refer to HardwareConfig in com.android.internal.telephony for specific details/values
3012         those elements can carry.
3013    -->
3014    <string-array translatable="false" name="config_telephonyHardware">
3015        <!-- modem -->
3016        <item>0,modem,0,0,0,1,1,1</item>
3017        <!-- sim -->
3018        <item>1,sim,0,modem</item>
3019    </string-array>
3020
3021    <!-- This string array can be overriden to add an additional DRM support for WebView EME. -->
3022    <!-- Array of "[keySystemName],[UuidOfMediaDrm]" -->
3023    <string-array name="config_keySystemUuidMapping" translatable="false">
3024        <!-- Example:
3025        <item>"x-com.microsoft.playready,9A04F079-9840-4286-AB92-E65BE0885F95"</item>
3026        -->
3027    </string-array>
3028
3029    <!-- Flag indicating which package name can access the persistent data partition -->
3030    <string name="config_persistentDataPackageName" translatable="false"></string>
3031
3032    <!-- Flag indicating which package name can access DeviceConfig table -->
3033    <string name="config_deviceConfiguratorPackageName" translatable="false"></string>
3034
3035    <!-- Flag indicating apps will skip sending hold request before merge. In this case
3036        IMS service implementation will do both.i.e.hold followed by merge. -->
3037    <bool name="skipHoldBeforeMerge">true</bool>
3038
3039    <!-- Flag indicating whether the IMS service can be turned off. If false then
3040        the service will not be turned-off completely (the ImsManager.turnOffIms() will
3041        be disabled) but individual Features can be disabled using ImsConfig.setFeatureValue() -->
3042    <bool name="imsServiceAllowTurnOff">true</bool>
3043
3044    <!-- Flag specifying whether VoLTE is available on device -->
3045    <bool name="config_device_volte_available">false</bool>
3046
3047    <!-- Flag specifying whether VoLTE should be available for carrier: independent of
3048         carrier provisioning. If false: hard disabled. If true: then depends on carrier
3049         provisioning, availability etc -->
3050    <bool name="config_carrier_volte_available">false</bool>
3051
3052    <!-- Flag specifying whether VoLTE TTY is supported -->
3053    <bool name="config_carrier_volte_tty_supported">true</bool>
3054
3055    <!-- Flag specifying whether VT is available on device -->
3056    <bool name="config_device_vt_available">false</bool>
3057
3058    <!-- Flag specifying whether the device will use the "allow_hold_in_ims_call" carrier config
3059         option.  When false, the device will support holding of IMS calls, regardless of the
3060         carrier config setting. -->
3061    <bool name="config_device_respects_hold_carrier_config">true</bool>
3062
3063    <!-- Flag specifying whether VT should be available for carrier: independent of
3064         carrier provisioning. If false: hard disabled. If true: then depends on carrier
3065         provisioning, availability etc -->
3066    <bool name="config_carrier_vt_available">false</bool>
3067
3068    <!-- Flag specifying whether WFC over IMS is available on device -->
3069        <bool name="config_device_wfc_ims_available">false</bool>
3070
3071    <!-- Flag specifying whether WFC over IMS should be available for carrier: independent of
3072         carrier provisioning. If false: hard disabled. If true: then depends on carrier
3073         provisioning, availability etc -->
3074    <bool name="config_carrier_wfc_ims_available">false</bool>
3075
3076    <!-- Whether to use voip audio mode for ims call -->
3077    <bool name="config_use_voip_mode_for_ims">false</bool>
3078
3079    <!-- Boolean indicating USSD over IMS is allowed.
3080     If it is not supported due to modem limitations, USSD send over the CS pipe instead.-->
3081    <bool name="config_allow_ussd_over_ims">false</bool>
3082
3083    <!-- String array containing numbers that shouldn't be logged. Country-specific. -->
3084    <string-array name="unloggable_phone_numbers" />
3085
3086    <!-- Cellular data service package name to bind to by default. If none is specified in an overlay, an
3087         empty string is passed in -->
3088    <string name="config_wwan_data_service_package" translatable="false">com.android.phone</string>
3089
3090    <!-- IWLAN data service package name to bind to by default. If none is specified in an overlay, an
3091         empty string is passed in -->
3092    <string name="config_wlan_data_service_package" translatable="false"></string>
3093
3094    <!-- Boolean indicating whether the Iwlan data service supports persistence of iwlan ipsec
3095         tunnels across service restart. If iwlan tunnels are not persisted across restart,
3096         Framework will clean up dangling data connections when service restarts -->
3097    <bool name="config_wlan_data_service_conn_persistence_on_restart">true</bool>
3098
3099    <!-- Cellular data service class name to bind to by default. If none is specified in an overlay, an
3100         empty string is passed in -->
3101    <string name="config_wwan_data_service_class" translatable="false"></string>
3102
3103    <!-- IWLAN data service class name to bind to by default. If none is specified in an overlay, an
3104         empty string is passed in -->
3105    <string name="config_wlan_data_service_class" translatable="false"></string>
3106
3107    <bool name="config_networkSamplingWakesDevice">true</bool>
3108
3109    <!--From SmsMessage-->
3110    <!--Support decoding the user data payload as pack GSM 8-bit (a GSM alphabet
3111        string that's stored in 8-bit unpacked format) characters.-->
3112    <bool translatable="false" name="config_sms_decode_gsm_8bit_data">false</bool>
3113
3114    <!-- Configures encoding type to parse the User Data of an SMS for reserved TP-DCS value.
3115         Refer to SmsConstants.java
3116         ENCODING_UNKNOWN = 0;
3117         ENCODING_7BIT = 1;
3118         ENCODING_8BIT = 2;
3119         ENCODING_16BIT = 3;
3120         ENCODING_KSC5601 = 4;
3121         -->
3122    <integer name="default_reserved_data_coding_scheme">2</integer>
3123
3124    <!-- If EMS is not supported, framework breaks down EMS into single segment SMS
3125         and adds page info " x/y". This config is used to set which carrier doesn't
3126         support EMS and whether page info should be added at the beginning or the end.
3127         We use tag 'prefix' for position beginning and 'suffix' for position end.
3128         And use gid to distinguish different carriers which using same mcc and mnc.
3129         Examples: <item>simOperatorNumber;position;gid(optional)</item>>
3130    -->
3131    <string-array translatable="false" name="no_ems_support_sim_operators">
3132        <!-- VZW -->
3133        <item>20404;suffix;BAE0000000000000</item>
3134    </string-array>
3135
3136    <bool name="config_auto_attach_data_on_creation">true</bool>
3137
3138    <!-- Sprint need a 70 ms delay for 3way call -->
3139    <integer name="config_cdma_3waycall_flash_delay">0</integer>
3140
3141    <!-- If there is no preload VM number in the sim card, carriers such as
3142         Verizon require to load a default vm number from the configurantion.
3143         Define config_default_vm_number for this purpose. And there are two
3144         optional formats for this configuration as below:
3145         (1)<item>voicemail number</item>
3146         (2)<item>voicemail number;gid</item>
3147         The logic to pick up the correct voicemail number:
3148         (1) If the config_default_vm_number array has no gid special item, the last one will be
3149         picked
3150         (2) If the config_default_vm_number array has gid special item and  it matches the current
3151         sim's gid, it will be picked.
3152         (3) If the config_default_vm_number array has gid special item but it doesn't match the
3153         current sim's gid, the last one without gid will be picked -->
3154    <string-array translatable="false" name="config_default_vm_number" />
3155
3156    <!--SIM does not save, but the voice mail number to be changed. -->
3157    <bool name="editable_voicemailnumber">false</bool>
3158
3159    <!-- service number convert map in roaming network. -->
3160    <!-- [dialstring],[replacement][,optional gid] -->
3161    <string-array translatable="false" name="dial_string_replace">
3162    </string-array>
3163
3164    <!-- Flag indicating whether radio is to be restarted on the error of
3165         PDP_FAIL_REGULAR_DEACTIVATION/0x24 -->
3166    <bool name="config_restart_radio_on_pdp_fail_regular_deactivation">false</bool>
3167
3168    <!-- networks that don't want data deactivate when shutdown the phone
3169         note this is dependent on the operator of the network we're on,
3170         not operator on the SIM -->
3171    <string-array translatable="false" name="networks_not_clear_data">
3172        <item>71203</item>
3173        <item>71606</item>
3174        <item>71610</item>
3175        <item>732101</item>
3176    </string-array>
3177
3178    <!-- Config determines whether to update phone object when voice registration
3179         state changes. Voice radio tech change will always trigger an update of
3180         phone object irrespective of this config -->
3181    <bool name="config_switch_phone_on_voice_reg_state_change">true</bool>
3182
3183    <bool name="config_sms_force_7bit_encoding">false</bool>
3184
3185    <!-- Number of physical SIM slots on the device. This includes both eSIM and pSIM slots, and
3186         is not necessarily the same as the number of phones/logical modems supported by the device.
3187         For example, a multi-sim device can have 2 phones/logical modems, but 3 physical slots,
3188         or a single SIM device can have 1 phones/logical modems, but 2 physical slots (one eSIM
3189         and one pSIM) -->
3190    <integer name="config_num_physical_slots">1</integer>
3191
3192    <!--Thresholds for LTE dbm in status bar-->
3193    <integer-array translatable="false" name="config_lteDbmThresholds">
3194        <item>-140</item>    <!-- SIGNAL_STRENGTH_NONE_OR_UNKNOWN -->
3195        <item>-128</item>    <!-- SIGNAL_STRENGTH_POOR -->
3196        <item>-118</item>    <!-- SIGNAL_STRENGTH_MODERATE -->
3197        <item>-108</item>    <!-- SIGNAL_STRENGTH_GOOD -->
3198        <item>-98</item>     <!-- SIGNAL_STRENGTH_GREAT -->
3199        <item>-44</item>
3200    </integer-array>
3201
3202    <!-- Enabled built-in zen mode condition providers -->
3203    <string-array translatable="false" name="config_system_condition_providers">
3204        <item>countdown</item>
3205        <item>schedule</item>
3206        <item>event</item>
3207    </string-array>
3208
3209    <!-- Priority repeat caller threshold, in minutes -->
3210    <integer name="config_zen_repeat_callers_threshold">15</integer>
3211
3212    <!-- Flags enabling default window features. See Window.java -->
3213    <bool name="config_defaultWindowFeatureOptionsPanel">true</bool>
3214    <bool name="config_defaultWindowFeatureContextMenu">true</bool>
3215
3216    <!-- If true, the transition for a RemoteViews is read from a resource instead of using the
3217         default scale-up transition. -->
3218    <bool name="config_overrideRemoteViewsActivityTransition">false</bool>
3219
3220    <!-- The maximum bitmap size that can be written to a MediaMetadata object. This value
3221         is the max width/height allowed in dips.-->
3222    <dimen name="config_mediaMetadataBitmapMaxSize">320dp</dimen>
3223
3224    <string translatable="false" name="prohibit_manual_network_selection_in_gobal_mode">false</string>
3225
3226    <!-- An array of CDMA roaming indicators which means international roaming -->
3227    <integer-array translatable="false" name="config_cdma_international_roaming_indicators" />
3228
3229    <!-- flag to indicate if EF LI/EF PL should be used for system language -->
3230    <bool name="config_use_sim_language_file">false</bool>
3231
3232    <!-- Use ERI text for network name on CDMA LTE -->
3233    <bool name="config_LTE_eri_for_network_name">true</bool>
3234
3235    <!-- Whether to start in touch mode -->
3236    <bool name="config_defaultInTouchMode">true</bool>
3237
3238    <!-- Time adjustment, in milliseconds, applied to the default double tap threshold
3239         used for gesture detection by the screen magnifier. -->
3240    <integer name="config_screen_magnification_multi_tap_adjustment">-50</integer>
3241
3242    <!-- Scale factor threshold used by the screen magnifier to determine when to switch from
3243         panning to scaling the magnification viewport. -->
3244    <item name="config_screen_magnification_scaling_threshold" format="float" type="dimen">0.3</item>
3245
3246    <!-- Whether to support magnification area. If not enabled, it would hide the entry in
3247         magnification settings and adjust the default magnification capability.  -->
3248    <bool name="config_magnification_area">true</bool>
3249
3250    <!-- If true, the display will be shifted around in ambient mode. -->
3251    <bool name="config_enableBurnInProtection">false</bool>
3252
3253    <!-- Specifies the maximum burn-in offset displacement from the center. If -1, no maximum value
3254         will be used. -->
3255    <integer name="config_burnInProtectionMaxRadius">-1</integer>
3256
3257    <!-- Specifies the minimum burn-in offset horizontally. -->
3258    <integer name="config_burnInProtectionMinHorizontalOffset">0</integer>
3259
3260    <!-- Specifies the maximum burn-in offset horizontally. -->
3261    <integer name="config_burnInProtectionMaxHorizontalOffset">0</integer>
3262
3263    <!-- Specifies the minimum burn-in offset vertically. -->
3264    <integer name="config_burnInProtectionMinVerticalOffset">0</integer>
3265
3266    <!-- Specifies the maximum burn-in offset vertically. -->
3267    <integer name="config_burnInProtectionMaxVerticalOffset">0</integer>
3268
3269    <!-- Limit for the number of face templates per user -->
3270    <integer name="config_faceMaxTemplatesPerUser">1</integer>
3271
3272    <!-- For performance and storage reasons, limit the number of fingerprints per user -->
3273    <integer name="config_fingerprintMaxTemplatesPerUser">5</integer>
3274
3275    <!-- Specify if the fingerprint hardware support gestures-->
3276    <bool name="config_fingerprintSupportsGestures">false</bool>
3277
3278    <!-- This config is used to force VoiceInteractionService to start on certain low ram devices.
3279         It declares the package name of VoiceInteractionService that should be started. -->
3280    <string translatable="false" name="config_forceVoiceInteractionServicePackage"></string>
3281
3282    <!-- This config is ued to determine whether animations are allowed in low power mode. -->
3283    <bool name="config_allowAnimationsInLowPowerMode">false</bool>
3284
3285    <!-- Whether device supports double tap to wake -->
3286    <bool name="config_supportDoubleTapWake">false</bool>
3287
3288    <!-- The RadioAccessFamilies supported by the device.
3289         Empty is viewed as "all".  Only used on devices which
3290         don't support RIL_REQUEST_GET_RADIO_CAPABILITY
3291         format is UMTS|LTE|... -->
3292    <string translatable="false" name="config_radio_access_family"></string>
3293
3294    <!-- Whether the main built-in display is round. This will affect
3295         Configuration.screenLayout's SCREENLAYOUT_ROUND_MASK flags for Configurations on the
3296         main built-in display. Change this in device-specific overlays.
3297         Defaults to the older, deprecated config_windowIsRound already used in
3298         some existing device-specific resource overlays. -->
3299    <bool name="config_mainBuiltInDisplayIsRound">@bool/config_windowIsRound</bool>
3300
3301    <!-- The bounding path of the cutout region of the main built-in display.
3302         Must either be empty if there is no cutout region, or a string that is parsable by
3303         {@link android.util.PathParser}.
3304
3305         The path is assumed to be specified in display coordinates with pixel units and in
3306         the display's native orientation, with the origin of the coordinate system at the
3307         center top of the display. Optionally, you can append either `@left` or `@right` to the
3308         end of the path string, in order to change the path origin to either the top left,
3309         or top right of the display.
3310
3311         To facilitate writing device-independent emulation overlays, the marker `@dp` can be
3312         appended after the path string to interpret coordinates in dp instead of px units.
3313         Note that a physical cutout should be configured in pixels for the best results.
3314
3315         Example for a 10px x 10px square top-center cutout:
3316                <string ...>M -5,0 L -5,10 L 5,10 L 5,0 Z</string>
3317         Example for a 10dp x 10dp square top-center cutout:
3318                <string ...>M -5,0 L -5,10 L 5,10 L 5,0 Z @dp</string>
3319
3320         @see https://www.w3.org/TR/SVG/paths.html#PathData
3321         -->
3322    <string translatable="false" name="config_mainBuiltInDisplayCutout"></string>
3323
3324    <!-- Like config_mainBuiltInDisplayCutout, but this path is used to report the
3325         one single bounding rect per device edge to the app via
3326         {@link DisplayCutout#getBoundingRect}. Note that this path should try to match the visual
3327         appearance of the cutout as much as possible, and may be smaller than
3328         config_mainBuiltInDisplayCutout
3329         -->
3330    <string translatable="false" name="config_mainBuiltInDisplayCutoutRectApproximation">@string/config_mainBuiltInDisplayCutout</string>
3331
3332    <!-- Whether the display cutout region of the main built-in display should be forced to
3333         black in software (to avoid aliasing or emulate a cutout that is not physically existent).
3334         -->
3335    <bool name="config_fillMainBuiltInDisplayCutout">false</bool>
3336
3337    <!-- If true, and there is a cutout on the main built in display, the cutout will be masked
3338         by shrinking the display such that it does not overlap the cutout area. -->
3339    <bool name="config_maskMainBuiltInDisplayCutout">false</bool>
3340
3341    <!-- Ultrasound support for Mic/speaker path -->
3342    <!-- Whether the default microphone audio source supports near-ultrasound frequencies
3343         (range of 18 - 21 kHz). -->
3344    <bool name="config_supportMicNearUltrasound">true</bool>
3345    <!-- Whether the default speaker audio output path supports near-ultrasound frequencies
3346         (range of 18 - 21 kHz). -->
3347    <bool name="config_supportSpeakerNearUltrasound">true</bool>
3348
3349    <!-- Whether the Unprocessed audio source supports the required frequency range and level -->
3350    <bool name="config_supportAudioSourceUnprocessed">false</bool>
3351
3352    <!-- Flag indicating device support for EAP SIM, AKA, AKA' -->
3353    <bool name="config_eap_sim_based_auth_supported">true</bool>
3354
3355    <!-- How long history of previous vibrations should be kept for the dumpsys. -->
3356    <integer name="config_previousVibrationsDumpLimit">50</integer>
3357
3358    <!-- The default vibration strength, must be between 1 and 255 inclusive. -->
3359    <integer name="config_defaultVibrationAmplitude">255</integer>
3360
3361    <!-- The max vibration strength allowed in audio haptic channels, must be positive or zero if
3362         limit is unknown. -->
3363    <item name="config_hapticChannelMaxVibrationAmplitude" format="float" type="dimen">0</item>
3364
3365    <!-- If the device should still vibrate even in low power mode, for certain priority vibrations
3366     (e.g. accessibility, alarms). This is mainly for Wear devices that don't have speakers. -->
3367    <bool name="config_allowPriorityVibrationsInLowPowerMode">false</bool>
3368
3369    <!-- The duration (in milliseconds) that should be used to convert vibration ramps to a sequence
3370         of fixed amplitude steps on devices without PWLE support. -->
3371    <integer name="config_vibrationWaveformRampStepDuration">5</integer>
3372
3373    <!-- The duration (in milliseconds) that should be applied to waveform vibrations that ends in
3374         non-zero amplitudes, to bring the vibrator amplitude down to zero using this timing. -->
3375    <integer name="config_vibrationWaveformRampDownDuration">0</integer>
3376
3377    <!-- Number of retries Cell Data should attempt for a given error code before
3378         restarting the modem.
3379         Error codes not listed will not lead to modem restarts.
3380         Array of "code#,retry#"  -->
3381    <string-array name="config_cell_retries_per_error_code">
3382    </string-array>
3383
3384    <!-- Set initial MaxRetry value for operators -->
3385    <integer name="config_mdc_initial_max_retry">1</integer>
3386
3387    <!-- The OEM specified sensor type for the gesture to launch the camera app. -->
3388    <integer name="config_cameraLaunchGestureSensorType">-1</integer>
3389    <!-- The OEM specified sensor string type for the gesture to launch camera app, this value
3390         must match the value of config_cameraLaunchGestureSensorType in OEM's HAL -->
3391    <string translatable="false" name="config_cameraLaunchGestureSensorStringType"></string>
3392
3393    <!-- Allow the gesture to double tap the power button twice to start the camera while the device
3394         is non-interactive. -->
3395    <bool name="config_cameraDoubleTapPowerGestureEnabled">true</bool>
3396
3397    <!-- Allow the gesture to quick tap the power button multiple times to start the emergency sos
3398         experience while the device is non-interactive. -->
3399    <bool name="config_emergencyGestureEnabled">true</bool>
3400
3401    <!-- Allow the gesture power + volume up to change the ringer mode while the device
3402         is interactive. -->
3403    <bool name="config_volumeHushGestureEnabled">true</bool>
3404
3405    <!-- Name of the component to handle network policy notifications. If present,
3406         disables NetworkPolicyManagerService's presentation of data-usage notifications. -->
3407    <string translatable="false" name="config_networkPolicyNotificationComponent"></string>
3408
3409    <!-- The BT name of the keyboard packaged with the device. If this is defined, SystemUI will
3410         automatically try to pair with it when the device exits tablet mode. -->
3411    <string translatable="false" name="config_packagedKeyboardName"></string>
3412
3413    <!-- The device supports freeform window management. Windows have title bars and can be moved
3414         and resized. If you set this to true, you also need to add
3415         PackageManager.FEATURE_FREEFORM_WINDOW_MANAGEMENT feature to your device specification.
3416         The duplication is necessary, because this information is used before the features are
3417         available to the system.-->
3418    <bool name="config_freeformWindowManagement">false</bool>
3419
3420    <!-- If set, this will force all windows to draw the status bar background, including the apps
3421         that have not requested doing so (via the WindowManager.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS
3422         flag). -->
3423    <bool name="config_forceWindowDrawsStatusBarBackground">true</bool>
3424
3425    <!-- Controls the opacity of the navigation bar depending on the visibility of the
3426         various workspace stacks.
3427         0 - Nav bar is always opaque when either the freeform stack or docked stack is visible.
3428         1 - Nav bar is always translucent when the freeform stack is visible, otherwise always
3429             opaque.
3430         2 - Nav bar is never forced opaque.
3431         -->
3432    <integer name="config_navBarOpacityMode">0</integer>
3433
3434    <!-- Controls the navigation bar interaction mode:
3435         0: 3 button mode (back, home, overview buttons)
3436         1: 2 button mode (back, home buttons + swipe up for overview)
3437         2: gestures only for back, home and overview -->
3438    <integer name="config_navBarInteractionMode">0</integer>
3439
3440    <!-- Controls whether the nav bar can move from the bottom to the side in landscape.
3441         Only applies if the device display is not square. -->
3442    <bool name="config_navBarCanMove">true</bool>
3443
3444    <!-- Controls whether the navigation bar lets through taps. -->
3445    <bool name="config_navBarTapThrough">false</bool>
3446
3447    <!-- Controls whether the side edge gestures can always trigger the transient nav bar to
3448         show. -->
3449    <bool name="config_navBarAlwaysShowOnSideEdgeGesture">false</bool>
3450
3451    <!-- Controls the size of the back gesture inset. -->
3452    <dimen name="config_backGestureInset">0dp</dimen>
3453
3454    <!-- Array of values used in Gesture Navigation settings page to reduce/increase the back
3455     gesture's inset size. These values will be multiplied into the default width, read from the
3456     gesture navigation overlay package, in order to create 3 different sizes which are selectable
3457     via a slider component. -->
3458    <array name="config_backGestureInsetScales">
3459        <item>0.60</item>
3460        <item>1.00</item>
3461        <item>1.33</item>
3462    </array>
3463
3464    <!-- Controls whether the navbar needs a scrim with
3465         {@link Window#setEnsuringNavigationBarContrastWhenTransparent}. -->
3466    <bool name="config_navBarNeedsScrim">true</bool>
3467
3468    <!-- Controls whether seamless rotation should be allowed even though the navbar can move
3469         (which normally prevents seamless rotation). -->
3470    <bool name="config_allowSeamlessRotationDespiteNavBarMoving">false</bool>
3471
3472    <!-- Controls whether hints for gestural navigation are shown when the device is setup.
3473         This should only be set when the device has gestural navigation enabled by default. -->
3474    <bool name="config_showGesturalNavigationHints">false</bool>
3475
3476    <!-- Controls the free snap mode for the docked stack divider. In this mode, the divider can be
3477         snapped to any position between the first target and the last target. -->
3478    <bool name="config_dockedStackDividerFreeSnapMode">false</bool>
3479
3480    <!-- Default insets [LEFT/RIGHTxTOP/BOTTOM] from the screen edge for picture-in-picture windows.
3481         These values are in DPs and will be converted to pixel sizes internally. -->
3482    <string translatable="false" name="config_defaultPictureInPictureScreenEdgeInsets">16x16</string>
3483
3484    <!-- The percentage of the screen width to use for the default width or height of
3485         picture-in-picture windows. Regardless of the percent set here, calculated size will never
3486         be smaller than @dimen/default_minimal_size_pip_resizable_task. -->
3487    <item name="config_pictureInPictureDefaultSizePercent" format="float" type="dimen">0.23</item>
3488
3489    <!-- The default aspect ratio for picture-in-picture windows. -->
3490    <item name="config_pictureInPictureDefaultAspectRatio" format="float" type="dimen">1.777778</item>
3491
3492    <!-- This is the limit for the max and min aspect ratio (1 / this value) at which the min size
3493         will be used instead of an adaptive size based loosely on area. -->
3494    <item name="config_pictureInPictureAspectRatioLimitForMinSize" format="float" type="dimen">1.777778</item>
3495
3496    <!-- The default gravity for the picture-in-picture window.
3497         Currently, this maps to Gravity.BOTTOM | Gravity.RIGHT -->
3498    <integer name="config_defaultPictureInPictureGravity">0x55</integer>
3499
3500    <!-- The minimum aspect ratio (width/height) that is supported for picture-in-picture.  Any
3501         ratio smaller than this is considered too tall and thin to be usable. Currently, this
3502         is the inverse of the max landscape aspect ratio (1:2.39), but this is an extremely
3503         skinny aspect ratio that is not expected to be widely used. -->
3504    <item name="config_pictureInPictureMinAspectRatio" format="float" type="dimen">0.41841004184</item>
3505
3506    <!-- The maximum aspect ratio (width/height) that is supported for picture-in-picture. Any
3507         ratio larger than this is considered to wide and short to be usable. Currently 2.39:1. -->
3508    <item name="config_pictureInPictureMaxAspectRatio" format="float" type="dimen">2.39</item>
3509
3510    <!-- The maximum number of actions that is supported for picture-in-picture. This number
3511         must be no less than 3 for back compatibility. -->
3512    <integer name="config_pictureInPictureMaxNumberOfActions">3</integer>
3513
3514    <!-- Controls the snap mode for the docked stack divider
3515             0 - 3 snap targets: left/top has 16:9 ratio, 1:1, and right/bottom has 16:9 ratio
3516             1 - 3 snap targets: fixed ratio, 1:1, (1 - fixed ratio)
3517             2 - 1 snap target: 1:1
3518    -->
3519    <integer name="config_dockedStackDividerSnapMode">0</integer>
3520
3521    <!-- The maximum aspect ratio (longerSide/shorterSide) that is treated as close-to-square. The
3522         orientation requests from apps would be ignored if the display is close-to-square. -->
3523    <item name="config_closeToSquareDisplayMaxAspectRatio" format="float" type="dimen">1.333</item>
3524
3525    <!-- List of comma separated package names for which we the system will not show crash, ANR,
3526         etc. dialogs. -->
3527    <string translatable="false" name="config_appsNotReportingCrashes"></string>
3528
3529    <!-- Inactivity threshold (in milliseconds) used in JobScheduler. JobScheduler will consider
3530         the device to be "idle" after being inactive for this long. -->
3531    <integer name="config_jobSchedulerInactivityIdleThreshold">1860000</integer>
3532    <!-- The alarm window (in milliseconds) that JobScheduler uses to enter the idle state -->
3533    <integer name="config_jobSchedulerIdleWindowSlop">300000</integer>
3534
3535    <!-- If true, jobs from background user will be restricted -->
3536    <bool name="config_jobSchedulerRestrictBackgroundUser">false</bool>
3537    <!-- The length of grace period after user becomes background user -->
3538    <integer name="config_jobSchedulerUserGracePeriod">60000</integer>
3539
3540    <!-- If true, all guest users created on the device will be ephemeral. -->
3541    <bool name="config_guestUserEphemeral">false</bool>
3542
3543    <!-- Whether device should always have a guest user available. If true, guest user will be
3544         created on boot, and a new guest user will be created in the background anytime the current
3545         guest user is removed. Instead of showing "Add guest" and "Remove guest", the UI will show
3546         "Guest" and "Reset guest". -->
3547    <bool name="config_guestUserAutoCreated">false</bool>
3548
3549    <!-- Enforce strong auth on boot. Setting this to false represents a security risk and should
3550         not be ordinarily done. The only case in which this might be permissible is in a car head
3551         unit where there are hardware mechanisms to protect the device (physical keys) and not
3552         much in the way of user data.
3553    -->
3554    <bool name="config_strongAuthRequiredOnBoot">true</bool>
3555
3556    <!-- Wallpaper cropper package. Used as the default cropper if the active launcher doesn't
3557         handle wallpaper cropping.
3558    -->
3559    <string name="config_wallpaperCropperPackage" translatable="false">com.android.wallpapercropper</string>
3560
3561    <!-- True if the device supports at least one form of multi-window.
3562         E.g. freeform, split-screen, picture-in-picture. -->
3563    <bool name="config_supportsMultiWindow">true</bool>
3564
3565    <!-- True if the device supports split screen as a form of multi-window. -->
3566    <bool name="config_supportsSplitScreenMultiWindow">true</bool>
3567
3568    <!-- Whether the device supports non-resizable activity in multi windowing modes.
3569         -1: The device doesn't support non-resizable in multi windowing modes.
3570          0: The device supports non-resizable in multi windowing modes only if this is a large
3571             screen (smallest width >= {@link config_largeScreenSmallestScreenWidthDp}).
3572          1: The device always supports non-resizable in multi windowing modes.
3573    -->
3574    <integer name="config_supportsNonResizableMultiWindow">0</integer>
3575
3576    <!-- Whether the device checks the activity min width/height to determine if it can be shown in
3577         multi windowing modes.
3578         -1: The device ignores the activity min width/height when determining if it can be shown in
3579             multi windowing modes.
3580          0: If this is a small screen (smallest width <
3581             {@link config_largeScreenSmallestScreenWidthDp}), the device compares the activity min
3582             width/height with the min multi windowing modes dimensions the device supports to
3583             determine if the activity can be shown in multi windowing modes
3584          1: The device always compare the activity min width/height with the min multi windowing
3585             modes dimensions {@link config_minPercentageMultiWindowSupportWidth} the device
3586             supports to determine if the activity can be shown in multi windowing modes.
3587    -->
3588    <integer name="config_respectsActivityMinWidthHeightMultiWindow">0</integer>
3589
3590    <!-- This value is only used when the device checks activity min height to determine if it
3591         can be shown in multi windowing modes.
3592         If the activity min height is greater than this percentage of the display height in
3593         portrait, it will not be allowed to be shown in multi windowing modes.
3594         The value should be between [0 - 1].
3595    -->
3596    <item name="config_minPercentageMultiWindowSupportHeight" format="float" type="dimen">0.3</item>
3597
3598    <!-- This value is only used when the device checks activity min width to determine if it
3599         can be shown in multi windowing modes.
3600         If the activity min width is greater than this percentage of the display width in
3601         landscape, it will not be allowed to be shown in multi windowing modes.
3602         The value should be between [0 - 1].
3603    -->
3604    <item name="config_minPercentageMultiWindowSupportWidth" format="float" type="dimen">0.5</item>
3605
3606    <!-- If the display smallest screen width is greater or equal to this value, we will treat it
3607         as a large screen device, which will have some multi window features enabled by default.
3608    -->
3609    <integer name="config_largeScreenSmallestScreenWidthDp">600</integer>
3610
3611    <!-- True if the device is using leagacy split. -->
3612    <bool name="config_useLegacySplit">true</bool>
3613
3614    <!-- True if the device supports running activities on secondary displays. -->
3615    <bool name="config_supportsMultiDisplay">true</bool>
3616
3617    <!-- True if the device has no home screen. That is a launcher activity
3618         where the user can launch other applications from.  -->
3619    <bool name="config_noHomeScreen">false</bool>
3620
3621    <!-- True if the device supports system decorations on secondary displays. -->
3622    <bool name="config_supportsSystemDecorsOnSecondaryDisplays">true</bool>
3623
3624    <!-- True if the device supports insecure lock screen. -->
3625    <bool name="config_supportsInsecureLockScreen">true</bool>
3626
3627    <!-- True if the device requires AppWidgetService even if it does not have
3628         the PackageManager.FEATURE_APP_WIDGETS feature -->
3629    <bool name="config_enableAppWidgetService">false</bool>
3630
3631    <!-- True if the device supports Sustained Performance Mode-->
3632    <bool name="config_sustainedPerformanceModeSupported">false</bool>
3633
3634    <!-- File used to enable the double touch gesture.
3635         TODO: move to input HAL once ready. -->
3636    <string name="config_doubleTouchGestureEnableFile"></string>
3637
3638    <!-- Comma-separated list of unbundled packages which can connect to the
3639         tv remote provider. The tv remote service is an example of such a
3640         service. -->
3641    <string name="config_tvRemoteServicePackage" translatable="false"></string>
3642
3643    <!-- The package name of the package implementing the custom notification panel -->
3644    <string name="config_notificationHandlerPackage" translatable="false"></string>
3645
3646    <!-- True if the device supports persisting security logs across reboots.
3647         This requires the device's kernel to have pstore and pmsg enabled,
3648         and DRAM to be powered and refreshed through all stages of reboot. -->
3649    <bool name="config_supportPreRebootSecurityLogs">false</bool>
3650
3651    <!-- Default files to pin via Pinner Service -->
3652    <string-array translatable="false" name="config_defaultPinnerServiceFiles">
3653    </string-array>
3654
3655    <!-- True if camera app should be pinned via Pinner Service -->
3656    <bool name="config_pinnerCameraApp">false</bool>
3657
3658    <!-- True if home app should be pinned via Pinner Service -->
3659    <bool name="config_pinnerHomeApp">false</bool>
3660
3661    <!-- True if assistant app should be pinned via Pinner Service -->
3662    <bool name="config_pinnerAssistantApp">false</bool>
3663
3664    <!-- Number of days preloaded file cache should be preserved on a device before it can be
3665         deleted -->
3666    <integer name="config_keepPreloadsMinDays">7</integer>
3667
3668    <!-- Flag indicating whether round icons should be parsed from the application manifest. -->
3669    <bool name="config_useRoundIcon">false</bool>
3670
3671    <!-- Flag indicating whether the assist disclosure can be disabled using
3672         ASSIST_DISCLOSURE_ENABLED. -->
3673    <bool name="config_allowDisablingAssistDisclosure">true</bool>
3674
3675    <!-- True if the device supports system navigation keys. -->
3676    <bool name="config_supportSystemNavigationKeys">false</bool>
3677
3678    <!-- emergency call number for the emergency affordance -->
3679    <string name="config_emergency_call_number" translatable="false">112</string>
3680
3681    <!-- Package name that provides Emergency Dialer -->
3682    <string name="config_emergency_dialer_package" translatable="false">com.android.phone</string>
3683
3684    <!-- Do not translate. Mcc codes whose existence trigger the presence of emergency
3685         affordances-->
3686    <string-array name="config_emergency_iso_country_codes" translatable="false">
3687        <item>in</item>
3688    </string-array>
3689
3690    <!-- Package name for the device provisioning package. -->
3691    <string name="config_deviceProvisioningPackage"></string>
3692
3693    <!-- Colon separated list of package names that should be granted DND access -->
3694    <string name="config_defaultDndAccessPackages" translatable="false">com.android.camera2</string>
3695
3696    <!-- User restrictions set when the first user is created.
3697         Note: Also update appropriate overlay files. -->
3698    <string-array translatable="false" name="config_defaultFirstUserRestrictions">
3699    </string-array>
3700
3701    <!-- Specifies whether certain permissions should be individually controlled. -->
3702    <bool name="config_permissionsIndividuallyControlled">false</bool>
3703
3704    <!-- Specifies whether the user has to give consent to manage wireless (wifi + bluetooth). -->
3705    <bool name="config_wirelessConsentRequired">false</bool>
3706
3707    <!-- Default value for android:focusableInTouchMode for some framework scrolling containers.
3708         ListView/GridView are notably absent since this is their default anyway.
3709         Set to true for watch devices. -->
3710    <bool name="config_focusScrollContainersInTouchMode">false</bool>
3711
3712    <string name="config_networkOverLimitComponent" translatable="false">com.android.systemui/com.android.systemui.net.NetworkOverLimitActivity</string>
3713    <string name="config_dataUsageSummaryComponent" translatable="false">com.android.settings/com.android.settings.Settings$DataUsageSummaryActivity</string>
3714
3715    <!-- Flag specifying whether user-switch operations have custom UI. When false, user-switch
3716         UI is handled by ActivityManagerService -->
3717    <bool name="config_customUserSwitchUi">false</bool>
3718
3719    <!-- A array of regex to treat a SMS as VVM SMS if the message body matches.
3720         Each item represents an entry, which consists of two parts:
3721         a comma (,) separated list of MCCMNC the regex applies to, followed by a semicolon (;), and
3722         then the regex itself. -->
3723    <string-array translatable="false" name="config_vvmSmsFilterRegexes">
3724        <!-- Verizon requires any SMS that starts with //VZWVVM to be treated as a VVM SMS-->
3725        <item>310004,310010,310012,310013,310590,310890,310910,311110,311270,311271,311272,311273,311274,311275,311276,311277,311278,311279,311280,311281,311282,311283,311284,311285,311286,311287,311288,311289,311390,311480,311481,311482,311483,311484,311485,311486,311487,311488,311489;^//VZWVVM.*</item>
3726    </string-array>
3727
3728    <!-- This config is holding calling number conversion map - expected to convert to emergency
3729         number. Formats for this config as below:
3730         <item>[dialstring1],[dialstring2],[dialstring3]:[replacement]</item>
3731
3732         E.g. for Taiwan Type Approval, 110 and 119 should be converted to 112.
3733         <item>110,119:112</item>
3734    -->
3735    <string-array translatable="false" name="config_convert_to_emergency_number_map" />
3736
3737    <!-- An array of packages for which notifications cannot be blocked.
3738         Should only be used for core device functionality that must not be
3739         rendered inoperative for safety reasons, like the phone dialer and
3740         SMS handler. -->
3741    <string-array translatable="false" name="config_nonBlockableNotificationPackages">
3742        <item>com.android.dialer</item>
3743        <item>com.android.messaging</item>
3744    </string-array>
3745
3746    <!-- An array of packages that can make sound on the ringer stream in priority-only DND
3747     mode -->
3748    <string-array translatable="false" name="config_priorityOnlyDndExemptPackages">
3749        <item>com.android.dialer</item>
3750        <item>com.android.server.telecom</item>
3751        <item>com.android.systemui</item>
3752        <item>android</item>
3753    </string-array>
3754
3755    <!-- The default value for transition animation scale found in developer settings.
3756         1.0 corresponds to 1x animator scale, 0 means that there will be no transition
3757         animations. Note that this is only a default and will be overridden by a
3758         user-set value if toggled by settings so the "Transition animation scale" setting
3759         should also be hidden if intended to be permanent. -->
3760    <item name="config_appTransitionAnimationDurationScaleDefault" format="float" type="dimen">1.0</item>
3761
3762    <!-- Flag indicates that whether non-system apps can be installed on internal storage. -->
3763    <bool name="config_allow3rdPartyAppOnInternal">true</bool>
3764
3765    <!-- Specifies the path that is used by AdaptiveIconDrawable class to crop launcher icons. -->
3766    <string name="config_icon_mask" translatable="false">"M50,0L92,0C96.42,0 100,4.58 100 8L100,92C100, 96.42 96.42 100 92 100L8 100C4.58, 100 0 96.42 0 92L0 8 C 0 4.42 4.42 0 8 0L50 0Z"</string>
3767
3768    <!-- The component name, flattened to a string, for the default accessibility service to be
3769         enabled by the accessibility shortcut. This service must be trusted, as it can be activated
3770         without explicit consent of the user. If no accessibility service with the specified name
3771         exists on the device, the accessibility shortcut will be disabled by default. -->
3772    <string name="config_defaultAccessibilityService" translatable="false"></string>
3773
3774    <!-- Flag indicates that whether escrow token API is enabled for TrustAgent -->
3775    <!-- Warning: This API can be dangerous when not implemented properly. In particular,
3776         escrow token must NOT be retrievable from device storage. In other words, either
3777         escrow token is not stored on device or its ciphertext is stored on device while
3778         the decryption key is not. Before enabling this feature, please ensure you've read
3779         and followed the pertinent sections of the escrow tokens section of the CDD <link>-->
3780    <!-- TODO(b/35230407) complete the link field -->
3781    <bool name="config_allowEscrowTokenForTrustAgent">false</bool>
3782
3783    <!-- A flattened ComponentName which corresponds to the only trust agent that should be enabled
3784         by default. If the default value is used, or set to an empty string, the restriction will
3785         not be applied. -->
3786    <string name="config_defaultTrustAgent" translatable="false"></string>
3787
3788    <!-- Colon separated list of package names that should be granted Notification Listener access -->
3789    <string name="config_defaultListenerAccessPackages" translatable="false"></string>
3790
3791    <!-- Maximum size, specified in pixels, to restrain the display space width to. Height and
3792         density will be scaled accordingly to maintain aspect ratio. A value of 0 indicates no
3793         constraint will be enforced. -->
3794    <integer name="config_maxUiWidth">0</integer>
3795
3796    <!-- Whether the device supports quick settings and its associated APIs -->
3797    <bool name="config_quickSettingsSupported">true</bool>
3798
3799    <!-- The component name, flattened to a string, for the default autofill service
3800         to  enabled for an user. This service must be trusted, as it can be activated
3801         without explicit consent of the user. If no autofill service with the
3802          specified name exists on the device, autofill will be disabled by default.
3803    -->
3804    <string name="config_defaultAutofillService" translatable="false"></string>
3805
3806    <!-- The package name for the OEM custom system textclassifier service.
3807         This service must be trusted, as it can be activated without explicit consent of the user.
3808         Example: "com.android.textclassifier"
3809         If this is empty, the default textclassifier service (i.e. config_servicesExtensionPackage)
3810         will be used.
3811
3812         See android.view.textclassifier.TextClassificationManager.
3813    -->
3814    <string name="config_defaultTextClassifierPackage" translatable="false"></string>
3815
3816
3817    <!-- The package name for the system companion device manager service.
3818         This service must be trusted, as it can be activated without explicit consent of the user.
3819         Example: "com.android.companiondevicemanager"
3820         See android.companion.CompanionDeviceManager.
3821    -->
3822    <string name="config_companionDeviceManagerPackage" translatable="false"></string>
3823
3824    <!-- A list of packages managing companion device(s) by the same manufacturers as the main
3825         device. It will fall back to showing a prompt if the association has been called multiple
3826         times in a short period.
3827         Note that config_companionDeviceManagerPackage and config_companionDeviceCerts are
3828         parallel arrays.
3829     -->
3830    <string-array name="config_companionDevicePackages" translatable="false"></string-array>
3831
3832    <!-- A list of SHA256 Certificates managing companion device(s) by the same manufacturers as
3833         the main device. It will fall back to showing a prompt if the association has been called
3834         multiple times in a short period.
3835         Note that config_companionDeviceCerts and config_companionDeviceManagerPackage are parallel
3836         arrays.
3837         Example: "1A:2B:3C:4D"
3838     -->
3839    <string-array name="config_companionDeviceCerts" translatable="false"></string-array>
3840
3841    <!-- The package name for the default wellbeing app.
3842         This package must be trusted, as it has the permissions to control other applications
3843         on the device.
3844         Example: "com.android.wellbeing"
3845     -->
3846    <string name="config_defaultWellbeingPackage" translatable="false"></string>
3847
3848    <!-- The component name for the default system attention service.
3849         This service must be trusted, as it can be activated without explicit consent of the user.
3850         See android.attention.AttentionManagerService.
3851    -->
3852    <string name="config_defaultAttentionService" translatable="false"></string>
3853
3854    <!-- The component name for the default system rotation resolver service.
3855        This service must be trusted, as it can be activated without explicit consent of the user.
3856        See android.service.rotationresolver.RotationResolverService.
3857   -->
3858    <string name="config_defaultRotationResolverService" translatable="false"></string>
3859
3860    <!-- The component name for the system-wide captions service.
3861         This service must be trusted, as it controls part of the UI of the volume bar.
3862         Example: "com.android.captions/.SystemCaptionsService"
3863    -->
3864    <string name="config_defaultSystemCaptionsService" translatable="false"></string>
3865
3866    <!-- The component name for the system-wide captions manager service.
3867         This service must be trusted, as the system binds to it and keeps it running.
3868         Example: "com.android.captions/.SystemCaptionsManagerService"
3869    -->
3870    <string name="config_defaultSystemCaptionsManagerService" translatable="false"></string>
3871
3872    <!-- The package name for the incident report approver app.
3873        This app is usually PermissionController or an app that replaces it.  When
3874        a bugreport or incident report with EXPLICT-level sharing flags is going to be
3875        shared, this app will be sent the PENDING_INCIDENT_REPORTS_CHANGED broadcast.
3876    -->
3877    <string name="config_incidentReportApproverPackage" translatable="false">com.android.permissioncontroller</string>
3878
3879    <!-- The package name for the system's content capture service.
3880         This service must be trusted, as it can be activated without explicit consent of the user.
3881         If no service with the specified name exists on the device, content capture will be
3882         disabled.
3883         Example: "com.android.contentcapture/.ContentcaptureService"
3884    -->
3885    <string name="config_defaultContentCaptureService" translatable="false"></string>
3886
3887    <!-- The package name for the system's augmented autofill service.
3888         This service must be trusted, as it can be activated without explicit consent of the user.
3889         If no service with the specified name exists on the device, augmented autofill wil be
3890         disabled.
3891         Example: "com.android.augmentedautofill/.AugmentedAutofillService"
3892    -->
3893    <string name="config_defaultAugmentedAutofillService" translatable="false"></string>
3894
3895    <!-- The package name for the system's translation service.
3896     This service must be trusted, as it can be activated without explicit consent of the user.
3897     If no service with the specified name exists on the device, translation wil be
3898     disabled.
3899     Example: "com.android.translation/.TranslationService"
3900-->
3901    <string name="config_defaultTranslationService" translatable="false"></string>
3902
3903    <!-- The package name for the system's app prediction service.
3904         This service must be trusted, as it can be activated without explicit consent of the user.
3905         Example: "com.android.intelligence/.AppPredictionService"
3906    -->
3907    <string name="config_defaultAppPredictionService" translatable="false"></string>
3908
3909    <!-- The package name for the system's content suggestions service.
3910         Provides suggestions for text and image selection regions in snapshots of apps and should
3911         be able to classify the type of entities in those selections.
3912
3913         This service must be trusted, as it can be activated without explicit consent of the user.
3914         If no service with the specified name exists on the device, content suggestions wil be
3915         disabled.
3916         Example: "com.android.contentsuggestions/.ContentSuggestionsService"
3917    -->
3918    <string name="config_defaultContentSuggestionsService" translatable="false"></string>
3919
3920    <!-- The package name for the system's search ui service.
3921     This service returns search results when provided with an input string.
3922
3923     This service must be trusted, as it can be activated without explicit consent of the user.
3924     If no service with the specified name exists on the device, on device search wil be
3925     disabled.
3926     Example: "com.android.intelliegence/.SearchUiService"
3927-->
3928    <string name="config_defaultSearchUiService" translatable="false"></string>
3929
3930    <!-- The package name for the system's smartspace service.
3931     This service returns smartspace results.
3932
3933     This service must be trusted, as it can be activated without explicit consent of the user.
3934     If no service with the specified name exists on the device, smartspace will be disabled.
3935     Example: "com.android.intelligence/.SmartspaceService"
3936-->
3937    <string name="config_defaultSmartspaceService" translatable="false"></string>
3938
3939    <!-- The package name for the system's speech recognition service.
3940         This service must be trusted, as it can be activated without explicit consent of the user.
3941         Example: "com.android.speech/.RecognitionService"
3942    -->
3943    <string name="config_defaultOnDeviceSpeechRecognitionService" translatable="false"></string>
3944
3945    <string name="config_defaultMusicRecognitionService" translatable="false"></string>
3946
3947    <!-- The package name for the default retail demo app.
3948         This package must be trusted, as it has the permissions to query the usage stats on the
3949         device.
3950         Example: "com.google.android.retaildemo"
3951     -->
3952    <string name="config_retailDemoPackage" translatable="false"></string>
3953
3954    <!-- The package signature hash for the default retail demo app.
3955         This package must be trusted, as it has the permissions to query the usage stats on the
3956         device.
3957     -->
3958    <string name="config_retailDemoPackageSignature" translatable="false"></string>
3959
3960    <!-- Whether the device uses the default focus highlight when focus state isn't specified. -->
3961    <bool name="config_useDefaultFocusHighlight">true</bool>
3962
3963    <!-- Flag indicating that the entire notification header can be clicked to expand the
3964         notification. If false, then the expand icon has to be clicked in order for the expand
3965         to occur. The expand button will have increased touch boundaries to accomodate this. -->
3966    <bool name="config_notificationHeaderClickableForExpand">false</bool>
3967
3968    <!-- Default data warning level in mb -->
3969    <integer name="default_data_warning_level_mb">2048</integer>
3970
3971    <!-- When true, indicates that the vendor's IMS implementation requires a workaround when
3972     sending a request to enable or disable the camera while the video session is also
3973     paused. -->
3974    <bool name="config_useVideoPauseWorkaround">false</bool>
3975
3976    <!-- Whether to send a custom package name with the PSD.-->
3977    <bool name="config_sendPackageName">false</bool>
3978
3979    <!-- Name for the set of keys associating package names -->
3980    <string name="config_helpPackageNameKey" translatable="false"></string>
3981
3982    <!-- Name for the set of values of package names -->
3983    <string name="config_helpPackageNameValue" translatable="false"></string>
3984
3985    <!-- Intent key for the package name keys -->
3986    <string name="config_helpIntentExtraKey" translatable="false"></string>
3987
3988    <!-- Intent key for package name values -->
3989    <string name="config_helpIntentNameKey" translatable="false"></string>
3990
3991    <!-- Intent key for the package name keys -->
3992    <string name="config_feedbackIntentExtraKey" translatable="false"></string>
3993
3994    <!-- Intent key for package name values -->
3995    <string name="config_feedbackIntentNameKey" translatable="false"></string>
3996
3997    <!-- The apps that need to be hidden when they are disabled -->
3998    <string-array name="config_hideWhenDisabled_packageNames"></string-array>
3999
4000    <!-- Additional non-platform defined global settings exposed to Instant Apps -->
4001    <string-array name="config_allowedGlobalInstantAppSettings"></string-array>
4002
4003    <!-- Additional non-platform defined system settings exposed to Instant Apps -->
4004    <string-array name="config_allowedSystemInstantAppSettings"></string-array>
4005
4006    <!-- Additional non-platform defined secure settings exposed to Instant Apps -->
4007    <string-array name="config_allowedSecureInstantAppSettings"></string-array>
4008
4009    <!-- Handle volume keys directly in Window Manager without passing them to the foreground app -->
4010    <bool name="config_handleVolumeKeysInWindowManager">false</bool>
4011
4012    <!-- Rely or not on hardcoded aliased streams table within AudioService -->
4013    <bool name="config_handleVolumeAliasesUsingVolumeGroups">false</bool>
4014
4015    <!-- Volume level of in-call notification tone playback [0..1] -->
4016    <item name="config_inCallNotificationVolume" format="float" type="dimen">.10</item>
4017
4018    <!-- URI for in call notification sound -->
4019    <string translatable="false" name="config_inCallNotificationSound">/product/media/audio/ui/InCallNotification.ogg</string>
4020
4021    <!-- URI for default ringtone sound file to be used for silent ringer vibration -->
4022    <string translatable="false" name="config_defaultRingtoneVibrationSound">/product/media/audio/ui/AttentionalHaptics.ogg</string>
4023
4024    <!-- Default number of notifications from the same app before they are automatically grouped by the OS -->
4025    <integer translatable="false" name="config_autoGroupAtCount">4</integer>
4026
4027    <!-- The OEM specified sensor type for the lift trigger to launch the camera app. -->
4028    <integer name="config_cameraLiftTriggerSensorType">-1</integer>
4029    <!-- The OEM specified sensor string type for the gesture to launch camera app, this value
4030        must match the value of config_cameraLiftTriggerSensorType in OEM's HAL -->
4031    <string translatable="false" name="config_cameraLiftTriggerSensorStringType"></string>
4032
4033    <!-- Default number of days to retain for the automatic storage manager. -->
4034    <integer translatable="false" name="config_storageManagerDaystoRetainDefault">90</integer>
4035
4036    <!-- Name of a font family to use for headlines. If empty, falls back to platform default -->
4037    <string name="config_headlineFontFamily" translatable="false"></string>
4038    <!-- Allows setting custom fontFeatureSettings on specific text. -->
4039    <string name="config_headlineFontFeatureSettings" translatable="false"></string>
4040
4041    <!-- An array of packages that need to be treated as type system in battery settings -->
4042    <string-array translatable="false" name="config_batteryPackageTypeSystem">
4043        <item>com.android.providers.calendar</item>
4044        <item>com.android.providers.media</item>
4045        <item>com.android.systemui</item>
4046    </string-array>
4047
4048    <!-- An array of packages that need to be treated as type service in battery settings -->
4049    <string-array translatable="false" name="config_batteryPackageTypeService"/>
4050
4051    <!-- Flag indicating whether or not to enable night mode detection. -->
4052    <bool name="config_enableNightMode">true</bool>
4053
4054    <!-- Flag indicating that the actions buttons for a notification should be tinted with by the
4055         color supplied by the Notification.Builder if present. -->
4056    <bool name="config_tintNotificationActionButtons">true</bool>
4057
4058    <!-- Show area update info settings in CellBroadcastReceiver and information in SIM status in Settings app -->
4059    <bool name="config_showAreaUpdateInfoSettings">false</bool>
4060
4061    <!-- Enable the RingtonePickerActivity in 'com.android.providers.media'. -->
4062    <bool name="config_defaultRingtonePickerEnabled">true</bool>
4063
4064    <!-- Allow SystemUI to show the shutdown dialog -->
4065    <bool name="config_showSysuiShutdown">true</bool>
4066
4067    <!-- The stable device width and height in pixels. If these aren't set to a positive number
4068         then the device will use the width and height of the default display the first time it's
4069         booted.  -->
4070    <integer name="config_stableDeviceDisplayWidth">-1</integer>
4071    <integer name="config_stableDeviceDisplayHeight">-1</integer>
4072
4073    <!-- List of countries in which we display 'No service' on status bar
4074         instead of 'Emergency calls only' when SIM is unready. -->
4075    <string-array translatable="false" name="config_display_no_service_when_sim_unready">
4076        <item>"DE"</item>
4077        <item>"GB"</item>
4078        <item>"JP"</item>
4079    </string-array>
4080
4081    <!-- Class names of device specific services inheriting com.android.server.SystemService. The
4082         classes are instantiated in the order of the array. -->
4083    <string-array translatable="false" name="config_deviceSpecificSystemServices"></string-array>
4084
4085    <!-- Class name of the device specific implementation to replace the DevicePolicyManagerService
4086         or empty if the default should be used. -->
4087    <string translatable="false" name="config_deviceSpecificDevicePolicyManagerService"></string>
4088
4089    <!-- Class name of the device specific implementation to replace the AudioService
4090         or empty if the default should be used. -->
4091    <string translatable="false" name="config_deviceSpecificAudioService"></string>
4092
4093    <!-- Class name of the device specific implementation of DisplayAreaPolicy.Provider
4094         or empty if the default should be used. -->
4095    <string translatable="false" name="config_deviceSpecificDisplayAreaPolicyProvider"></string>
4096
4097    <!-- Component name of media projection permission dialog -->
4098    <string name="config_mediaProjectionPermissionDialogComponent" translatable="false">com.android.systemui/com.android.systemui.media.MediaProjectionPermissionActivity</string>
4099
4100    <!-- Corner radius of system dialogs -->
4101    <dimen name="config_dialogCornerRadius">2dp</dimen>
4102    <!-- Corner radius of system buttons -->
4103    <dimen name="config_buttonCornerRadius">@dimen/control_corner_material</dimen>
4104    <!-- Corner radius for bottom sheet system dialogs -->
4105    <dimen name="config_bottomDialogCornerRadius">@dimen/config_dialogCornerRadius</dimen>
4106    <!-- Corner radius of system progress bars -->
4107    <dimen name="config_progressBarCornerRadius">@dimen/progress_bar_corner_material</dimen>
4108    <!-- Controls whether system buttons use all caps for text -->
4109    <bool name="config_buttonTextAllCaps">true</bool>
4110    <!-- Name of the font family used for system surfaces where the font should use medium weight -->
4111    <string name="config_headlineFontFamilyMedium" translateable="false">@string/font_family_button_material</string>
4112    <!-- Name of a font family to use for body text. -->
4113    <string name="config_bodyFontFamily" translatable="false">sans-serif</string>
4114    <!-- Name of a font family to use for medium body text. -->
4115    <string name="config_bodyFontFamilyMedium" translatable="false">sans-serif-medium</string>
4116
4117    <!-- Size of icon shown beside a preference locked by admin -->
4118    <dimen name="config_restrictedIconSize">@dimen/restricted_icon_size_material</dimen>
4119
4120    <string translatable="false" name="config_batterySaverDeviceSpecificConfig"></string>
4121
4122    <!-- Component name that should be granted Notification Assistant access -->
4123    <string name="config_defaultAssistantAccessComponent" translatable="false">android.ext.services/android.ext.services.notification.Assistant</string>
4124
4125    <bool name="config_supportBluetoothPersistedState">true</bool>
4126
4127    <bool name="config_keepRestrictedProfilesInBackground">true</bool>
4128
4129    <!-- Cellular network service package name to bind to by default. -->
4130    <string name="config_wwan_network_service_package" translatable="false">com.android.phone</string>
4131
4132    <!-- Cellular network service class name to bind to by default.-->
4133    <string name="config_wwan_network_service_class" translatable="false"></string>
4134
4135    <!-- IWLAN network service package name to bind to by default. If none is specified in an overlay, an
4136         empty string is passed in -->
4137    <string name="config_wlan_network_service_package" translatable="false"></string>
4138
4139    <!-- IWLAN network service class name to bind to by default. If none is specified in an overlay, an
4140         empty string is passed in -->
4141    <string name="config_wlan_network_service_class" translatable="false"></string>
4142    <!-- Telephony qualified networks service package name to bind to by default. -->
4143    <string name="config_qualified_networks_service_package" translatable="false"></string>
4144
4145    <!-- Telephony qualified networks service class name to bind to by default. -->
4146    <string name="config_qualified_networks_service_class" translatable="false"></string>
4147    <!-- Wear devices: Controls the radios affected by Activity Mode. -->
4148    <string-array name="config_wearActivityModeRadios">
4149        <item>"wifi"</item>
4150    </string-array>
4151
4152    <!-- Default hyphenation frequency setting (0=NONE, 1=NORMAL, 2=FULL). -->
4153    <item name="config_preferredHyphenationFrequency" format="integer" type="dimen">0</item>
4154
4155    <!-- Package name for ManagedProvisioning which is responsible for provisioning work profiles. -->
4156    <string name="config_managed_provisioning_package" translatable="false">com.android.managedprovisioning</string>
4157
4158    <!-- Whether or not swipe up gesture's opt-in setting is available on this device -->
4159    <bool name="config_swipe_up_gesture_setting_available">true</bool>
4160
4161    <!-- Applications which are disabled unless matching a particular sku -->
4162    <string-array name="config_disableApksUnlessMatchedSku_apk_list" translatable="false" />
4163    <string-array name="config_disableApkUnlessMatchedSku_skus_list" translatable="false" />
4164
4165    <!-- Whether or not we should show the option to show battery percentage -->
4166    <bool name="config_battery_percentage_setting_available">true</bool>
4167
4168    <!-- Whether or not battery saver should be "sticky" when manually enabled. -->
4169    <bool name="config_batterySaverStickyBehaviourDisabled">false</bool>
4170
4171    <!-- Config flag to track default disable threshold for Dynamic power savings enabled battery saver. -->
4172    <integer name="config_dynamicPowerSavingsDefaultDisableThreshold">80</integer>
4173
4174    <!-- Model of potentially misprovisioned devices. If none is specified in an overlay, an
4175         empty string is passed in. -->
4176    <string name="config_misprovisionedDeviceModel" translatable="false"></string>
4177
4178    <!-- Brand value for attestation of misprovisioned device. -->
4179    <string name="config_misprovisionedBrandValue" translatable="false"></string>
4180
4181    <!-- Pre-scale volume at volume step 1 for Absolute Volume -->
4182    <fraction name="config_prescaleAbsoluteVolume_index1">60%</fraction>
4183
4184    <!-- Pre-scale volume at volume step 2 for Absolute Volume -->
4185    <fraction name="config_prescaleAbsoluteVolume_index2">80%</fraction>
4186
4187    <!-- Pre-scale volume at volume step 3 for Absolute Volume -->
4188    <fraction name="config_prescaleAbsoluteVolume_index3">90%</fraction>
4189
4190    <!-- Whether or not the "SMS app service" feature is enabled -->
4191    <bool name="config_useSmsAppService">true</bool>
4192
4193    <!-- Class name for the InputEvent compatibility processor override.
4194         Empty string means use the default compatibility processor
4195         (android.view.InputEventCompatProcessor). -->
4196    <string name="config_inputEventCompatProcessorOverrideClassName" translatable="false"></string>
4197
4198    <!-- Component name for the default module metadata provider on this device -->
4199    <string name="config_defaultModuleMetadataProvider" translatable="false">com.android.modulemetadata</string>
4200
4201    <!-- This is the default launcher package with an activity to use on secondary displays that
4202         support system decorations.
4203         This launcher package must have an activity that supports multiple instances and has
4204         corresponding launch mode set in AndroidManifest.
4205         {@see android.view.Display#FLAG_SHOULD_SHOW_SYSTEM_DECORATIONS} -->
4206    <string name="config_secondaryHomePackage" translatable="false">com.android.launcher3</string>
4207
4208    <!-- Force secondary home launcher specified in config_secondaryHomePackage always. If this is
4209         not set, secondary home launcher can be replaced by user. -->
4210    <bool name ="config_useSystemProvidedLauncherForSecondary">false</bool>
4211
4212    <!-- If device supports corner radius on windows.
4213         This should be turned off on low-end devices to improve animation performance. -->
4214    <bool name="config_supportsRoundedCornersOnWindows">true</bool>
4215
4216    <!-- If the sensor that skips media is available or not. -->
4217    <bool name="config_skipSensorAvailable">false</bool>
4218
4219    <!-- If the sensor that silences alerts is available or not. -->
4220    <bool name="config_silenceSensorAvailable">false</bool>
4221
4222    <!-- Enable Zram writeback feature to allow unused pages in zram be written to flash. -->
4223    <bool name="config_zramWriteback">false</bool>
4224
4225    <!-- Whether cbrs is supported on the device or not -->
4226    <bool translatable="false" name="config_cbrs_supported">false</bool>
4227
4228    <!-- Whether or not aware is enabled by default -->
4229    <bool name="config_awareSettingAvailable">false</bool>
4230
4231    <!-- Display White-Balance -->
4232
4233    <!-- See AmbientSensor.AmbientBrightnessSensor.
4234         The ambient brightness sensor rate (in milliseconds). Must be positive. -->
4235    <integer name="config_displayWhiteBalanceBrightnessSensorRate">250</integer>
4236
4237    <!-- See AmbientFilter.
4238         How long ambient brightness changes are kept and taken into consideration
4239         (in milliseconds). Must be positive. -->
4240    <integer name="config_displayWhiteBalanceBrightnessFilterHorizon">10000</integer>
4241
4242    <!-- See AmbientFilter.WeightedMovingAverageAmbientFilter.
4243         Recent changes are prioritised by integrating their duration over y = x + intercept
4244         (the higher it is, the less prioritised recent changes are). Must be a non-negative
4245         number, or NaN to avoid this implementation. -->
4246    <item name="config_displayWhiteBalanceBrightnessFilterIntercept" format="float" type="dimen">10.0</item>
4247
4248    <!-- See AmbientSensor.AmbientColorTemperatureSensor.
4249         The ambient color temperature sensor name. -->
4250    <string name="config_displayWhiteBalanceColorTemperatureSensorName">com.google.sensor.color</string>
4251
4252    <!-- See AmbientSensor.AmbientColorTemperatureSensor.
4253         The ambient color temperature sensor rate (in milliseconds). Must be positive. -->
4254    <integer name="config_displayWhiteBalanceColorTemperatureSensorRate">250</integer>
4255
4256    <!-- See AmbientFilter.
4257         How long ambient color temperature changes are kept and taken into consideration
4258         (in milliseconds). Must be positive. -->
4259    <integer name="config_displayWhiteBalanceColorTemperatureFilterHorizon">10000</integer>
4260
4261    <!-- See AmbientFilter.WeightedMovingAverageAmbientFilter.
4262         Recent changes are prioritised by integrating their duration over y = x + intercept
4263         (the higher it is, the less prioritised recent changes are). Must be a non-negative
4264         number, or NaN to avoid this implementation. -->
4265    <item name="config_displayWhiteBalanceColorTemperatureFilterIntercept" format="float"
4266            type="dimen">10.0</item>
4267
4268    <!-- See DisplayWhiteBalanceThrottler.
4269         The debounce time (in milliseconds) for increasing the screen color temperature, throttled
4270         if time > lastTime + debounce. Must be non-negative. -->
4271    <integer name="config_displayWhiteBalanceIncreaseDebounce">5000</integer>
4272
4273    <!-- See DisplayWhiteBalanceThrottler.
4274         The debounce time (in milliseconds) for decreasing the screen color tempearture, throttled
4275         if time < lastTime - debounce. Must be non-negative. -->
4276    <integer name="config_displayWhiteBalanceDecreaseDebounce">5000</integer>
4277
4278    <!-- See DisplayWhiteBalanceThrottler.
4279         The ambient color temperature values used to determine the threshold as the corresponding
4280         value in config_displayWhiteBalance{Increase,Decrease}Threholds. Must be non-empty, the
4281         same length as config_displayWhiteBalance{Increase,Decrease}Thresholds, and contain
4282         non-negative, strictly increasing numbers.
4283
4284         For example, if:
4285
4286         - baseThresolds = [0, 100, 1000];
4287         - increaseThresholds = [0.1, 0.15, 0.2];
4288         - decreaseThresholds = [0.1, 0.05, 0.0];
4289
4290         Then, given the ambient color temperature INCREASED from X to Y (so X < Y):
4291         - If 0 <= Y < 100, we require Y > (1 + 0.1) * X = 1.1X;
4292         - If 100 <= Y < 1000, we require Y > (1 + 0.15) * X = 1.15X;
4293         - If 1000 <= Y, we require Y > (1 + 0.2) * X = 1.2X.
4294
4295         Or, if the ambient color temperature DECREASED from X to Y (so X > Y):
4296         - If 0 <= Y < 100, we require Y < (1 - 0.1) * X = 0.9X;
4297         - If 100 <= Y < 1000, we require Y < (1 - 0.05) * X = 0.95X;
4298         - If 1000 <= Y, we require Y < (1 - 0) * X = X.
4299
4300         NOTE: the numbers in this example are made up, and don't represent how actual base,
4301               increase or decrease thresholds would look like. -->
4302    <array name="config_displayWhiteBalanceBaseThresholds">
4303        <item>0.0</item>
4304    </array>
4305
4306    <!-- See DisplayWhiteBalanceThrottler.
4307         The increase threshold values, throttled if value < value * (1 + threshold). Must be
4308         non-empty, the same length as config_displayWhiteBalanceBaseThresholds, and contain
4309         non-negative numbers. -->
4310    <array name="config_displayWhiteBalanceIncreaseThresholds">
4311        <item>0.1</item>
4312    </array>
4313
4314    <!-- See DisplayWhiteBalanceThrottler.
4315         The decrease threshold values, throttled if value > value * (1 - threshold). Must be
4316         non-empty, the same length as config_displayWhiteBalanceBaseThresholds, and contain
4317         non-negative numbers. -->
4318    <array name="config_displayWhiteBalanceDecreaseThresholds">
4319        <item>0.1</item>
4320    </array>
4321
4322    <!-- See DisplayWhiteBalanceController.
4323         A float array containing a list of ambient brightnesses, in Lux. This array,
4324         together with config_displayWhiteBalanceLowLightAmbientBiases, is used to generate a
4325         lookup table used in DisplayWhiteBalanceController. This lookup table is used to map
4326         ambient brightness readings to a bias, where the bias is used to linearly interpolate
4327         between ambient color temperature and
4328         config_displayWhiteBalanceLowLightAmbientColorTemperature.
4329         This table is optional. If used, this array must,
4330         1) Contain at least two entries
4331         2) Be the same length as config_displayWhiteBalanceLowLightAmbientBiases. -->
4332    <array name ="config_displayWhiteBalanceLowLightAmbientBrightnesses">
4333        <item>10.0</item>
4334        <item>10.0</item>
4335    </array>
4336
4337    <!-- See DisplayWhiteBalanceController.
4338         An array containing a list of biases. See
4339         config_displayWhiteBalanceLowLightAmbientBrightnesses for additional details.
4340         This array must be in the range of [0.0, 1.0]. -->
4341    <array name ="config_displayWhiteBalanceLowLightAmbientBiases">
4342        <item>0.0</item>
4343        <item>1.0</item>
4344    </array>
4345
4346    <!-- See DisplayWhiteBalanceController.
4347         The ambient color temperature (in cct) to which we interpolate towards using the
4348         the look up table generated by config_displayWhiteBalanceLowLightAmbientBrightnesses
4349         and config_displayWhiteBalanceLowLightAmbientBiases. -->
4350    <item name="config_displayWhiteBalanceLowLightAmbientColorTemperature" format="float" type="dimen">6500.0</item>
4351
4352    <!-- See DisplayWhiteBalanceController.
4353         A float array containing a list of ambient brightnesses, in Lux. This array,
4354         together with config_displayWhiteBalanceHighLightAmbientBiases, is used to generate a
4355         lookup table used in DisplayWhiteBalanceController. This lookup table is used to map
4356         ambient brightness readings to a bias, where the bias is used to linearly interpolate
4357         between ambient color temperature and
4358         config_displayWhiteBalanceHighLightAmbientColorTemperature.
4359         This table is optional. If used, this array must,
4360         1) Contain at least two entries
4361         2) Be the same length as config_displayWhiteBalanceHighLightAmbientBiases. -->
4362    <array name ="config_displayWhiteBalanceHighLightAmbientBrightnesses">
4363    </array>
4364
4365    <!-- See DisplayWhiteBalanceController.
4366         An array containing a list of biases. See
4367         config_displayWhiteBalanceHighLightAmbientBrightnesses for additional details.
4368         This array must be in the range of [0.0, 1.0]. -->
4369    <array name ="config_displayWhiteBalanceHighLightAmbientBiases">
4370    </array>
4371
4372    <!-- See DisplayWhiteBalanceController.
4373         The ambient color temperature (in cct) to which we interpolate towards using the
4374         the look up table generated by config_displayWhiteBalanceHighLightAmbientBrightnesses
4375         and config_displayWhiteBalanceHighLightAmbientBiases. -->
4376    <item name="config_displayWhiteBalanceHighLightAmbientColorTemperature" format="float" type="dimen">8000.0</item>
4377
4378    <!-- See DisplayWhiteBalanceController.
4379         A float array containing a list of ambient color temperatures, in Kelvin. This array,
4380         together with config_displayWhiteBalanceDisplayColorTemperatures, is used to generate a
4381         lookup table used in DisplayWhiteBalanceController. This lookup table is used to map
4382         ambient color temperature readings to a target color temperature for the display.
4383         This table is optional. If used, this array must,
4384         1) Contain at least two entries
4385         2) Be the same length as config_displayWhiteBalanceDisplayColorTemperatures. -->
4386    <array name="config_displayWhiteBalanceAmbientColorTemperatures">
4387    </array>
4388
4389    <!-- See DisplayWhiteBalanceController.
4390         An array containing a list of display color temperatures, in Kelvin. See
4391         config_displayWhiteBalanceAmbientColorTemperatures for additional details.
4392         The same restrictions apply to this array. -->
4393    <array name="config_displayWhiteBalanceDisplayColorTemperatures">
4394    </array>
4395
4396    <!-- All of the paths defined for the batterymeter are defined on a 12x20 canvas, and must
4397     be parsable by android.utill.PathParser -->
4398    <string name="config_batterymeterPerimeterPath" translatable="false">
4399                M3.5,2 v0 H1.33 C0.6,2 0,2.6 0,3.33 V13v5.67 C0,19.4 0.6,20 1.33,20 h9.33 C11.4,20 12,19.4 12,18.67 V13V3.33 C12,2.6 11.4,2 10.67,2 H8.5 V0 H3.5 z M2,18v-7V4h8v9v5H2L2,18z
4400    </string>
4401    <string name="config_batterymeterErrorPerimeterPath" translatable="false">@string/config_batterymeterPerimeterPath</string>
4402    <string name="config_batterymeterFillMask" translatable="false">
4403        M2,18 v-14 h8 v14 z
4404    </string>
4405    <string name="config_batterymeterBoltPath" translatable="false">
4406        M5,17.5 V12 H3 L7,4.5 V10 h2 L5,17.5 z
4407    </string>
4408    <string name="config_batterymeterPowersavePath" translatable="false">
4409        M9,10l-2,0l0,-2l-2,0l0,2l-2,0l0,2l2,0l0,2l2,0l0,-2l2,0z
4410    </string>
4411
4412    <!-- Attribution path for SignalDrawable as defined on a 24x24 canvas. -->
4413    <string name="config_signalAttributionPath" translatable="false">
4414        M20,10h2v8h-2z M20,20h2v2h-2z
4415    </string>
4416    <!-- config_signalCutout{Height,Width}Fraction define fraction of the 24x24 canvas that
4417         should be cut out to display config_signalAttributionPath. -->
4418    <item name="config_signalCutoutWidthFraction" format="float" type="dimen">7</item>
4419    <item name="config_signalCutoutHeightFraction" format="float" type="dimen">17</item>
4420
4421    <!-- A dual tone battery meter draws the perimeter path twice - once to define the shape
4422     and a second time clipped to the fill level to indicate charge -->
4423    <bool name="config_batterymeterDualTone">false</bool>
4424
4425    <!-- The default refresh rate for a given device. Change this value to set a higher default
4426         refresh rate. If the hardware composer on the device supports display modes with a higher
4427         refresh rate than the default value specified here, the framework may use those higher
4428         refresh rate modes if an app chooses one by setting preferredDisplayModeId or calling
4429         setFrameRate().
4430         If a non-zero value is set for config_defaultPeakRefreshRate, then
4431         config_defaultRefreshRate may be set to 0, in which case the value set for
4432         config_defaultPeakRefreshRate will act as the default frame rate. -->
4433    <integer name="config_defaultRefreshRate">60</integer>
4434
4435    <!-- The default peak refresh rate for a given device. Change this value if you want to prevent
4436         the framework from using higher refresh rates, even if display modes with higher refresh
4437         rates are available from hardware composer. Only has an effect if the value is
4438         non-zero. -->
4439    <integer name="config_defaultPeakRefreshRate">0</integer>
4440
4441    <!-- The display uses different gamma curves for different refresh rates. It's hard for panel
4442         vendor to tune the curves to have exact same brightness for different refresh rate. So
4443         flicker could be observed at switch time. The issue is worse at the gamma lower end.
4444         In addition, human eyes are more sensitive to the flicker at darker environment.
4445         To prevent flicker, we only support higher refresh rates if the display brightness is above
4446         a threshold. And the darker environment could have higher threshold.
4447         For example, no higher refresh rate if
4448             display brightness <= disp0 && ambient brightness <= amb0
4449             || display brightness <= disp1 && ambient brightness <= amb1 -->
4450    <integer-array translatable="false" name="config_brightnessThresholdsOfPeakRefreshRate">
4451         <!--
4452           <item>disp0</item>
4453           <item>disp1</item>
4454        -->
4455    </integer-array>
4456    <integer-array translatable="false" name="config_ambientThresholdsOfPeakRefreshRate">
4457         <!--
4458           <item>amb0</item>
4459           <item>amb1</item>
4460        -->
4461    </integer-array>
4462
4463    <!-- Default refresh rate in the zone defined by brightness and ambient thresholds.
4464         If non-positive, then the refresh rate is unchanged even if thresholds are configured. -->
4465    <integer name="config_defaultRefreshRateInZone">0</integer>
4466
4467    <!-- The display uses different gamma curves for different refresh rates. It's hard for panel
4468         vendor to tune the curves to have exact same brightness for different refresh rate. So
4469         flicker could be observed at switch time. The issue can be observed on the screen with
4470         even full white content at the high brightness. To prevent flickering, we support fixed
4471         refresh rates if the display and ambient brightness are equal to or above the provided
4472         thresholds. You can define multiple threshold levels as higher brightness environments
4473         may have lower display brightness requirements for the flickering is visible. And the
4474         high brightness environment could have higher threshold.
4475         For example, fixed refresh rate if
4476             display brightness >= disp0 && ambient brightness >= amb0
4477             || display brightness >= disp1 && ambient brightness >= amb1 -->
4478    <integer-array translatable="false" name="config_highDisplayBrightnessThresholdsOfFixedRefreshRate">
4479         <!--
4480           <item>disp0</item>
4481           <item>disp1</item>
4482        -->
4483    </integer-array>
4484
4485    <integer-array translatable="false" name="config_highAmbientBrightnessThresholdsOfFixedRefreshRate">
4486         <!--
4487           <item>amb0</item>
4488           <item>amb1</item>
4489        -->
4490    </integer-array>
4491
4492    <!-- Default refresh rate in the high zone defined by brightness and ambient thresholds.
4493         If non-positive, then the refresh rate is unchanged even if thresholds are configured. -->
4494    <integer name="config_fixedRefreshRateInHighZone">0</integer>
4495
4496    <!-- The type of the light sensor to be used by the display framework for things like
4497         auto-brightness. If unset, then it just gets the default sensor of type TYPE_LIGHT. -->
4498    <string name="config_displayLightSensorType" translatable="false" />
4499
4500    <!-- Whether or not to enable automatic heap dumps for the system server on debuggable builds. -->
4501    <bool name="config_debugEnableAutomaticSystemServerHeapDumps">false</bool>
4502
4503    <!-- Trigger a heap dump if the system server pss usage exceeds this threshold. 400 MB -->
4504    <integer name="config_debugSystemServerPssThresholdBytes">419430400</integer>
4505
4506    <!-- See DropBoxManagerService.
4507         The minimum period in milliseconds between broadcasts for entries with low priority
4508         dropbox tags. -->
4509    <integer name="config_dropboxLowPriorityBroadcastRateLimitPeriod">2000</integer>
4510
4511    <!-- See DropBoxManagerService.
4512         An array of dropbox entry tags to marked as low priority. Low priority broadcasts will be
4513         rated limited to a period defined by config_dropboxLowPriorityBroadcastRateLimitPeriod
4514         (high frequency broadcasts for the tag will be dropped) -->
4515    <string-array name="config_dropboxLowPriorityTags" translatable="false">
4516        <item>data_app_strictmode</item>
4517        <item>data_app_wtf</item>
4518        <item>keymaster</item>
4519        <item>netstats</item>
4520        <item>system_app_strictmode</item>
4521        <item>system_app_wtf</item>
4522        <item>system_server_strictmode</item>
4523        <item>system_server_wtf</item>
4524    </string-array>
4525
4526    <!-- Which binder services to include in incident reports containing restricted images. -->
4527    <string-array name="config_restrictedImagesServices" translatable="false"/>
4528
4529    <string name="config_biometric_prompt_ui_package">com.android.systemui</string>
4530    <!-- List of biometric sensors on the device, in decreasing strength. Consumed by AuthService
4531         when registering authenticators with BiometricService. Format must be ID:Modality:Strength,
4532         where: IDs are unique per device, Modality as defined in BiometricAuthenticator.java,
4533         and Strength as defined in Authenticators.java -->
4534    <string-array name="config_biometric_sensors" translatable="false" >
4535        <!-- <item>0:2:15</item>  ID0:Fingerprint:Strong -->
4536    </string-array>
4537    <!--If true, allows the device to load udfps components on older HIDL implementations -->
4538    <bool name="allow_test_udfps" translatable="false" >false</bool>
4539
4540    <!-- The properties of a UDFPS sensor in pixels, in the order listed below: -->
4541    <integer-array name="config_udfps_sensor_props" translatable="false" >
4542      <!--
4543        <item>sensorLocationX</item>
4544        <item>sensorLocationY</item>
4545        <item>sensorRadius</item>
4546      -->
4547    </integer-array>
4548
4549    <!-- How long it takes for the HW to start illuminating after the illumination is requested. -->
4550    <integer name="config_udfps_illumination_transition_ms">50</integer>
4551
4552    <!-- Indicates whether device has a power button fingerprint sensor. -->
4553    <bool name="config_is_powerbutton_fps" translatable="false" >false</bool>
4554
4555    <!-- Messages that should not be shown to the user during face auth enrollment. This should be
4556         used to hide messages that may be too chatty or messages that the user can't do much about.
4557         Entries are defined in android.hardware.biometrics.face@1.0 types.hal -->
4558    <integer-array name="config_face_acquire_enroll_ignorelist" translatable="false" >
4559    </integer-array>
4560    <!-- Same as the above, but are defined by vendorCodes -->
4561    <integer-array name="config_face_acquire_vendor_enroll_ignorelist" translatable="false" >
4562    </integer-array>
4563
4564    <!-- Messages that should not be shown to the user during face authentication, on keyguard.
4565         This includes both lockscreen and bouncer. This should be used to hide messages that may be
4566         too chatty or messages that the user can't do much about. Entries are defined in
4567         android.hardware.biometrics.face@1.0 types.hal -->
4568    <integer-array name="config_face_acquire_keyguard_ignorelist" translatable="false" >
4569    </integer-array>
4570    <!-- Same as the above, but are defined by vendorCodes -->
4571    <integer-array name="config_face_acquire_vendor_keyguard_ignorelist" translatable="false" >
4572    </integer-array>
4573
4574    <!-- Messages that should not be shown to the user during face authentication, on
4575         BiometricPrompt. This should be used to hide messages that may be too chatty or messages
4576         that the user can't do much about. Entries are defined in
4577         android.hardware.biometrics.face@1.0 types.hal -->
4578    <integer-array name="config_face_acquire_biometricprompt_ignorelist" translatable="false" >
4579    </integer-array>
4580    <!-- Same as the above, but are defined by vendorCodes -->
4581    <integer-array name="config_face_acquire_vendor_biometricprompt_ignorelist" translatable="false" >
4582    </integer-array>
4583
4584    <!-- True if the sensor is able to provide self illumination in dark secnarios, without  support
4585         from above the HAL. This configuration is only applicable to IBiometricsFace@1.0 and its
4586         minor revisions. -->
4587    <bool name="config_faceAuthSupportsSelfIllumination">true</bool>
4588
4589    <!-- If face auth sends the user directly to home/last open app, or stays on keyguard -->
4590    <bool name="config_faceAuthDismissesKeyguard">true</bool>
4591
4592    <!-- The component name for the default profile supervisor, which can be set as a profile owner
4593    even after user setup is complete. The defined component should be used for supervision purposes
4594    only. The component must be part of a system app. -->
4595    <string name="config_defaultSupervisionProfileOwnerComponent" translatable="false"></string>
4596
4597    <!-- Trigger a warning for notifications with RemoteView objects that are larger in bytes than
4598    this value (default 1MB)-->
4599    <integer name="config_notificationWarnRemoteViewSizeBytes">2000000</integer>
4600
4601    <!-- Strip notification RemoteView objects that are larger in bytes than this value (also log)
4602    (default 2MB) -->
4603    <integer name="config_notificationStripRemoteViewSizeBytes">5000000</integer>
4604
4605    <!-- List of packages that can use the Conversation space for their category messages
4606    notifications until they target R -->
4607    <string-array name="config_notificationMsgPkgsAllowedAsConvos" translatable="false"/>
4608
4609    <!-- Sharesheet: define a max number of targets per application for new shortcuts-based direct share introduced in Q -->
4610    <integer name="config_maxShortcutTargetsPerApp">3</integer>
4611
4612    <!-- The package name for the vendor implementation of ACTION_FACTORY_RESET. For some vendors,
4613    the default implementation of ACTION_FACTORY_RESET does not work, so it is needed to re-route
4614    this intent to this package. This is being used in MasterClearReceiver.java. -->
4615    <string name="config_factoryResetPackage" translatable="false"></string>
4616
4617    <!-- The list of packages to automatically opt out of refresh rates higher than 60hz because
4618         of known compatibility issues. -->
4619    <string-array name="config_highRefreshRateBlacklist"></string-array>
4620
4621    <!-- Whether or not to hide the navigation bar when the soft keyboard is visible in order to
4622         create additional screen real estate outside beyond the keyboard. Note that the user needs
4623         to have a confirmed way to dismiss the keyboard when desired. -->
4624    <bool name="config_automotiveHideNavBarForKeyboard">false</bool>
4625
4626    <!-- Whether or not to show the built-in charging animation when the device begins charging
4627         wirelessly. -->
4628    <bool name="config_showBuiltinWirelessChargingAnim">true</bool>
4629
4630    <!-- A list of potential packages, in priority order, that can supply rules to
4631         AppIntegrityManager. These need to be apps on the system partition. -->
4632    <string-array name="config_integrityRuleProviderPackages" translatable="false">
4633        <!-- Add packages here -->
4634    </string-array>
4635
4636    <!-- Whether or not wcg (wide color gamut) should be enabled on this device,
4637         we only enabled it while the device has ability of mixed color spaces composition -->
4638    <bool name="config_enableWcgMode">false</bool>
4639
4640    <!-- When true, enables the allowlisted app to handle bug reports from power menu short press. -->
4641    <bool name="config_bugReportHandlerEnabled">false</bool>
4642
4643    <!-- The package name for the default bug report handler app from power menu short press. This app must be allowlisted. -->
4644    <string name="config_defaultBugReportHandlerApp" translatable="false"></string>
4645
4646    <!-- When true, enables the allowlisted app to upload profcollect reports. -->
4647    <bool name="config_profcollectReportUploaderEnabled">false</bool>
4648
4649    <!-- The package name for the default profcollect report uploader app. This app must be allowlisted. -->
4650    <string name="config_defaultProfcollectReportUploaderApp" translatable="false"></string>
4651
4652    <!-- The action name for the default profcollect report uploader app. -->
4653    <string name="config_defaultProfcollectReportUploaderAction" translatable="false"></string>
4654
4655    <!-- The default value used for RawContacts.ACCOUNT_NAME when contacts are inserted without this
4656         column set. These contacts are stored locally on the device and will not be removed even
4657         if no android.account.Account with this name exists. A null string will be used if the
4658         value is left empty. When this is non-empty then config_rawContactsLocalAccountType
4659         should also be non-empty.  -->
4660    <string name="config_rawContactsLocalAccountName" translatable="false"></string>
4661
4662    <!-- The default value used for RawContacts.ACCOUNT_TYPE when contacts are inserted without this
4663         column set. These contacts are stored locally on the device and will not be removed even
4664         if no android.account.Account with this type exists. A null string will be used if the
4665         value is left empty.  When this is non-empty then config_rawContactsLocalAccountName
4666         should also be non-empty.-->
4667    <string name="config_rawContactsLocalAccountType" translatable="false"></string>
4668
4669    <!-- Whether or not to use assistant stream volume separately from music volume -->
4670    <bool name="config_useAssistantVolume">false</bool>
4671
4672    <!-- Whether to use a custom Bugreport handling. When true, ACTION_CUSTOM_BUGREPORT_REQUESTED
4673         intent is broadcasted on bugreporting chord (instead of the default full bugreport
4674         generation). -->
4675    <bool name="config_customBugreport">false</bool>
4676
4677    <!-- Names of packages that should not be suspended when personal use is blocked by policy. -->
4678    <string-array name="config_packagesExemptFromSuspension" translatable="false">
4679        <!-- Add packages here, example: -->
4680        <!-- <item>com.android.settings</item> -->
4681    </string-array>
4682
4683
4684    <!-- Class name of the custom country detector to be used. -->
4685    <string name="config_customCountryDetector" translatable="false">com.android.server.location.ComprehensiveCountryDetector</string>
4686
4687    <!-- Package name of the required service extension package. -->
4688    <string name="config_servicesExtensionPackage" translatable="false">android.ext.services</string>
4689
4690    <!-- Retention policy: number of records to kept for the historical exit info per package. -->
4691    <integer name="config_app_exit_info_history_list_size">16</integer>
4692
4693    <!-- Packages that can't be killed even if it's requested to be killed on imperceptible -->
4694    <string-array name="config_defaultImperceptibleKillingExemptionPkgs" translatable="false" />
4695
4696    <!-- Proc States that can't be killed even if it's requested to be killed on imperceptible -->
4697    <integer-array name="config_defaultImperceptibleKillingExemptionProcStates">
4698      <item>0</item> <!-- PROCESS_STATE_PERSISTENT -->
4699      <item>1</item> <!-- PROCESS_STATE_PERSISTENT_UI -->
4700      <item>2</item> <!-- PROCESS_STATE_TOP -->
4701      <item>4</item> <!-- PROCESS_STATE_FOREGROUND_SERVICE -->
4702      <item>12</item> <!-- PROCESS_STATE_TOP_SLEEPING -->
4703    </integer-array>
4704
4705    <!-- Component name that accepts ACTION_SEND intents for nearby (proximity-based) sharing.
4706         Used by ChooserActivity. -->
4707    <string translatable="false" name="config_defaultNearbySharingComponent"></string>
4708
4709    <!-- Boolean indicating whether frameworks needs to reset cell broadcast geo-fencing
4710         check after reboot or airplane mode toggling -->
4711    <bool translatable="false" name="reset_geo_fencing_check_after_boot_or_apm">false</bool>
4712
4713    <!-- Boolean indicating whether all CB messages should be disabled on this device. This config
4714         is intended to be used by OEMs who need to disable CB messages for regulatory requirements,
4715         (e.g. the device is a tablet in a country where tablets should not receive CB messages) -->
4716    <bool translatable="false" name="config_disable_all_cb_messages">false</bool>
4717
4718    <!-- Screen Wake Keys
4719         Determines whether the specified key groups can be used to wake up the device. -->
4720    <bool name="config_wakeOnDpadKeyPress">true</bool>
4721    <bool name="config_wakeOnAssistKeyPress">true</bool>
4722    <bool name="config_wakeOnBackKeyPress">true</bool>
4723
4724    <!-- Whether to default to an expanded list of users on the lock screen user switcher. -->
4725    <bool name="config_expandLockScreenUserSwitcher">false</bool>
4726
4727    <!-- Toasts posted from these packages will be shown to the current user, regardless of the user
4728         the process belongs to. This is useful for packages that run under a single user but serve
4729         multiple users, e.g. the system.
4730         These packages MUST be able to add flag SYSTEM_FLAG_SHOW_FOR_ALL_USERS to a window. -->
4731    <string-array name="config_toastCrossUserPackages" translatable="false">
4732        <item>android</item>
4733        <item>com.android.systemui</item>
4734    </string-array>
4735
4736    <!-- Component name of custom media key dispatcher class used by MediaSessionService. -->
4737    <string name="config_customMediaKeyDispatcher"></string>
4738
4739    <!-- Component name of custom media session policy provider class used by
4740         MediaSessionService. -->
4741    <string name="config_customMediaSessionPolicyProvider"></string>
4742
4743    <!-- The max scale for the wallpaper when it's zoomed in -->
4744    <item name="config_wallpaperMaxScale" format="float" type="dimen">1.10</item>
4745
4746    <!-- Package name that will receive an explicit manifest broadcast for
4747         android.os.action.POWER_SAVE_MODE_CHANGED. -->
4748    <string name="config_powerSaveModeChangedListenerPackage" translatable="false"></string>
4749
4750    <!-- Set to true to enable the user switcher on the keyguard. -->
4751    <bool name="config_keyguardUserSwitcher">false</bool>
4752
4753    <!-- If true, show multiuser switcher by default unless the user specifically disables it. -->
4754    <bool name="config_showUserSwitcherByDefault">false</bool>
4755
4756    <!-- Set to true to make assistant show in front of the dream/screensaver. -->
4757    <bool name="config_assistantOnTopOfDream">false</bool>
4758
4759    <!-- pdp data retry for cause 29, 33 and 55 -->
4760    <bool name="config_pdp_reject_enable_retry">false</bool>
4761    <!-- pdp data reject retry delay in ms -->
4762    <integer name="config_pdp_reject_retry_delay_ms">-1</integer>
4763
4764    <!-- Whether or not to enable the binder heavy hitter watcher by default -->
4765    <bool name="config_defaultBinderHeavyHitterWatcherEnabled">false</bool>
4766
4767    <!-- The default batch size for the binder heavy hitter watcher -->
4768    <integer name="config_defaultBinderHeavyHitterWatcherBatchSize">2000</integer>
4769
4770    <!-- The default threshold for the binder heavy hitter watcher -->
4771    <item name="config_defaultBinderHeavyHitterWatcherThreshold" format="float" type="dimen">
4772        0.333
4773    </item>
4774
4775    <!-- Whether or not to enable the binder heavy hitter auto sampler by default -->
4776    <bool name="config_defaultBinderHeavyHitterAutoSamplerEnabled">false</bool>
4777
4778    <!-- The default batch size for the binder heavy hitter auto sampler -->
4779    <integer name="config_defaultBinderHeavyHitterAutoSamplerBatchSize">400</integer>
4780
4781    <!-- The default threshold for the binder heavy hitter auto sampler -->
4782    <item name="config_defaultBinderHeavyHitterAutoSamplerThreshold" format="float" type="dimen">
4783        0.333
4784    </item>
4785
4786    <!-- Component names of the services which will keep critical code path warm -->
4787    <string-array name="config_keep_warming_services" translatable="false" />
4788
4789    <!-- WindowsManager JetPack display features -->
4790    <string name="config_display_features" translatable="false" />
4791
4792    <!-- Map of System DeviceState supplied by DeviceStateManager to WM Jetpack posture. Must be in
4793         the format [System DeviceState]:[WM Jetpack Posture], for example: "0:1". -->
4794    <string-array name="config_device_state_postures" translatable="false" />
4795
4796    <!-- Aspect ratio of letterboxing for fixed orientation. Values <= 1.0 will be ignored.
4797         Note: Activity min/max aspect ratio restrictions will still be respected.
4798         Therefore this override can control the maximum screen area that can be occupied by
4799         the app in the letterbox mode. -->
4800    <item name="config_fixedOrientationLetterboxAspectRatio" format="float" type="dimen">0.0</item>
4801
4802    <!-- Corners radius for activity presented the letterbox mode. Values < 0 will be ignored and
4803         corners of the activity won't be rounded. -->
4804    <integer name="config_letterboxActivityCornersRadius">0</integer>
4805
4806    <!-- Blur radius for the Option 3 in R.integer.config_letterboxBackgroundType. Values < 0 are
4807        ignored and 0 is used. -->
4808    <dimen name="config_letterboxBackgroundWallpaperBlurRadius">31dp</dimen>
4809
4810    <!-- Alpha of a black translucent scrim showed over wallpaper letterbox background when
4811        the Option 3 is selected for R.integer.config_letterboxBackgroundType.
4812        Values < 0 or >= 1 are ignored and 0.0 (transparent) is used instead. -->
4813    <item name="config_letterboxBackgroundWallaperDarkScrimAlpha" format="float" type="dimen">
4814        0.5
4815    </item>
4816
4817    <!-- Corners appearance of the letterbox background.
4818            0 - Solid background using color specified in R.color.config_letterboxBackgroundColor.
4819            1 - Color specified in R.attr.colorBackground for the letterboxed application.
4820            2 - Color specified in R.attr.colorBackgroundFloating for the letterboxed application.
4821            3 - Wallpaper with dimmed with blur or/and dark scrim. At least one of the following
4822            parameters should be > 0: config_letterboxBackgroundWallpaperBlurRadius,
4823            config_letterboxBackgroundWallaperDarkScrimAlpha. If it's not the case or blur radius
4824            provided but blur isn't supported by the device and this option
4825            is selected then implementation will default to option 0.
4826        If given value is outside of this range, the option 0 will be assummed. -->
4827    <integer name="config_letterboxBackgroundType">0</integer>
4828
4829    <!-- Color of the letterbox background if one following conditions is true
4830            - Option 0 is selected for R.integer.config_letterboxBackgroundType.
4831            - Option 1 is selected for R.integer.config_letterboxBackgroundType and
4832            R.attr.colorBackground isn't specified for the app.
4833            - Option 2 is selected for R.integer.config_letterboxBackgroundType and
4834            R.attr.colorBackgroundFloating isn't specified for the app.
4835            - Option 3 is selected for R.integer.config_letterboxBackgroundType and blur requested
4836            but isn't supported on the device or both dark scrim alpha and blur radius aren't
4837            provided.
4838        Defaults to black if not specified.
4839     -->
4840    <color name="config_letterboxBackgroundColor">#000</color>
4841
4842    <!-- Horizonal position of a center of the letterboxed app window.
4843        0 corresponds to the left side of the screen and 1 to the right side. If given value < 0
4844        or > 1, it is ignored and central positionis used (0.5). -->
4845    <item name="config_letterboxHorizontalPositionMultiplier" format="float" type="dimen">0.5</item>
4846
4847    <!-- If true, hide the display cutout with display area -->
4848    <bool name="config_hideDisplayCutoutWithDisplayArea">false</bool>
4849
4850    <!-- The timeout value in milliseconds used by SelectionActionModeHelper for each selections
4851     when TextClassifier has been initialized. -->
4852    <integer name="config_smartSelectionInitializedTimeoutMillis">200</integer>
4853
4854    <!-- The timeout value in milliseconds used by SelectionActionModeHelper for each selections
4855         when TextClassifier has not been initialized. -->
4856    <integer name="config_smartSelectionInitializingTimeoutMillis">500</integer>
4857
4858    <!-- Indicates that default fitness tracker app needs to request sensor and location permissions. -->
4859    <bool name="config_trackerAppNeedsPermissions">false</bool>
4860
4861    <!-- Package with global data query permissions for AppSearch -->
4862    <string name="config_globalAppSearchDataQuerierPackage" translatable="false"></string>
4863
4864    <!-- If true, attach the navigation bar to the app during app transition -->
4865    <bool name="config_attachNavBarToAppDuringTransition">false</bool>
4866
4867    <!-- Flag indicating that the media framework should play a back sound when a back-transition
4868         happens that doesn't result in bringing the home task to the front.
4869         This is currently only used on TV. -->
4870    <bool name="config_enableBackSound">false</bool>
4871
4872    <!-- Chooser image editing activity.  Must handle ACTION_EDIT image/png intents.
4873         If omitted, image editing will not be offered via Chooser.
4874         This name is in the ComponentName flattened format (package/class) [DO NOT TRANSLATE]  -->
4875    <string name="config_systemImageEditor" translatable="false"></string>
4876
4877    <!-- Whether to force WindowOrientationListener to keep listening to its sensor, even when
4878         dreaming. This allows the AoD to rotate on devices without a wake device_orientation
4879         sensor. Note that this flag should only be enabled for development/testing use. -->
4880    <bool name="config_forceOrientationListenerEnabledWhileDreaming">false</bool>
4881
4882    <!-- Whether the device enable the standalone (SA) mode of 5G NR.-->
4883    <bool name="config_telephony5gStandalone">false</bool>
4884    <!-- Whether the device enable the non-standalone (NSA) mode of 5G NR.-->
4885    <bool name="config_telephony5gNonStandalone">false</bool>
4886
4887    <!-- Whether to select voice/data/sms preference without user confirmation -->
4888    <bool name="config_voice_data_sms_auto_fallback">false</bool>
4889
4890    <!-- Whether to enable dynamic keyguard positioning for wide screen devices (e.g. only using
4891         half of the screen, to be accessible using only one hand). -->
4892    <bool name="config_enableDynamicKeyguardPositioning">false</bool>
4893
4894    <!-- Whether to allow the caching of the SIM PIN for verification after unattended reboot -->
4895    <bool name="config_allow_pin_storage_for_unattended_reboot">true</bool>
4896
4897    <!-- CEC Configuration -->
4898    <bool name="config_cecHdmiCecEnabled_userConfigurable">true</bool>
4899    <bool name="config_cecHdmiCecControlEnabled_allowed">true</bool>
4900    <bool name="config_cecHdmiCecControlEnabled_default">true</bool>
4901    <bool name="config_cecHdmiCecControlDisabled_allowed">true</bool>
4902    <bool name="config_cecHdmiCecControlDisabled_default">false</bool>
4903
4904    <bool name="config_cecHdmiCecVersion_userConfigurable">true</bool>
4905    <bool name="config_cecHdmiCecVersion14b_allowed">true</bool>
4906    <bool name="config_cecHdmiCecVersion14b_default">true</bool>
4907    <bool name="config_cecHdmiCecVersion20_allowed">true</bool>
4908    <bool name="config_cecHdmiCecVersion20_default">false</bool>
4909
4910    <bool name="config_cecPowerControlMode_userConfigurable">true</bool>
4911    <bool name="config_cecPowerControlModeTv_allowed">true</bool>
4912    <bool name="config_cecPowerControlModeTv_default">true</bool>
4913    <bool name="config_cecPowerControlModeBroadcast_allowed">true</bool>
4914    <bool name="config_cecPowerControlModeBroadcast_default">false</bool>
4915    <bool name="config_cecPowerControlModeNone_allowed">true</bool>
4916    <bool name="config_cecPowerControlModeNone_default">false</bool>
4917
4918    <bool name="config_cecPowerStateChangeOnActiveSourceLost_userConfigurable">true</bool>
4919    <bool name="config_cecPowerStateChangeOnActiveSourceLostNone_allowed">true</bool>
4920    <bool name="config_cecPowerStateChangeOnActiveSourceLostNone_default">true</bool>
4921    <bool name="config_cecPowerStateChangeOnActiveSourceLostStandbyNow_allowed">true</bool>
4922    <bool name="config_cecPowerStateChangeOnActiveSourceLostStandbyNow_default">false</bool>
4923
4924    <bool name="config_cecSystemAudioModeMuting_userConfigurable">true</bool>
4925    <bool name="config_cecSystemAudioModeMutingEnabled_allowed">true</bool>
4926    <bool name="config_cecSystemAudioModeMutingEnabled_default">true</bool>
4927    <bool name="config_cecSystemAudioModeMutingDisabled_allowed">true</bool>
4928    <bool name="config_cecSystemAudioModeMutingDisabled_default">false</bool>
4929
4930    <bool name="config_cecVolumeControlMode_userConfigurable">true</bool>
4931    <bool name="config_cecVolumeControlModeEnabled_allowed">true</bool>
4932    <bool name="config_cecVolumeControlModeEnabled_default">true</bool>
4933    <bool name="config_cecVolumeControlModeDisabled_allowed">true</bool>
4934    <bool name="config_cecVolumeControlModeDisabled_default">false</bool>
4935
4936    <bool name="config_cecTvWakeOnOneTouchPlay_userConfigurable">true</bool>
4937    <bool name="config_cecTvWakeOnOneTouchPlayEnabled_allowed">true</bool>
4938    <bool name="config_cecTvWakeOnOneTouchPlayEnabled_default">true</bool>
4939    <bool name="config_cecTvWakeOnOneTouchPlayDisabled_allowed">true</bool>
4940    <bool name="config_cecTvWakeOnOneTouchPlayDisabled_default">false</bool>
4941
4942    <bool name="config_cecTvSendStandbyOnSleep_userConfigurable">true</bool>
4943    <bool name="config_cecTvSendStandbyOnSleepEnabled_allowed">true</bool>
4944    <bool name="config_cecTvSendStandbyOnSleepEnabled_default">true</bool>
4945    <bool name="config_cecTvSendStandbyOnSleepDisabled_allowed">true</bool>
4946    <bool name="config_cecTvSendStandbyOnSleepDisabled_default">false</bool>
4947
4948    <bool name="config_cecRcProfileTv_userConfigurable">true</bool>
4949    <bool name="config_cecRcProfileTvNone_allowed">true</bool>
4950    <bool name="config_cecRcProfileTvNone_default">true</bool>
4951    <bool name="config_cecRcProfileTvOne_allowed">true</bool>
4952    <bool name="config_cecRcProfileTvOne_default">false</bool>
4953    <bool name="config_cecRcProfileTvTwo_allowed">true</bool>
4954    <bool name="config_cecRcProfileTvTwo_default">false</bool>
4955    <bool name="config_cecRcProfileTvThree_allowed">true</bool>
4956    <bool name="config_cecRcProfileTvThree_default">false</bool>
4957    <bool name="config_cecRcProfileTvFour_allowed">true</bool>
4958    <bool name="config_cecRcProfileTvFour_default">false</bool>
4959
4960    <bool name="config_cecRcProfileSourceRootMenu_userConfigurable">true</bool>
4961    <bool name="config_cecRcProfileSourceRootMenuHandled_allowed">true</bool>
4962    <bool name="config_cecRcProfileSourceRootMenuHandled_default">true</bool>
4963    <bool name="config_cecRcProfileSourceRootMenuNotHandled_allowed">true</bool>
4964    <bool name="config_cecRcProfileSourceRootMenuNotHandled_default">false</bool>
4965
4966    <bool name="config_cecRcProfileSourceSetupMenu_userConfigurable">true</bool>
4967    <bool name="config_cecRcProfileSourceSetupMenuHandled_allowed">true</bool>
4968    <bool name="config_cecRcProfileSourceSetupMenuHandled_default">true</bool>
4969    <bool name="config_cecRcProfileSourceSetupMenuNotHandled_allowed">true</bool>
4970    <bool name="config_cecRcProfileSourceSetupMenuNotHandled_default">false</bool>
4971
4972    <bool name="config_cecRcProfileSourceContentsMenu_userConfigurable">true</bool>
4973    <bool name="config_cecRcProfileSourceContentsMenuHandled_allowed">true</bool>
4974    <bool name="config_cecRcProfileSourceContentsMenuHandled_default">false</bool>
4975    <bool name="config_cecRcProfileSourceContentsMenuNotHandled_allowed">true</bool>
4976    <bool name="config_cecRcProfileSourceContentsMenuNotHandled_default">true</bool>
4977
4978    <bool name="config_cecRcProfileSourceTopMenu_userConfigurable">true</bool>
4979    <bool name="config_cecRcProfileSourceTopMenuHandled_allowed">true</bool>
4980    <bool name="config_cecRcProfileSourceTopMenuHandled_default">false</bool>
4981    <bool name="config_cecRcProfileSourceTopMenuNotHandled_allowed">true</bool>
4982    <bool name="config_cecRcProfileSourceTopMenuNotHandled_default">true</bool>
4983
4984    <bool name="config_cecRcProfileSourceMediaContextSensitiveMenu_userConfigurable">true</bool>
4985    <bool name="config_cecRcProfileSourceMediaContextSensitiveMenuHandled_allowed">true</bool>
4986    <bool name="config_cecRcProfileSourceMediaContextSensitiveMenuHandled_default">false</bool>
4987    <bool name="config_cecRcProfileSourceMediaContextSensitiveMenuNotHandled_allowed">true</bool>
4988    <bool name="config_cecRcProfileSourceMediaContextSensitiveMenuNotHandled_default">true</bool>
4989
4990    <!-- Whether app hibernation deletes OAT artifact files as part of global hibernation. -->
4991    <bool name="config_hibernationDeletesOatArtifactsEnabled">true</bool>
4992
4993    <!-- Package name of the on-device intelligent processor for system UI
4994         features. Examples include the search functionality or the app
4995         predictor. -->
4996    <string name="config_systemUiIntelligence" translatable="false"></string>
4997    <!-- Package name of the on-device intelligent processor for ambient audio.
4998         Ambient audio is the sound surrounding the device captured by the DSP
4999         or the microphone. In other words, the device is continuously
5000         processing audio data in background. -->
5001    <string name="config_systemAmbientAudioIntelligence" translatable="false"></string>
5002    <!-- Package name of the on-device intelligent processor for audio. The
5003         difference of 'ambient audio' and 'audio' is that in 'audio', the
5004         user intentionally and consciously aware that the device is recording
5005         or using the microphone.
5006         -->
5007    <string name="config_systemAudioIntelligence" translatable="false"></string>
5008    <!-- Package name of the on-device intelligent processor for notification.
5009         -->
5010    <string name="config_systemNotificationIntelligence" translatable="false"></string>
5011    <!-- Package name of the on-device intelligent processor for text. Examples
5012        include providing autofill functionality based on incoming text
5013        messages. -->
5014    <string name="config_systemTextIntelligence" translatable="false"></string>
5015    <!-- Package name of the on-device intelligent processor for visual
5016         features. Examples include the autorotate feature. -->
5017    <string name="config_systemVisualIntelligence" translatable="false"></string>
5018    <!-- On-device package for providing companion device associations. -->
5019    <string name="config_systemCompanionDeviceProvider" translatable="false"></string>
5020
5021    <!-- Whether this device is supporting the microphone toggle -->
5022    <bool name="config_supportsMicToggle">false</bool>
5023    <!-- Whether this device is supporting the camera toggle -->
5024    <bool name="config_supportsCamToggle">false</bool>
5025
5026    <!-- List containing the allowed install sources for accessibility service. -->
5027    <string-array name="config_accessibility_allowed_install_source" translatable="false"/>
5028
5029    <!-- Default value for Settings.ASSIST_LONG_PRESS_HOME_ENABLED -->
5030    <bool name="config_assistLongPressHomeEnabledDefault">true</bool>
5031    <!-- Default value for Settings.ASSIST_TOUCH_GESTURE_ENABLED -->
5032    <bool name="config_assistTouchGestureEnabledDefault">true</bool>
5033
5034    <!-- The maximum byte size of the information contained in the bundle of
5035    HotwordDetectedResult. -->
5036    <integer translatable="false" name="config_hotwordDetectedResultMaxBundleSize">0</integer>
5037
5038    <!-- The amount of dimming to apply to wallpapers with mid range luminance. 0 displays
5039         the wallpaper at full brightness. 1 displays the wallpaper as fully black. -->
5040    <item name="config_wallpaperDimAmount" format="float" type="dimen">0.05</item>
5041
5042    <!-- The default number of times per second that the seconds hand on AnalogClock ticks. If set
5043         to 0, the seconds hand will be disabled. -->
5044    <integer name="config_defaultAnalogClockSecondsHandFps">1</integer>
5045
5046    <!-- the number of the max cached processes in the system. -->
5047    <integer name="config_customizedMaxCachedProcesses">32</integer>
5048</resources>
5049