blob: 1b5430958c85eb659f4f3ab4a79c360f5f31c3f1 [file] [log] [blame]
keunyoung5c7cb262015-10-19 10:47:45 -07001<?xml version="1.0" encoding="utf-8"?>
2<!--
3/*
4** Copyright 2015, 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<!-- Resources to configure car service based on each OEM's preference. -->
21
22<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
23 <!-- Audio routing policy for all H/W variants. Each item represents policy for one variant.
24
25 Each item is defined in this format:
26 physicalStreamNumber:(streamType,)*StreamType#physicalStreamNumber:...
27
28 Stream type is logical stream type to route to the physical stream. Currently defined
Keun-young Park5672e852016-02-09 19:53:48 -080029 types are: call, media, nav_guidance, voice_command, alarm, notification, system, safety,
30 and unknown
keunyoung5c7cb262015-10-19 10:47:45 -070031 unknown is for stream not tagged with specific contents.
32 physicalStreamNumber should be [0, maxNumberOfPhysicalStream - 1].
Keun-young Park5672e852016-02-09 19:53:48 -080033 There is no "radio" as radio routing is outside android (for external module) or same as
34 music (for android internal module)
keunyoung5c7cb262015-10-19 10:47:45 -070035 OEM can put multiple policies as item and VEHICLE_PROPERTY_AUDIO_HW_VARIANT in vehicle HAL
Pavel Maltseve11ad3a2016-03-25 15:40:24 -070036 can decide which policy to use for the given H/W. This allows OEMs to support multiple
keunyoung5c7cb262015-10-19 10:47:45 -070037 audio policy from single android S/W by detecting system's audio capability in
38 vehicle HAL.-->
39 <string-array translatable="false" name="audioRoutingPolicy">
40 <!-- alll logical streams into single physical stream 0. -->
Keun-young Park3057ebd2016-03-28 18:12:09 -070041 <item>"0:call,media,radio,nav_guidance,voice_command,alarm,notification,system,safety,unknown"</item>
keunyoung5c7cb262015-10-19 10:47:45 -070042 <!-- call and media to physical stream 0 while all others go to physical stream 1 -->
Keun-young Park3057ebd2016-03-28 18:12:09 -070043 <item>"0:call,media,radio,unknown#1:nav_guidance,voice_command,alarm,notification,system,safety"</item>
keunyoung5c7cb262015-10-19 10:47:45 -070044 </string-array>
Keun-young Park6eab4de2016-03-31 19:53:02 -070045 <!-- Configuration to enable usage of dynamic audio routing. If this is set to false,
46 dynamic audio routing is disabled and audio works in legacy mode. It may be useful
47 during initial development where audio hal does not support bus based addressing yet. -->
48 <bool name="audioUseDynamicRouting">true</bool>
Keun-young Park3cb89102016-05-05 13:16:03 -070049 <!-- Whether to block other audio while media audio is muted with display off. When set to true,
50 other sounds cannot be played either while display is off. If false, only media is muted
51 and other sounds can be still played. -->
52 <bool name="displayOffMuteLockAllAudio">true</bool>
Vitalii Tomkive836ac32016-04-05 17:26:41 -070053
Vitalii Tomkiv2bd06922016-07-26 11:07:48 -070054 <string name="inputService">android.car.input.service/.DefaultInputService</string>
Keun-young Parka28d7b22016-02-29 16:54:29 -080055
Pavel Maltsev905968c2017-07-16 19:48:57 -070056 <string name="instrumentClusterRendererService">android.car.cluster.sample/.SampleClusterServiceImpl</string>
Keun-young Park4727da32016-05-31 10:00:51 -070057
Enrico Granata9a916d72017-09-19 14:33:08 -070058 <!-- Whether to enable Activity blocking for safety. When Activity blocking is enabled,
Keun-young Park4727da32016-05-31 10:00:51 -070059 only whitelisted safe Activities will be allowed while car is not parked. -->
60 <bool name="enableActivityBlockingForSafety">true</bool>
61 <!-- Activity to be presented when un-safe activity is launched. Take a look at the javadoc of the
62 default implementation. -->
63 <string name="activityBlockingActivity">com.android.car/com.android.car.pm.ActivityBlockingActivity</string>
64 <!-- Comma separated list of activities that will be allowed by default. This only applies to
65 system apps which is included into system image and non-system app in the list will be
66 ignored. Format of each entry is either to specify package name to whitelist the whole
67 package or use format of "packagename/activity_classname" for tagging each activities.
68 Besides this, system apps with car app meta data will be auto whitelisted. -->
Keun-young Park98960812016-10-04 12:50:54 -070069 <string name="defauiltActivityWhitelist">android,com.android.systemui</string>
Yao Chenb982e642016-10-13 14:22:56 -070070 <!-- Default home activity -->
Pavel Maltseved2c8642017-12-18 12:56:26 -080071 <string name="defaultHomeActivity"><!--com.your.package/com.your.package.Activity--></string>
Antonio Cortes6b3544c2017-02-06 16:54:58 -080072 <!-- The com.android.car.VmsPublisherService will bind to this list of clients -->
73 <string-array translatable="false" name="vmsPublisherClients">
74 </string-array>
Antonio Cortesbb73c4c2017-05-16 14:18:47 -070075 <!-- Permissions that the com.android.car.VmsPublisherService is allowed to grant to publishers -->
76 <string-array translatable="false" name="vmsSafePermissions">
77 <item>"android.permission.ACCESS_FINE_LOCATION"</item>
78 </string-array>
Enrico Granata9a916d72017-09-19 14:33:08 -070079
Enrico Granata9c1f2722017-09-21 17:19:04 -070080 <!-- Hours of uptime (excluding sleep) after which a 1% increase in the wear of the flash
81 storage in the head-unit is considered as acceptable level of wear. -->
82 <integer name="acceptableHoursPerOnePercentFlashWear">70</integer>
83
84 <!-- How often (in hours of uptime excluding sleep) CarService will flush to disk information
85 about the total running time of the head-unit. A shutdown or reboot of the head-unit
86 will always cause a flush of the uptime information, regardless of this setting. -->
87 <integer name="uptimeHoursIntervalBetweenUptimeDataWrite">5</integer>
Enrico Granata3a1e6262017-09-29 12:07:44 -070088
89 <!-- The name of an activity to be launched by CarService whenever it detects a change in the
90 level of wear of the flash storage. Value must either be an empty string, which means that
91 no activity shall be launched, or must be in the format of a flattened ComponentName and
92 reference a valid activity. It is strongly recommended that the chosen activity be
93 protected with the android.car.permission.STORAGE_MONITORING permission. -->
94 <string name="activityHandlerForFlashWearChanges">com.google.android.car.defaultstoragemonitoringcompanionapp/.MainActivity</string>
Enrico Granata3346ed82017-11-02 13:40:45 -070095
96 <!-- How often (in seconds) CarService will update I/O metrics from the kernel. -->
97 <integer name="ioStatsRefreshRateSeconds">60</integer>
Enrico Granata0f72b742017-11-02 18:26:41 -070098
99 <!-- The number of I/O metrics samples to keep in memory at one time.
100 The system will keep a sliding window of samples of this size, and allow
Enrico Granata88d92c82017-11-30 16:47:15 -0800101 retrieval of activity this many sample windows back in time. Setting this to
102 0 means no samples will be collected, effectively disabling I/O metric collection. -->
103 <integer name="ioStatsNumSamplesToStore">0</integer>
Enrico Granata43024de2017-11-16 17:09:37 -0800104
105 <!-- The maximum number of KB (1024 bytes) that can be written to storage in one sample
Enrico Granataafe7f302017-11-28 14:18:37 -0800106 before CarService deems I/O activity excessive. A simple way to set this value
107 is - given the total writable amount (storage size * P/E cycles) - to make
108 reasonable assumptions about the expected lifetime of the vehicle and the average
109 daily driving time, and use that to allocate a per-sample budget. -->
Enrico Granata43024de2017-11-16 17:09:37 -0800110 <integer name="acceptableWrittenKBytesPerSample">0</integer>
111 <!-- The maximum number of fsync() system calls that can be made in one sample before
112 CarService deems I/O activity excessive. -->
113 <integer name="acceptableFsyncCallsPerSample">0</integer>
114
115 <!-- The maximum number of samples (within an I/O stats sample window) that CarService
116 should consider exhibiting excessive I/O activity before broadcasting an intent
117 to signal the potential for flash wear. -->
Enrico Granata88d92c82017-11-30 16:47:15 -0800118 <integer name="maxExcessiveIoSamplesInWindow">0</integer>
Enrico Granata43024de2017-11-16 17:09:37 -0800119
120 <!-- The name of an intent to be notified by CarService whenever it detects too many
121 samples with excessive I/O activity. Value must either be an empty string, which
122 means that no notification will take place, or be in the format of a flattened
Enrico Granataafe7f302017-11-28 14:18:37 -0800123 ComponentName and reference a valid BroadcastReceiver. This broadcast receiver
124 must be registered in its containing app's AndroidManifest.xml and it is
125 strongly recommended that it be protected with the
126 android.car.permission.STORAGE_MONITORING permission. -->
Enrico Granata43024de2017-11-16 17:09:37 -0800127 <string name="intentReceiverForUnacceptableIoMetrics"></string>
keunyoung5c7cb262015-10-19 10:47:45 -0700128</resources>