1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (C) 2007 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<manifest xmlns:android="http://schemas.android.com/apk/res/android"
18        xmlns:androidprv="http://schemas.android.com/apk/prv/res/android"
19        package="com.android.phone"
20        coreApp="true"
21        android:sharedUserId="android.uid.phone"
22        android:sharedUserLabel="@string/phoneAppLabel">
23
24    <!-- Allows broadcasting for SlicePurchaseController events. -->
25    <protected-broadcast android:name="com.android.phone.slice.action.START_SLICE_PURCHASE_APP" />
26    <protected-broadcast android:name="com.android.phone.slice.action.SLICE_PURCHASE_APP_RESPONSE_TIMEOUT" />
27
28    <original-package android:name="com.android.phone" />
29    <!-- Allows granting runtime permissions to telephony related components. -->
30    <uses-permission android:name="android.permission.GRANT_RUNTIME_PERMISSIONS_TO_TELEPHONY_DEFAULTS" />
31
32    <uses-permission android:name="android.permission.BROADCAST_STICKY" />
33    <uses-permission android:name="android.permission.CALL_PHONE" />
34    <uses-permission android:name="android.permission.CALL_PRIVILEGED" />
35    <!-- TELEPHONY_SECRET_CODE used to be sent by the Dialer app, but is now sent by
36         the phone process through an API added in O. Since the broadcast was unprotected prior to
37         O, apps may have required this permission (which only Dialer has) in their receivers.
38         So, declare this permission here for backwards compatibility so the phone process can send
39         the broadcasts to those same receivers. -->
40    <uses-permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE" />
41    <uses-permission android:name="android.permission.DOWNLOAD_WITHOUT_NOTIFICATION" />
42    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
43    <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS" />
44    <uses-permission android:name="android.permission.READ_CONTACTS" />
45    <uses-permission android:name="android.permission.READ_CALL_LOG" />
46    <uses-permission android:name="android.permission.WRITE_CONTACTS" />
47    <uses-permission android:name="android.permission.WRITE_CALL_LOG" />
48    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
49    <uses-permission android:name="android.permission.INTERNAL_SYSTEM_WINDOW" />
50    <uses-permission android:name="android.permission.VIBRATE" />
51    <uses-permission android:name="android.permission.BLUETOOTH_CONNECT" />
52    <uses-permission android:name="android.permission.BLUETOOTH_SCAN" />
53    <uses-permission android:name="android.permission.REORDER_TASKS" />
54    <uses-permission android:name="android.permission.CHANGE_CONFIGURATION" />
55    <uses-permission android:name="android.permission.WAKE_LOCK" />
56    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
57    <uses-permission android:name="android.permission.STATUS_BAR" />
58    <uses-permission android:name="android.permission.STATUS_BAR_SERVICE" />
59    <uses-permission android:name="android.permission.RECEIVE_SMS" />
60    <uses-permission android:name="android.permission.READ_SMS" />
61    <uses-permission android:name="android.permission.WRITE_SMS" />
62    <uses-permission android:name="android.permission.SEND_SMS" />
63    <uses-permission android:name="android.permission.SEND_RESPOND_VIA_MESSAGE" />
64    <uses-permission android:name="android.permission.SUGGEST_TELEPHONY_TIME_AND_ZONE" />
65    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
66    <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
67    <uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
68    <uses-permission android:name="android.permission.ACCESS_IMS_CALL_SERVICE" />
69    <uses-permission android:name="android.permission.DEVICE_POWER" />
70    <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
71    <uses-permission android:name="android.permission.INTERNET" />
72    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
73    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
74    <uses-permission android:name="android.permission.LOCATION_BYPASS" />
75    <uses-permission android:name="android.permission.WRITE_APN_SETTINGS" />
76    <uses-permission android:name="android.permission.BROADCAST_SMS"/>
77    <uses-permission android:name="android.permission.BROADCAST_WAP_PUSH"/>
78    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
79    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
80    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"/>
81    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
82    <uses-permission android:name="android.permission.SHUTDOWN" />
83    <uses-permission android:name="android.permission.RECORD_AUDIO" />
84    <uses-permission android:name="android.permission.PERFORM_CDMA_PROVISIONING" />
85    <uses-permission android:name="android.permission.USE_SIP" />
86    <uses-permission android:name="android.permission.REBOOT" />
87    <uses-permission android:name="android.permission.UPDATE_LOCK" />
88    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" />
89    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" />
90    <uses-permission android:name="com.android.smspush.WAPPUSH_MANAGER_BIND" />
91    <uses-permission android:name="android.permission.MANAGE_USERS" />
92    <uses-permission android:name="android.permission.UPDATE_APP_OPS_STATS" />
93    <uses-permission android:name="android.permission.READ_CARRIER_APP_INFO" />
94    <uses-permission android:name="android.permission.MANAGE_APP_OPS_MODES" />
95    <uses-permission android:name="android.permission.CONNECTIVITY_USE_RESTRICTED_NETWORKS" />
96    <uses-permission android:name="android.permission.NETWORK_FACTORY" />
97    <uses-permission android:name="android.permission.OBSERVE_NETWORK_POLICY" />
98    <uses-permission android:name="android.permission.SET_PREFERRED_APPLICATIONS" />
99    <uses-permission android:name="android.permission.READ_SEARCH_INDEXABLES" />
100    <uses-permission android:name="android.permission.DUMP" />
101    <uses-permission android:name="android.permission.REGISTER_CALL_PROVIDER" />
102    <uses-permission android:name="android.permission.REGISTER_SIM_SUBSCRIPTION" />
103    <uses-permission android:name="android.permission.BIND_IMS_SERVICE" />
104    <uses-permission android:name="android.permission.BIND_CARRIER_SERVICES" />
105    <uses-permission android:name="android.permission.BIND_EUICC_SERVICE" />
106    <uses-permission android:name="android.permission.BIND_TELEPHONY_NETWORK_SERVICE" />
107    <uses-permission android:name="android.permission.BIND_CELL_BROADCAST_SERVICE" />
108    <uses-permission android:name="android.permission.WRITE_EMBEDDED_SUBSCRIPTIONS" />
109    <uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
110    <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
111    <uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
112    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
113    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
114    <uses-permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL" />
115    <uses-permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL" />
116    <uses-permission android:name="com.android.voicemail.permission.READ_VOICEMAIL" />
117    <uses-permission android:name="android.permission.BIND_VISUAL_VOICEMAIL_SERVICE"/>
118    <uses-permission android:name="android.permission.LOCAL_MAC_ADDRESS" />
119    <uses-permission android:name="android.permission.CHANGE_COMPONENT_ENABLED_STATE" />
120    <uses-permission android:name="android.permission.CHANGE_DEVICE_IDLE_TEMP_WHITELIST" />
121    <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
122    <uses-permission android:name="android.permission.READ_SYSTEM_GRAMMATICAL_GENDER" />
123    <!-- Needed to block messages. -->
124    <uses-permission android:name="android.permission.READ_BLOCKED_NUMBERS" />
125    <!-- Needed for emergency contact notification. -->
126    <uses-permission android:name="android.permission.WRITE_BLOCKED_NUMBERS" />
127    <uses-permission android:name="android.permission.NETWORK_SETTINGS" />
128
129    <!-- Needed to register puller to statsd. -->
130    <uses-permission android:name="android.permission.REGISTER_STATS_PULL_ATOM" />
131
132    <!-- This tells the activity manager to not delay any of our activity
133         start requests, even if they happen immediately after the user
134         presses home. -->
135    <uses-permission android:name="android.permission.STOP_APP_SWITCHES" />
136    <uses-permission android:name="android.permission.UPDATE_DEVICE_STATS" />
137    <uses-permission android:name="android.permission.MANAGE_NETWORK_POLICY" />
138    <uses-permission android:name="android.permission.READ_NETWORK_USAGE_HISTORY" />
139    <uses-permission android:name="android.permission.BIND_TELEPHONY_DATA_SERVICE" />
140    <uses-permission android:name="android.permission.BIND_SATELLITE_GATEWAY_SERVICE" />
141    <uses-permission android:name="android.permission.BIND_SATELLITE_SERVICE" />
142    <uses-permission android:name="android.permission.SATELLITE_COMMUNICATION" />
143    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
144    <uses-permission android:name="android.permission.READ_PRECISE_PHONE_STATE" />
145    <uses-permission android:name="android.permission.MANAGE_ROLE_HOLDERS" />
146    <!-- Allows us to allow list receivers of the
147         ACTION_SIM_SLOT_STATUS_CHANGED broadcast to start activities
148         from the background.  -->
149    <uses-permission android:name="android.permission.START_ACTIVITIES_FROM_BACKGROUND" />
150    <uses-permission android:name="android.permission.NETWORK_STATS_PROVIDER" />
151    <uses-permission android:name="android.permission.MANAGE_SUBSCRIPTION_PLANS"/>
152    <uses-permission android:name="android.permission.OBSERVE_ROLE_HOLDERS"/>
153    <uses-permission android:name="android.permission.BIND_GBA_SERVICE"/>
154    <!-- Permissions required for reading and logging compat changes -->
155    <uses-permission android:name="android.permission.LOG_COMPAT_CHANGE"/>
156    <uses-permission android:name="android.permission.READ_COMPAT_CHANGE_CONFIG"/>
157
158    <!-- Needed to listen to changes in projection state. -->
159    <uses-permission android:name="android.permission.READ_PROJECTION_STATE"/>
160    <!-- Needed to access TelephonyProvider SIMINFO table. -->
161    <uses-permission android:name="android.permission.ACCESS_TELEPHONY_SIMINFO_DB"/>
162    <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
163
164    <!-- Needed to block unwanted malicious pop up overlays -->
165    <uses-permission android:name="android.permission.HIDE_NON_SYSTEM_OVERLAY_WINDOWS"/>
166
167    <!-- Needed to set user association to a certain sim -->
168    <uses-permission android:name="android.permission.MANAGE_SUBSCRIPTION_USER_ASSOCIATION"/>
169
170    <!-- Needed to register for UWB state changes for satellite communication -->
171    <uses-permission android:name="android.permission.UWB_PRIVILEGED"/>
172
173    <!-- Needed to initiate configuration update -->
174    <uses-permission android:name="android.permission.UPDATE_CONFIG"/>
175
176    <!-- Needed to bind the domain selection service. -->
177    <uses-permission android:name="android.permission.BIND_DOMAIN_SELECTION_SERVICE" />
178
179    <!-- Needed to send safety center updates for cellular transparency features   -->
180    <uses-permission android:name="android.permission.SEND_SAFETY_CENTER_UPDATE"/>
181
182    <!-- Needed because the DISPLAY_EMERGENCY_MESSAGE ConnectionEvent contains a PendingIntent to activate the satellite feature. -->
183    <uses-permission android:name="com.google.android.apps.stargate.permission.SEND_EMERGENCY_INTENTS"/>
184    <!-- Needed to start demo session -->
185    <uses-permission android:name="com.google.android.apps.stargate.permission.SEND_NON_EMERGENCY_INTENTS"/>
186
187    <application android:name="PhoneApp"
188            android:persistent="true"
189            android:label="@string/phoneAppLabel"
190            android:icon="@mipmap/ic_launcher_phone"
191            android:allowBackup="false"
192            android:supportsRtl="true"
193            android:usesCleartextTraffic="true"
194            android:defaultToDeviceProtectedStorage="true"
195            android:directBootAware="true">
196
197        <provider android:name="IccProvider"
198                android:authorities="icc"
199                android:multiprocess="true"
200                android:exported="true"
201                android:readPermission="android.permission.READ_CONTACTS"
202                android:writePermission="android.permission.WRITE_CONTACTS" />
203
204        <provider android:name=".SimPhonebookProvider"
205            android:authorities="com.android.simphonebook"
206            android:multiprocess="true"
207            android:exported="true"
208            android:readPermission="android.permission.READ_CONTACTS"
209            android:writePermission="android.permission.WRITE_CONTACTS" />
210
211        <provider android:name="com.android.ims.rcs.uce.eab.EabProvider"
212                android:authorities="eab"
213                android:exported="false"/>
214
215        <!-- Dialer UI that only allows emergency calls -->
216        <activity android:name="EmergencyDialer"
217            android:label="@string/emergencyDialerIconLabel"
218            android:theme="@style/EmergencyDialerTheme"
219            android:screenOrientation="portrait"
220            android:showWhenLocked="true"
221            android:exported="true"
222            android:resizeableActivity="false">
223            <intent-filter>
224                <action android:name="com.android.phone.EmergencyDialer.DIAL" />
225                <category android:name="android.intent.category.DEFAULT" />
226            </intent-filter>
227            <intent-filter>
228                <action android:name="com.android.phone.EmergencyDialer.DIAL" />
229                <category android:name="android.intent.category.DEFAULT" />
230                <data android:scheme="tel" />
231            </intent-filter>
232            <intent-filter>
233                <action android:name="android.intent.action.DIAL_EMERGENCY" />
234                <category android:name="android.intent.category.DEFAULT" />
235            </intent-filter>
236            <intent-filter>
237                <action android:name="android.intent.action.DIAL_EMERGENCY" />
238                <category android:name="android.intent.category.DEFAULT" />
239                <data android:scheme="tel" />
240            </intent-filter>
241        </activity>
242
243        <activity android:name="ADNList" />
244
245        <activity android:name="SimContacts"
246            android:label="@string/simContacts_title"
247            android:theme="@style/SimImportTheme"
248            android:screenOrientation="portrait"
249            android:exported="true"
250            android:icon="@mipmap/ic_launcher_contacts">
251
252            <intent-filter>
253                <action android:name="android.intent.action.VIEW" />
254                <category android:name="android.intent.category.DEFAULT" />
255                <data android:mimeType="vnd.android.cursor.item/sim-contact" />
256            </intent-filter>
257        </activity>
258
259        <activity android:name="com.android.phone.settings.fdn.FdnList"
260                android:label="@string/fdnListLabel"
261                android:exported="true"
262                android:theme="@style/DialerSettingsLight">
263            <intent-filter>
264                <action android:name="android.intent.action.VIEW" />
265                <category android:name="android.intent.category.DEFAULT" />
266                <data android:mimeType="vnd.android.cursor.item/sim-contact" />
267            </intent-filter>
268        </activity>
269
270        <activity android:name="com.android.internal.telephony.uicc.InstallCarrierAppTrampolineActivity"
271                  android:theme="@android:style/Theme.Translucent.NoTitleBar"
272                  android:exported="false"/>
273
274        <activity android:name="GsmUmtsCallOptions"
275                android:label="@string/gsm_umts_options"
276                android:exported="false"
277                android:theme="@style/DialerSettingsLight">
278            <intent-filter>
279                <action android:name="android.intent.action.MAIN" />
280            </intent-filter>
281        </activity>
282
283        <activity android:name="CdmaCallOptions"
284                android:label="@string/cdma_options"
285                android:exported="false"
286                android:theme="@style/DialerSettingsLight">
287            <intent-filter>
288                <action android:name="android.intent.action.MAIN" />
289            </intent-filter>
290        </activity>
291
292        <activity android:name="GsmUmtsCallForwardOptions"
293                android:label="@string/labelCF"
294                android:configChanges="orientation|screenSize|keyboardHidden"
295                android:exported="false"
296                android:theme="@style/CallSettingsWithoutDividerTheme">
297            <intent-filter>
298                <action android:name="android.intent.action.MAIN" />
299            </intent-filter>
300        </activity>
301
302        <activity android:name="CdmaCallForwardOptions"
303                android:label="@string/labelCF"
304                android:configChanges="orientation|screenSize|keyboardHidden"
305                android:exported="false"
306                android:theme="@style/CallSettingsWithoutDividerTheme">
307            <intent-filter>
308                <action android:name="android.intent.action.MAIN" />
309            </intent-filter>
310        </activity>
311
312        <activity android:name="GsmUmtsCallBarringOptions"
313                android:label="@string/labelCallBarring"
314                android:configChanges="orientation|screenSize|keyboardHidden"
315                android:exported="false"
316                android:theme="@style/DialerSettingsLight">
317            <intent-filter>
318                <action android:name="android.intent.action.MAIN" />
319            </intent-filter>
320        </activity>
321
322        <activity android:name="GsmUmtsAdditionalCallOptions"
323                android:label="@string/labelGSMMore"
324                android:configChanges="orientation|screenSize|keyboardHidden"
325                android:exported="false"
326                android:theme="@style/CallSettingsWithoutDividerTheme">
327            <intent-filter>
328                <action android:name="android.intent.action.MAIN" />
329            </intent-filter>
330        </activity>
331
332        <!-- fdn setting -->
333        <activity android:name="com.android.phone.settings.fdn.FdnSetting"
334                android:label="@string/fdn"
335                android:exported="false"
336                android:theme="@style/CallSettingsWithoutDividerTheme">
337            <intent-filter>
338                <action android:name="android.intent.action.MAIN" />
339            </intent-filter>
340        </activity>
341
342        <!-- SIM PIN setting -->
343        <activity android:name="EnableIccPinScreen"
344                android:label="@string/enable_pin"
345                android:exported="true"
346                android:theme="@style/DialerSettingsLight">
347            <intent-filter>
348                <action android:name="android.intent.action.MAIN" />
349                <category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
350            </intent-filter>
351        </activity>
352
353        <activity android:name="ChangeIccPinScreen"
354                android:label="@string/change_pin"
355                android:exported="true"
356                android:theme="@style/DialerSettingsLight">
357            <intent-filter>
358                <action android:name="android.intent.action.MAIN" />
359                <category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
360            </intent-filter>
361        </activity>
362
363        <activity android:name="com.android.phone.settings.fdn.GetPin2Screen"
364                android:label="@string/get_pin2"
365                android:theme="@style/DialerSettingsLight"
366                android:windowSoftInputMode="stateVisible">
367        </activity>
368
369        <activity android:name="com.android.phone.settings.fdn.EditFdnContactScreen"
370                android:theme="@style/DialerSettingsLight"
371                android:windowSoftInputMode="stateVisible">
372        </activity>
373
374        <activity android:name="com.android.phone.settings.fdn.DeleteFdnContactScreen"
375                android:theme="@style/DialerSettingsLight"
376                android:label="@string/delete_fdn_contact">
377        </activity>
378
379        <!-- "Call settings" UI, used only on voice-capable phone devices. -->
380        <activity android:name="CallFeaturesSetting"
381                android:label="@string/call_settings"
382                android:configChanges="orientation|screenSize|keyboardHidden"
383                android:exported="true"
384                android:theme="@style/CallSettingsWithoutDividerTheme">
385            <intent-filter android:priority="1">
386                <action android:name="android.intent.action.MAIN" />
387                <action android:name="android.telecom.action.SHOW_CALL_SETTINGS" />
388                <category android:name="android.intent.category.DEFAULT" />
389            </intent-filter>
390        </activity>
391
392        <!-- Activation service that trigger OTASP sim provisioning -->
393        <service android:name=".otasp.OtaspActivationService" android:launchMode="singleInstance"
394            androidprv:systemUserOnly="true"
395            android:exported="true"
396            android:permission="android.permission.MODIFY_PHONE_STATE">
397            <intent-filter>
398                <action android:name="android.service.simActivation.SimActivationService" />
399            </intent-filter>
400        </service>
401
402        <receiver android:name=".otasp.OtaspSimStateReceiver" androidprv:systemUserOnly="true"
403                  android:exported ="false">
404            <intent-filter>
405                <action android:name="android.telephony.action.CARRIER_CONFIG_CHANGED" />
406            </intent-filter>
407        </receiver>
408
409        <!-- "Accessibility" settings UI. Referenced by Dialer application. -->
410        <activity android:name="com.android.phone.settings.AccessibilitySettingsActivity"
411                android:label="@string/accessibility_settings_activity_title"
412                android:exported="true"
413                android:theme="@style/DialerSettingsLight">
414            <intent-filter>
415                <action android:name="android.intent.action.MAIN" />
416                <action android:name="android.telecom.action.SHOW_CALL_ACCESSIBILITY_SETTINGS" />
417                <category android:name="android.intent.category.DEFAULT" />
418            </intent-filter>
419        </activity>
420
421        <!-- CDMA Emergency Callback Mode -->
422        <service android:name="EmergencyCallbackModeService">
423        </service>
424
425        <!-- service to dump telephony information -->
426        <service android:name="com.android.phone.TelephonyDebugService"
427                android:exported="true"
428                 android:permission="android.permission.DUMP">
429            <intent-filter>
430                <action android:name="com.android.phone.TelephonyDebugService" />
431            </intent-filter>
432        </service>
433
434        <!-- Handler for EuiccManager's public-facing intents. -->
435        <activity android:name=".euicc.EuiccUiDispatcherActivity"
436            android:theme="@android:style/Theme.NoDisplay"
437            android:exported="true"
438            android:permission="android.permission.MODIFY_PHONE_STATE">
439            <!-- Max out priority to ensure nobody else will handle these intents. -->
440            <intent-filter android:priority="1000">
441                <action android:name=
442                            "android.telephony.euicc.action.MANAGE_EMBEDDED_SUBSCRIPTIONS" />
443                <action android:name=
444                            "android.telephony.euicc.action.PROVISION_EMBEDDED_SUBSCRIPTION" />
445                <action android:name=
446                    "android.telephony.euicc.action.TRANSFER_EMBEDDED_SUBSCRIPTIONS" />
447                <action android:name=
448                    "android.telephony.euicc.action.CONVERT_TO_EMBEDDED_SUBSCRIPTION" />
449                <category android:name="android.intent.category.DEFAULT" />
450            </intent-filter>
451        </activity>
452
453        <!--
454            Handler for EuiccManager's resolution intents. These are locked down so that only
455            privileged processes can start them, which means we can trust the Intent used to start
456            it (which contains a description of the next step to perform after resolution).
457
458            If modified, also change EuiccController#RESOLUTION_ACTIVITY_PACKAGE_NAME and
459            EuiccController#RESOLUTION_ACTIVITY_CLASS_NAME
460        -->
461        <activity android:name=".euicc.EuiccResolutionUiDispatcherActivity"
462            android:exported="true"
463            android:permission="android.permission.CALL_PRIVILEGED">
464            <!-- Max out priority to ensure nobody else will handle these intents. -->
465            <intent-filter android:priority="1000">
466                <action android:name=
467                            "android.telephony.euicc.action.RESOLVE_ERROR" />
468                <category android:name="android.intent.category.DEFAULT" />
469            </intent-filter>
470        </activity>
471
472        <!--
473            Handler for EuiccManager's privileged action intents. These are locked down so that only
474            privileged processes can start them.
475        -->
476        <activity android:name=".euicc.EuiccPrivilegedActionUiDispatcherActivity"
477                  android:theme="@android:style/Theme.NoDisplay"
478                  android:exported="true"
479                  android:permission="android.permission.CALL_PRIVILEGED">
480            <!-- Max out priority to ensure nobody else will handle these intents. -->
481            <intent-filter android:priority="1000">
482                <action android:name=
483                            "android.telephony.euicc.action.TOGGLE_SUBSCRIPTION_PRIVILEGED" />
484                <action android:name=
485                            "android.telephony.euicc.action.DELETE_SUBSCRIPTION_PRIVILEGED" />
486                <action android:name=
487                            "android.telephony.euicc.action.RENAME_SUBSCRIPTION_PRIVILEGED" />
488                <category android:name="android.intent.category.DEFAULT" />
489            </intent-filter>
490        </activity>
491
492        <!--
493            Handler for EuiccManager's public action intents. These are public and do not require
494            any special permissions to start, although the calling package name should be
495            whitelisted by the underlying eUICC service implementation (i.e. the LPA).
496        -->
497        <activity android:name=".euicc.EuiccPublicActionUiDispatcherActivity"
498            android:exported="true"
499            android:theme="@android:style/Theme.NoDisplay">
500            <!-- Max out priority to ensure nobody else will handle these intents. -->
501            <intent-filter android:priority="1000">
502                <action android:name=
503                    "android.telephony.euicc.action.START_EUICC_ACTIVATION" />
504                <category android:name="android.intent.category.DEFAULT" />
505            </intent-filter>
506        </activity>
507
508        <activity android:name="EmergencyCallbackModeExitDialog"
509            android:excludeFromRecents="true"
510            android:label="@string/ecm_exit_dialog"
511            android:launchMode="singleTop"
512            android:exported="true"
513            android:theme="@android:style/Theme.Translucent.NoTitleBar">
514            <intent-filter>
515                <action android:name="com.android.phone.action.ACTION_SHOW_ECM_EXIT_DIALOG" />
516                <action android:name="android.telephony.action.SHOW_NOTICE_ECM_BLOCK_OTHERS" />
517                <category android:name="android.intent.category.DEFAULT" />
518            </intent-filter>
519        </activity>
520
521        <activity android:name="MMIDialogActivity"
522                android:configChanges="orientation|screenSize|keyboardHidden"
523                android:excludeFromRecents="true"
524                android:launchMode="singleInstance"
525                android:theme="@style/Empty">
526        </activity>
527
528        <activity android:name="com.android.phone.settings.PhoneAccountSettingsActivity"
529            android:label="@string/phone_accounts"
530            android:exported="true"
531            android:theme="@style/DialerSettingsLight">
532            <intent-filter>
533                <action android:name="android.telecom.action.CHANGE_PHONE_ACCOUNTS" />
534                <category android:name="android.intent.category.DEFAULT" />
535            </intent-filter>
536        </activity>
537
538        <activity android:name="com.android.phone.settings.VoicemailSettingsActivity"
539            android:label="@string/voicemail"
540            android:configChanges="orientation|screenSize|keyboardHidden|screenLayout"
541            android:exported="true"
542            android:theme="@style/CallSettingsWithoutDividerTheme">
543            <intent-filter >
544                <!-- DO NOT RENAME. There are existing apps which use this string. -->
545                <action android:name="com.android.phone.CallFeaturesSetting.ADD_VOICEMAIL" />
546                <category android:name="android.intent.category.DEFAULT" />
547            </intent-filter>
548            <intent-filter android:priority="1000">
549                <action android:name="android.telephony.action.CONFIGURE_VOICEMAIL" />
550                <category android:name="android.intent.category.DEFAULT" />
551            </intent-filter>
552        </activity>
553
554        <!-- Telecom integration -->
555        <service
556                android:singleUser="true"
557                android:name="com.android.services.telephony.TelephonyConnectionService"
558                android:label="@string/pstn_connection_service_label"
559                android:exported="true"
560                android:permission="android.permission.BIND_TELECOM_CONNECTION_SERVICE" >
561            <intent-filter>
562                <action android:name="android.telecom.ConnectionService" />
563            </intent-filter>
564        </service>
565
566        <receiver
567          android:name="com.android.phone.vvm.VvmSmsReceiver"
568            android:exported="true"
569            androidprv:systemUserOnly="true">
570            <intent-filter>
571                <action android:name="com.android.internal.provider.action.VOICEMAIL_SMS_RECEIVED"/>
572            </intent-filter>
573        </receiver>
574
575        <receiver
576            android:name="com.android.phone.vvm.VvmSimStateTracker"
577            android:exported="true"
578            androidprv:systemUserOnly="true">
579            <intent-filter>
580                <action android:name="android.intent.action.BOOT_COMPLETED"/>
581                <action android:name="android.telephony.action.CARRIER_CONFIG_CHANGED"/>
582                <action android:name="android.intent.action.SIM_STATE_CHANGED"/>
583            </intent-filter>
584        </receiver>
585
586        <!-- Update configuration data file -->
587        <receiver android:name="com.android.internal.telephony.configupdate.TelephonyConfigUpdateInstallReceiver"
588            android:exported="true"
589            android:permission="android.permission.UPDATE_CONFIG">
590            <intent-filter>
591                <action android:name="android.os.action.UPDATE_CONFIG" />
592                <data android:scheme="content" android:host="*" android:mimeType="*/*" />
593            </intent-filter>
594        </receiver>
595
596        <receiver
597            android:name="com.android.internal.telephony.uicc.ShowInstallAppNotificationReceiver"
598            android:exported="false"/>
599
600        <receiver
601            android:name=".security.SafetySourceReceiver"
602            android:exported="true"
603            androidprv:systemUserOnly="true">
604            <intent-filter>
605                <action android:name="android.safetycenter.action.REFRESH_SAFETY_SOURCES"/>
606            </intent-filter>
607        </receiver>
608
609        <activity
610            android:name="com.android.phone.settings.PickSmsSubscriptionActivity"
611            android:exported="false"
612            android:excludeFromRecents="true"
613            android:launchMode="singleTop"
614            android:configChanges="orientation|screenSize|keyboardHidden"
615            android:theme="@style/Theme.Transparent"/>
616
617        <activity
618            android:name="com.android.phone.ErrorDialogActivity"
619            android:exported="false"
620            android:excludeFromRecents="true"
621            android:launchMode="singleTop"
622            android:configChanges="orientation|screenSize|keyboardHidden"
623            android:theme="@style/Theme.Telephony.Transparent"/>
624
625        <service
626            android:name="com.android.phone.vvm.RemoteVvmTaskManager"
627            android:exported="false"/>
628        <service android:name="com.android.internal.telephony.CellularNetworkService"
629            android:exported="true"
630            android:permission="android.permission.BIND_TELEPHONY_NETWORK_SERVICE" >
631            <intent-filter>
632                <action android:name="android.telephony.NetworkService" />
633            </intent-filter>
634        </service>
635        <service android:name="com.android.internal.telephony.data.CellularDataService"
636            android:exported="true"
637            android:permission="android.permission.BIND_TELEPHONY_DATA_SERVICE" >
638            <intent-filter>
639                <action android:name="android.telephony.data.DataService" />
640            </intent-filter>
641        </service>
642
643        <activity
644            android:name=".settings.RadioInfo"
645            android:label="@string/phone_info_label"
646            android:exported="true"
647            android:theme="@style/RadioInfoTheme">
648            <intent-filter>
649                <action android:name="android.intent.action.MAIN" />
650                <category android:name="android.intent.category.DEVELOPMENT_PREFERENCE" />
651            </intent-filter>
652        </activity>
653
654        <provider
655            android:name="ServiceStateProvider"
656            android:authorities="service-state"
657            android:exported="true"
658            android:multiprocess="false"
659            android:singleUser="true"
660            android:writePermission="android.permission.MODIFY_PHONE_STATE"/>
661
662        <service android:name="com.android.services.telephony.domainselection.TelephonyDomainSelectionService"
663            android:exported="true"
664            android:permission="android.permission.BIND_DOMAIN_SELECTION_SERVICE">
665            <intent-filter>
666                <action android:name="android.telephony.DomainSelectionService"/>
667            </intent-filter>
668        </service>
669    </application>
670</manifest>
671