• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<?xml version="1.0" encoding="utf-8"?>
2<!--
3/*
4 * Copyright (C) 2007-2008 Esmertec AG.
5 * Copyright (C) 2007-2008 The Android Open Source Project
6 *
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
10 *
11 *      http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
18 */
19-->
20<manifest xmlns:android="http://schemas.android.com/apk/res/android"
21        package="com.android.mms">
22
23    <original-package android:name="com.android.mms" />
24
25    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
26    <uses-permission android:name="android.permission.CALL_PHONE" />
27    <uses-permission android:name="android.permission.READ_CONTACTS" />
28    <uses-permission android:name="android.permission.WRITE_CONTACTS" />
29    <uses-permission android:name="android.permission.READ_PROFILE" />
30    <uses-permission android:name="android.permission.RECEIVE_SMS" />
31    <uses-permission android:name="android.permission.RECEIVE_MMS" />
32    <uses-permission android:name="android.permission.SEND_SMS" />
33    <uses-permission android:name="android.permission.VIBRATE" />
34    <uses-permission android:name="android.permission.INTERNET" />
35    <uses-permission android:name="android.permission.READ_SMS"/>
36    <uses-permission android:name="android.permission.WRITE_SMS"/>
37    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
38    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
39    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
40    <uses-permission android:name="android.permission.WAKE_LOCK" />
41    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
42    <uses-permission android:name="android.permission.INSTALL_DRM" />
43    <uses-permission android:name="android.permission.WRITE_APN_SETTINGS" />
44    <!-- System apps can access the  receiver through intent-->
45    <permission android:name="android.permission.MMS_SEND_OUTBOX_MSG"
46                android:protectionLevel="signatureOrSystem"
47                android:label="@string/label_mms_send_outbox_msg"
48                android:description="@string/desc_mms_send_outbox_msg"/>
49    <uses-permission android:name="android.permission.MMS_SEND_OUTBOX_MSG"/>
50    <application android:name="MmsApp"
51            android:label="@string/app_label"
52            android:icon="@mipmap/ic_launcher_smsmms"
53            android:taskAffinity="android.task.mms"
54            android:allowTaskReparenting="true">
55
56        <service android:name=".transaction.TransactionService"
57                 android:exported="false" />
58
59        <service android:name=".transaction.SmsReceiverService"
60                 android:exported="false" />
61
62        <activity android:name=".ui.ConversationList"
63                  android:label="@string/app_label"
64                  android:configChanges="orientation|screenSize|keyboardHidden"
65                  android:theme="@style/MmsHoloTheme"
66                  android:uiOptions="splitActionBarWhenNarrow"
67                  android:launchMode="singleTop">
68            <intent-filter>
69                <action android:name="android.intent.action.MAIN" />
70                <category android:name="android.intent.category.LAUNCHER" />
71                <category android:name="android.intent.category.DEFAULT" />
72                <category android:name="android.intent.category.APP_MESSAGING" />
73            </intent-filter>
74            <intent-filter>
75                <action android:name="android.intent.action.MAIN" />
76                <category android:name="android.intent.category.DEFAULT" />
77                <data android:mimeType="vnd.android.cursor.dir/mms" />
78            </intent-filter>
79            <intent-filter>
80                <action android:name="android.intent.action.MAIN" />
81                <category android:name="android.intent.category.DEFAULT" />
82                <data android:mimeType="vnd.android-dir/mms-sms" />
83            </intent-filter>
84        </activity>
85
86        <activity android:name=".ui.ComposeMessageActivity"
87                  android:configChanges="orientation|screenSize|keyboardHidden"
88                  android:windowSoftInputMode="stateHidden|adjustResize"
89                  android:theme="@style/MmsHoloTheme"
90                  android:parentActivityName=".ui.ConversationList"
91                  android:launchMode="singleTop" >
92            <intent-filter>
93                <action android:name="android.intent.action.VIEW" />
94                <category android:name="android.intent.category.DEFAULT" />
95                <data android:mimeType="vnd.android-dir/mms-sms" />
96            </intent-filter>
97            <intent-filter>
98                <action android:name="android.intent.action.VIEW" />
99                <action android:name="android.intent.action.SENDTO" />
100                <category android:name="android.intent.category.DEFAULT" />
101                <category android:name="android.intent.category.BROWSABLE" />
102                <data android:scheme="sms" />
103                <data android:scheme="smsto" />
104            </intent-filter>
105            <intent-filter>
106                <action android:name="android.intent.action.VIEW" />
107                <action android:name="android.intent.action.SENDTO" />
108                <category android:name="android.intent.category.DEFAULT" />
109                <category android:name="android.intent.category.BROWSABLE" />
110                <data android:scheme="mms" />
111                <data android:scheme="mmsto" />
112            </intent-filter>
113           <intent-filter>
114               <action android:name="android.intent.action.SEND" />
115               <category android:name="android.intent.category.DEFAULT" />
116               <data android:mimeType="image/*" />
117           </intent-filter>
118           <intent-filter>
119               <action android:name="android.intent.action.SEND" />
120               <category android:name="android.intent.category.DEFAULT" />
121               <data android:mimeType="text/plain" />
122           </intent-filter>
123           <intent-filter>
124               <action android:name="android.intent.action.SEND_MULTIPLE" />
125               <category android:name="android.intent.category.DEFAULT" />
126               <data android:mimeType="image/*" />
127           </intent-filter>
128        </activity>
129
130        <activity-alias android:name=".ui.ForwardMessageActivity"
131                  android:targetActivity=".ui.ComposeMessageActivity"
132                  android:configChanges="orientation|screenSize|keyboardHidden"
133                  android:windowSoftInputMode="stateHidden"
134                  android:theme="@style/MmsHoloTheme" >
135        </activity-alias>
136
137        <activity android:name=".ui.ComposeMessageActivityNoLockScreen"
138                  android:configChanges="orientation|screenSize|keyboardHidden"
139                  android:windowSoftInputMode="stateHidden"
140                  android:theme="@style/MmsHoloTheme"
141                  android:exported="false"
142                  android:launchMode="singleTop" >
143        </activity>
144
145        <activity android:name=".ui.DeliveryReportActivity"
146            android:label="@string/delivery_report_activity"
147            android:theme="@android:style/Theme.Dialog">
148        </activity>
149
150        <activity android:name=".ui.WarnOfStorageLimitsActivity"
151                android:theme="@android:style/Theme.Dialog"
152                android:label="@string/storage_limits_activity"
153                android:excludeFromRecents="true">
154        </activity>
155
156        <activity android:name=".ui.EditSlideDurationActivity"
157            android:label="@string/change_duration_activity"
158            android:theme="@android:style/Theme.Dialog">
159        </activity>
160
161        <activity android:name=".ui.SlideshowEditActivity"
162            android:theme="@style/MmsHoloTheme"
163            android:label="@string/edit_slideshow_activity" />
164
165        <activity android:name=".ui.RecipientListActivity"
166            android:theme="@style/MmsHoloTheme"
167            android:label="@string/recipient_list_activity" />
168
169        <activity android:name=".ui.SlideEditorActivity"
170            android:windowSoftInputMode="adjustResize"
171            android:theme="@style/MmsHoloTheme"
172            android:label="@string/edit_slide_activity" />
173
174        <activity android:name=".ui.SlideshowActivity"
175            android:noHistory="true"
176            android:configChanges="orientation|screenSize|keyboardHidden"
177            android:theme="@style/MmsHoloTheme"
178            android:label="@string/slideshow_activity">
179        </activity>
180
181        <activity android:name=".ui.ClassZeroActivity"
182            android:label="@string/class_0_message_activity"
183            android:theme="@android:style/Theme.Translucent"
184            android:configChanges="orientation|screenSize|keyboardHidden"
185            android:launchMode="singleTask"
186            android:excludeFromRecents="true">
187        </activity>
188
189        <activity android:name=".ui.MessagingPreferenceActivity"
190            android:theme="@style/MmsHoloTheme"
191            android:configChanges="orientation|screenSize|keyboardHidden"
192            android:label="@string/preferences_title" />
193
194        <receiver android:name=".transaction.PushReceiver"
195            android:permission="android.permission.BROADCAST_WAP_PUSH">
196            <intent-filter>
197                <action android:name="android.provider.Telephony.WAP_PUSH_DELIVER" />
198                <data android:mimeType="application/vnd.wap.mms-message" />
199            </intent-filter>
200        </receiver>
201     <receiver android:name=".transaction.MmsPushOutboxMessages"
202            android:permission="android.permission.MMS_SEND_OUTBOX_MSG">
203            <intent-filter>
204                <action android:name="android.intent.action.MMS_SEND_OUTBOX_MSG" />
205            </intent-filter>
206        </receiver>
207        <receiver android:name=".transaction.MmsSystemEventReceiver">
208            <intent-filter>
209                <action android:name="android.intent.action.CONTENT_CHANGED" />
210            </intent-filter>
211            <intent-filter>
212                <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
213            </intent-filter>
214            <intent-filter>
215                <action android:name="android.intent.action.BOOT_COMPLETED" />
216            </intent-filter>
217        </receiver>
218
219        <activity android:name=".ui.ManageSimMessages"
220                  android:theme="@style/MmsHoloTheme"
221                  android:launchMode="singleTop"
222                  android:configChanges="orientation|screenSize|keyboardHidden"
223                  android:label="@string/sim_manage_messages_title">
224            <intent-filter>
225                <action android:name="android.intent.action.VIEW" />
226            </intent-filter>
227        </activity>
228
229        <!-- Require sender permissions to prevent SMS spoofing -->
230        <receiver android:name=".transaction.PrivilegedSmsReceiver"
231            android:permission="android.permission.BROADCAST_SMS">
232            <intent-filter>
233                <action android:name="android.provider.Telephony.SMS_DELIVER" />
234            </intent-filter>
235        </receiver>
236
237        <!-- Catch-all receiver for broadcasts that don't have associated security -->
238        <receiver android:name=".transaction.SmsReceiver">
239            <intent-filter>
240                <action android:name="android.intent.action.BOOT_COMPLETED" />
241            </intent-filter>
242            <intent-filter>
243                <action android:name="com.android.mms.transaction.MESSAGE_SENT" />
244                <!-- TODO Do a better data match here. -->
245                <data android:scheme="content" />
246            </intent-filter>
247            <intent-filter>
248                <action android:name="android.intent.action.SEND_MESSAGE" />
249            </intent-filter>
250        </receiver>
251
252        <receiver android:name=".transaction.MessageStatusReceiver">
253            <intent-filter>
254                <action android:name="com.android.mms.transaction.MessageStatusReceiver.MESSAGE_STATUS_RECEIVED" />
255            </intent-filter>
256        </receiver>
257
258        <service android:name=".transaction.MessageStatusService"/>
259
260        <receiver android:name=".transaction.SimFullReceiver">
261            <intent-filter>
262                <action android:name="android.provider.Telephony.SIM_FULL" />
263            </intent-filter>
264        </receiver>
265
266        <receiver android:name=".transaction.SmsRejectedReceiver">
267            <intent-filter>
268                <action android:name="android.provider.Telephony.SMS_REJECTED" />
269            </intent-filter>
270        </receiver>
271
272        <activity android:name=".ui.ConfirmRateLimitActivity"
273                  android:theme="@android:style/Theme.Dialog">
274            <intent-filter>
275                <action android:name="com.android.mms.RATE_LIMIT_SURPASSED" />
276                <category android:name="android.intent.category.DEFAULT" />
277            </intent-filter>
278        </activity>
279
280        <activity android:name=".ui.SearchActivity"
281            android:theme="@style/MmsHoloTheme"
282            android:label="@string/search"
283            android:configChanges="orientation|screenSize|keyboardHidden" >
284            <intent-filter>
285                <action android:name="android.intent.action.SEARCH" />
286                <category android:name="android.intent.category.DEFAULT" />
287            </intent-filter>
288            <meta-data android:name="android.app.searchable"
289                android:resource="@xml/searchable" />
290        </activity>
291
292        <meta-data android:name="android.app.default_searchable"
293            android:value=".ui.SearchActivity" />
294
295        <!-- Search Suggestions Provider -->
296        <provider android:name="SuggestionsProvider"
297            android:exported="true"
298            android:readPermission="android.permission.READ_SMS"
299            android:authorities="com.android.mms.SuggestionsProvider" >
300            <path-permission
301                    android:pathPrefix="/search_suggest_query"
302                    android:readPermission="android.permission.GLOBAL_SEARCH" />
303            <path-permission
304                    android:pathPrefix="/search_suggest_shortcut"
305                    android:readPermission="android.permission.GLOBAL_SEARCH" />
306        </provider>
307
308        <service android:name=".ui.NoConfirmationSendService"
309                 android:permission="android.permission.SEND_RESPOND_VIA_MESSAGE"
310                 android:exported="true" >
311            <intent-filter>
312                <action android:name="android.intent.action.RESPOND_VIA_MESSAGE" />
313                <category android:name="android.intent.category.DEFAULT" />
314                <data android:scheme="sms" />
315                <data android:scheme="smsto" />
316            </intent-filter>
317        </service>
318
319        <provider android:name="TempFileProvider"
320                  android:exported="true"
321                  android:authorities="mms_temp_file"
322                  android:multiprocess="true" />
323
324        <activity android:name=".ui.MiniPreferenceActivity" >
325            <intent-filter>
326                <action android:name="com.android.mms.intent.action.MESSAGING_APP_NOTIFICATIONS" />
327                <category android:name="android.intent.category.DEFAULT" />
328            </intent-filter>
329        </activity>
330        <receiver android:name=".ui.SmsStorageMonitor" >
331            <intent-filter>
332                <action android:name="android.intent.action.DEVICE_STORAGE_FULL" />
333                <action android:name="android.intent.action.DEVICE_STORAGE_NOT_FULL" />
334            </intent-filter>
335        </receiver>
336        <!-- Widget -->
337        <receiver android:name=".widget.MmsWidgetProvider"  android:label="@string/app_label">
338            <intent-filter>
339                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
340            </intent-filter>
341            <intent-filter>
342                <action android:name="com.android.mms.intent.action.ACTION_NOTIFY_DATASET_CHANGED" />
343            </intent-filter>
344            <meta-data android:name="android.appwidget.provider"
345                       android:resource="@xml/widget_info" />
346        </receiver>
347        <service android:name=".widget.MmsWidgetService"
348                 android:permission="android.permission.BIND_REMOTEVIEWS"
349                 android:exported="false" />
350    </application>
351</manifest>
352