• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (C) 2017 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package android.os;
18 
19 import android.annotation.FlaggedApi;
20 import android.annotation.SdkConstant;
21 import android.annotation.SdkConstant.SdkConstantType;
22 import android.annotation.SystemApi;
23 
24 /**
25  * Intents used to provide unbundled updates of system data.
26  * All require the UPDATE_CONFIG permission.
27  *
28  * @see com.android.server.updates
29  * @hide
30  */
31 @SystemApi
32 public final class ConfigUpdate {
33 
34     /**
35      * Update system wide certificate pins for TLS connections.
36      * @hide
37      */
38     @SystemApi
39     public static final String ACTION_UPDATE_PINS = "android.intent.action.UPDATE_PINS";
40 
41     /**
42      * Update system wide Intent firewall.
43      * @hide
44      */
45     @SystemApi
46     public static final String ACTION_UPDATE_INTENT_FIREWALL
47             = "android.intent.action.UPDATE_INTENT_FIREWALL";
48 
49     /**
50      * Update list of permium SMS short codes.
51      * @hide
52      */
53     @SystemApi
54     public static final String ACTION_UPDATE_SMS_SHORT_CODES
55             = "android.intent.action.UPDATE_SMS_SHORT_CODES";
56 
57     /**
58      * Update list of carrier provisioning URLs.
59      * @hide
60      */
61     @SystemApi
62     public static final String ACTION_UPDATE_CARRIER_PROVISIONING_URLS
63             = "android.intent.action.UPDATE_CARRIER_PROVISIONING_URLS";
64 
65     /**
66      * Update set of trusted logs used for Certificate Transparency support for TLS connections.
67      * @hide
68      */
69     @SystemApi
70     public static final String ACTION_UPDATE_CT_LOGS
71             = "android.intent.action.UPDATE_CT_LOGS";
72 
73     /**
74      * Update language detection model file.
75      * @hide
76      */
77     @SystemApi
78     public static final String ACTION_UPDATE_LANG_ID = "android.intent.action.UPDATE_LANG_ID";
79 
80     /**
81      * Update smart selection model file.
82      * @hide
83      */
84     @SystemApi
85     public static final String ACTION_UPDATE_SMART_SELECTION
86             = "android.intent.action.UPDATE_SMART_SELECTION";
87 
88     /**
89      * Update conversation actions model file.
90      * @hide
91      */
92     @SystemApi
93     public static final String ACTION_UPDATE_CONVERSATION_ACTIONS
94             = "android.intent.action.UPDATE_CONVERSATION_ACTIONS";
95 
96     /**
97      * Update network watchlist config file.
98      * @hide
99      */
100     @SystemApi
101     public static final String ACTION_UPDATE_NETWORK_WATCHLIST
102             = "android.intent.action.UPDATE_NETWORK_WATCHLIST";
103 
104     /**
105      * Broadcast intent action indicating that the updated carrier id config is available.
106      * <p>Extra: "VERSION" the numeric version of the new data. Devices should only install if the
107      * update version is newer than the current one.
108      * <p>Extra: "REQUIRED_HASH" the hash of the current update data.
109      * <p>Input: {@link android.content.Intent#getData} is URI of downloaded carrier id file.
110      * Devices should pick up the downloaded file and persist to the database
111      * {@link com.android.providers.telephony.CarrierIdProvider}.
112      *
113      * @hide
114      */
115     @SystemApi
116     public static final String ACTION_UPDATE_CARRIER_ID_DB
117             = "android.os.action.UPDATE_CARRIER_ID_DB";
118 
119     /**
120     * Update the emergency number database into the devices.
121     * <p>Extra: {@link #EXTRA_VERSION} the numeric version of the database.
122     * <p>Extra: {@link #EXTRA_REQUIRED_HASH} hash of the database, which is encoded by base-16
123      * SHA512.
124     * <p>Input: {@link android.content.Intent#getData} the URI to download emergency number
125     * database.
126     *
127     * @hide
128     */
129     @SystemApi
130     @SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION)
131     public static final String ACTION_UPDATE_EMERGENCY_NUMBER_DB =
132             "android.os.action.UPDATE_EMERGENCY_NUMBER_DB";
133 
134     /**
135      * Broadcast intent action indicating that the updated config data is available.
136      * This broadcast intent action is to be sent by the config updater app, and will be received
137      * and handled by the platform.
138      * <p>Extra: {@link #EXTRA_VERSION} the numeric version of the database.
139      * <p>Extra: {@link #EXTRA_REQUIRED_HASH} hash of the database, which is encoded by base-16
140      * SHA512
141      * <p>Extra: {@link #EXTRA_DOMAIN} the string identifying the affected module
142      * <p>Input: {@link android.content.Intent#getData} the URI to download config data file
143      *
144      * @hide
145      */
146     @SystemApi
147     @FlaggedApi(com.android.internal.telephony.flags.Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
148     @SdkConstant(SdkConstantType.BROADCAST_INTENT_ACTION)
149     public static final String ACTION_UPDATE_CONFIG = "android.os.action.UPDATE_CONFIG";
150 
151     /**
152      * An integer to indicate the numeric version of the new data. Devices should only install
153      * if the update version is newer than the current one.
154      *
155      * @hide
156      */
157     @SystemApi
158     public static final String EXTRA_VERSION = "android.os.extra.VERSION";
159 
160     /**
161      * Hash of the database, which is encoded by base-16 SHA512.
162      *
163      * @hide
164      */
165     @SystemApi
166     public static final String EXTRA_REQUIRED_HASH = "android.os.extra.REQUIRED_HASH";
167 
168     /**
169      * String identifying the affected module.
170      * Devices apply the updated config data to the module specified in the string.
171      *
172      * @hide
173      */
174     @SystemApi
175     @FlaggedApi(com.android.internal.telephony.flags.Flags.FLAG_OEM_ENABLED_SATELLITE_FLAG)
176     public static final String EXTRA_DOMAIN  = "android.os.extra.DOMAIN";
177 
ConfigUpdate()178     private ConfigUpdate() {
179     }
180 }
181