• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="utf-8"?>
2<!--
3/*
4 * Copyright (C) 2011 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<manifest xmlns:android="http://schemas.android.com/apk/res/android"
20        package="com.android.cellbroadcastreceiver">
21
22    <original-package android:name="com.android.cellbroadcastreceiver" />
23
24    <uses-permission android:name="android.permission.RECEIVE_SMS" />
25    <uses-permission android:name="android.permission.RECEIVE_EMERGENCY_BROADCAST" />
26    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
27    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
28    <uses-permission android:name="android.permission.WAKE_LOCK" />
29    <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />
30    <uses-permission android:name="android.permission.VIBRATE" />
31    <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS" />
32
33    <application android:name="CellBroadcastReceiverApp"
34            android:label="@string/app_label"
35            android:icon="@mipmap/ic_launcher_cell_broadcast">
36
37        <service android:name="CellBroadcastAlertAudio"
38                 android:exported="false" />
39
40        <service android:name="CellBroadcastAlertService"
41                 android:exported="false" />
42
43        <service android:name="CellBroadcastConfigService"
44                 android:exported="false" />
45
46        <provider android:name="CellBroadcastContentProvider"
47                  android:authorities="cellbroadcasts"
48                  android:readPermission="android.permission.READ_CELL_BROADCASTS" />
49
50        <activity android:name="CellBroadcastListActivity"
51                  android:label="@string/app_label"
52                  android:configChanges="orientation|keyboardHidden"
53                  android:launchMode="singleTask">
54            <intent-filter>
55                <action android:name="android.intent.action.MAIN" />
56<!-- Uncomment this category to show the Cell Broadcasts launcher icon.
57     Otherwise, set "config_cellBroadcastAppLinks" to true in a config.xml overlay
58     to add links to Cell Broadcast activities via Settings and MMS menu items.
59                <category android:name="android.intent.category.LAUNCHER" />
60 -->
61                <category android:name="android.intent.category.DEFAULT" />
62            </intent-filter>
63            <intent-filter>
64                <action android:name="android.cellbroadcastreceiver.UPDATE_LIST_VIEW" />
65                <category android:name="android.intent.category.DEFAULT" />
66            </intent-filter>
67        </activity>
68
69        <!-- Settings opened by ListActivity menu, Settings app link or opt-out dialog. -->
70        <activity android:name="CellBroadcastSettings"
71                  android:label="@string/sms_cb_settings"
72                  android:launchMode="singleTask"
73                  android:exported="true" />
74
75        <activity android:name="CellBroadcastAlertDialog"
76                  android:theme="@android:style/Theme.Holo.Dialog"
77                  android:launchMode="singleTask"
78                  android:exported="false"
79                  android:configChanges="orientation|keyboardHidden|keyboard|navigation" />
80
81        <!-- Full-screen version of CellBroadcastAlertDialog to display alerts over lock screen. -->
82        <activity android:name="CellBroadcastAlertFullScreen"
83                  android:excludeFromRecents="true"
84                  android:theme="@style/AlertFullScreenTheme"
85                  android:launchMode="singleTask"
86                  android:exported="false"
87                  android:configChanges="orientation|keyboardHidden|keyboard|navigation" />
88
89        <!-- Container activity for CMAS opt-in/opt-out dialog. -->
90        <activity android:name="CellBroadcastOptOutActivity"
91                  android:exported="false" />
92
93        <!-- Require sender permissions to prevent SMS spoofing -->
94        <receiver android:name="PrivilegedCellBroadcastReceiver"
95            android:permission="android.permission.BROADCAST_SMS">
96            <intent-filter>
97                <action android:name="android.provider.Telephony.SMS_EMERGENCY_CB_RECEIVED" />
98            </intent-filter>
99
100            <intent-filter>
101                <action android:name="android.provider.Telephony.SMS_CB_RECEIVED" />
102            </intent-filter>
103
104            <intent-filter>
105                <action android:name="android.provider.Telephony.SMS_SERVICE_CATEGORY_PROGRAM_DATA_RECEIVED" />
106            </intent-filter>
107        </receiver>
108
109        <!-- Require sender permission for querying latest area info broadcast -->
110        <receiver android:name="PrivilegedCellBroadcastReceiver"
111            android:permission="android.permission.READ_PHONE_STATE">
112            <intent-filter>
113                 <action android:name="android.cellbroadcastreceiver.GET_LATEST_CB_AREA_INFO" />
114            </intent-filter>
115        </receiver>
116
117        <receiver android:name="CellBroadcastReceiver">
118            <intent-filter>
119                 <action android:name="android.intent.action.BOOT_COMPLETED" />
120            </intent-filter>
121
122            <intent-filter>
123                 <action android:name="android.intent.action.AIRPLANE_MODE" />
124            </intent-filter>
125        </receiver>
126
127    </application>
128</manifest>
129