• 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
45    <application android:name="MmsApp"
46            android:label="@string/app_label"
47            android:icon="@mipmap/ic_launcher_smsmms"
48            android:taskAffinity="android.task.mms"
49            android:allowTaskReparenting="true">
50
51        <service android:name=".transaction.TransactionService"
52                 android:exported="false" />
53
54        <service android:name=".transaction.SmsReceiverService"
55                 android:exported="false" />
56
57        <activity android:name=".ui.ConversationList"
58                  android:label="@string/app_label"
59                  android:configChanges="orientation|screenSize|keyboardHidden"
60                  android:theme="@style/MmsHoloTheme"
61                  android:uiOptions="splitActionBarWhenNarrow"
62                  android:launchMode="singleTop">
63            <intent-filter>
64                <action android:name="android.intent.action.MAIN" />
65                <category android:name="android.intent.category.LAUNCHER" />
66                <category android:name="android.intent.category.DEFAULT" />
67                <category android:name="android.intent.category.APP_MESSAGING" />
68            </intent-filter>
69            <intent-filter>
70                <action android:name="android.intent.action.MAIN" />
71                <category android:name="android.intent.category.DEFAULT" />
72                <data android:mimeType="vnd.android.cursor.dir/mms" />
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-dir/mms-sms" />
78            </intent-filter>
79        </activity>
80
81        <activity android:name=".ui.ComposeMessageActivity"
82                  android:configChanges="orientation|screenSize|keyboardHidden"
83                  android:windowSoftInputMode="stateHidden|adjustResize"
84                  android:theme="@style/MmsHoloTheme"
85                  android:parentActivityName=".ui.ConversationList"
86                  android:launchMode="singleTop" >
87            <intent-filter>
88                <action android:name="android.intent.action.VIEW" />
89                <category android:name="android.intent.category.DEFAULT" />
90                <data android:mimeType="vnd.android-dir/mms-sms" />
91            </intent-filter>
92            <intent-filter>
93                <action android:name="android.intent.action.VIEW" />
94                <action android:name="android.intent.action.SENDTO" />
95                <category android:name="android.intent.category.DEFAULT" />
96                <category android:name="android.intent.category.BROWSABLE" />
97                <data android:scheme="sms" />
98                <data android:scheme="smsto" />
99            </intent-filter>
100            <intent-filter>
101                <action android:name="android.intent.action.VIEW" />
102                <action android:name="android.intent.action.SENDTO" />
103                <category android:name="android.intent.category.DEFAULT" />
104                <category android:name="android.intent.category.BROWSABLE" />
105                <data android:scheme="mms" />
106                <data android:scheme="mmsto" />
107            </intent-filter>
108           <intent-filter>
109               <action android:name="android.intent.action.SEND" />
110               <category android:name="android.intent.category.DEFAULT" />
111               <data android:mimeType="image/*" />
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="text/plain" />
117           </intent-filter>
118           <intent-filter>
119               <action android:name="android.intent.action.SEND_MULTIPLE" />
120               <category android:name="android.intent.category.DEFAULT" />
121               <data android:mimeType="image/*" />
122           </intent-filter>
123        </activity>
124
125        <activity-alias android:name=".ui.ForwardMessageActivity"
126                  android:targetActivity=".ui.ComposeMessageActivity"
127                  android:configChanges="orientation|screenSize|keyboardHidden"
128                  android:windowSoftInputMode="stateHidden"
129                  android:theme="@style/MmsHoloTheme" >
130        </activity-alias>
131
132        <activity android:name=".ui.ComposeMessageActivityNoLockScreen"
133                  android:configChanges="orientation|screenSize|keyboardHidden"
134                  android:windowSoftInputMode="stateHidden"
135                  android:theme="@style/MmsHoloTheme"
136                  android:exported="false"
137                  android:launchMode="singleTop" >
138        </activity>
139
140        <activity android:name=".ui.DeliveryReportActivity"
141            android:label="@string/delivery_report_activity"
142            android:theme="@android:style/Theme.Dialog">
143        </activity>
144
145        <activity android:name=".ui.WarnOfStorageLimitsActivity"
146                android:theme="@android:style/Theme.Dialog"
147                android:label="@string/storage_limits_activity"
148                android:excludeFromRecents="true">
149        </activity>
150
151        <activity android:name=".ui.EditSlideDurationActivity"
152            android:label="@string/change_duration_activity"
153            android:theme="@android:style/Theme.Dialog">
154        </activity>
155
156        <activity android:name=".ui.SlideshowEditActivity"
157            android:theme="@style/MmsHoloTheme"
158            android:label="@string/edit_slideshow_activity" />
159
160        <activity android:name=".ui.RecipientListActivity"
161            android:theme="@style/MmsHoloTheme"
162            android:label="@string/recipient_list_activity" />
163
164        <activity android:name=".ui.SlideEditorActivity"
165            android:windowSoftInputMode="adjustResize"
166            android:theme="@style/MmsHoloTheme"
167            android:label="@string/edit_slide_activity" />
168
169        <activity android:name=".ui.SlideshowActivity"
170            android:noHistory="true"
171            android:configChanges="orientation|screenSize|keyboardHidden"
172            android:theme="@style/MmsHoloTheme"
173            android:label="@string/slideshow_activity">
174        </activity>
175
176        <activity android:name=".ui.ClassZeroActivity"
177            android:label="@string/class_0_message_activity"
178            android:theme="@android:style/Theme.Translucent"
179            android:excludeFromRecents="true">
180        </activity>
181
182        <activity android:name=".ui.MessagingPreferenceActivity"
183            android:theme="@style/MmsHoloTheme"
184            android:configChanges="orientation|screenSize|keyboardHidden"
185            android:label="@string/preferences_title" />
186
187        <receiver android:name=".transaction.PushReceiver"
188            android:permission="android.permission.BROADCAST_WAP_PUSH">
189            <intent-filter>
190                <action android:name="android.provider.Telephony.WAP_PUSH_RECEIVED" />
191                <data android:mimeType="application/vnd.wap.mms-message" />
192            </intent-filter>
193        </receiver>
194
195        <receiver android:name=".transaction.MmsSystemEventReceiver">
196            <intent-filter>
197                <action android:name="android.intent.action.CONTENT_CHANGED" />
198            </intent-filter>
199            <intent-filter>
200                <action android:name="android.intent.action.BOOT_COMPLETED" />
201            </intent-filter>
202        </receiver>
203
204        <activity android:name=".ui.ManageSimMessages"
205                  android:theme="@style/MmsHoloTheme"
206                  android:launchMode="singleTop"
207                  android:configChanges="orientation|screenSize|keyboardHidden"
208                  android:label="@string/sim_manage_messages_title">
209            <intent-filter>
210                <action android:name="android.intent.action.VIEW" />
211            </intent-filter>
212        </activity>
213
214        <!-- Require sender permissions to prevent SMS spoofing -->
215        <receiver android:name=".transaction.PrivilegedSmsReceiver"
216            android:permission="android.permission.BROADCAST_SMS">
217            <intent-filter>
218                <action android:name="android.provider.Telephony.SMS_RECEIVED" />
219            </intent-filter>
220        </receiver>
221
222        <!-- Catch-all receiver for broadcasts that don't have associated security -->
223        <receiver android:name=".transaction.SmsReceiver">
224            <intent-filter>
225                <action android:name="android.intent.action.BOOT_COMPLETED" />
226            </intent-filter>
227            <intent-filter>
228                <action android:name="com.android.mms.transaction.MESSAGE_SENT" />
229                <!-- TODO Do a better data match here. -->
230                <data android:scheme="content" />
231            </intent-filter>
232            <intent-filter>
233                <action android:name="android.intent.action.SEND_MESSAGE" />
234            </intent-filter>
235        </receiver>
236
237        <receiver android:name=".transaction.MessageStatusReceiver">
238            <intent-filter>
239                <action android:name="com.android.mms.transaction.MessageStatusReceiver.MESSAGE_STATUS_RECEIVED" />
240            </intent-filter>
241        </receiver>
242
243        <service android:name=".transaction.MessageStatusService"/>
244
245        <receiver android:name=".transaction.SimFullReceiver">
246            <intent-filter>
247                <action android:name="android.provider.Telephony.SIM_FULL" />
248            </intent-filter>
249        </receiver>
250
251        <receiver android:name=".transaction.SmsRejectedReceiver">
252            <intent-filter>
253                <action android:name="android.provider.Telephony.SMS_REJECTED" />
254            </intent-filter>
255        </receiver>
256
257        <activity android:name=".ui.ConfirmRateLimitActivity"
258                  android:theme="@android:style/Theme.Dialog">
259            <intent-filter>
260                <action android:name="com.android.mms.RATE_LIMIT_SURPASSED" />
261                <category android:name="android.intent.category.DEFAULT" />
262            </intent-filter>
263        </activity>
264
265        <activity android:name=".ui.SearchActivity"
266            android:theme="@style/MmsHoloTheme"
267            android:label="@string/search"
268            android:configChanges="orientation|screenSize|keyboardHidden" >
269            <intent-filter>
270                <action android:name="android.intent.action.SEARCH" />
271                <category android:name="android.intent.category.DEFAULT" />
272            </intent-filter>
273            <meta-data android:name="android.app.searchable"
274                android:resource="@xml/searchable" />
275        </activity>
276
277        <meta-data android:name="android.app.default_searchable"
278            android:value=".ui.SearchActivity" />
279
280        <!-- Search Suggestions Provider -->
281        <provider android:name="SuggestionsProvider"
282            android:exported="true"
283            android:readPermission="android.permission.READ_SMS"
284            android:authorities="com.android.mms.SuggestionsProvider" >
285            <path-permission
286                    android:pathPrefix="/search_suggest_query"
287                    android:readPermission="android.permission.GLOBAL_SEARCH" />
288            <path-permission
289                    android:pathPrefix="/search_suggest_shortcut"
290                    android:readPermission="android.permission.GLOBAL_SEARCH" />
291        </provider>
292
293        <service android:name=".ui.NoConfirmationSendService"
294                 android:permission="android.permission.SEND_SMS_NO_CONFIRMATION"
295                 android:exported="true" >
296            <intent-filter>
297                <action android:name="com.android.mms.intent.action.SENDTO_NO_CONFIRMATION" />
298                <category android:name="android.intent.category.DEFAULT" />
299                <data android:scheme="sms" />
300                <data android:scheme="smsto" />
301            </intent-filter>
302        </service>
303
304        <provider android:name="TempFileProvider"
305                  android:exported="true"
306                  android:authorities="mms_temp_file"
307                  android:multiprocess="true" />
308
309        <activity android:name=".ui.MiniPreferenceActivity" >
310            <intent-filter>
311                <action android:name="com.android.mms.intent.action.MESSAGING_APP_NOTIFICATIONS" />
312                <category android:name="android.intent.category.DEFAULT" />
313            </intent-filter>
314        </activity>
315
316        <!-- Widget -->
317        <receiver android:name=".widget.MmsWidgetProvider"  android:label="@string/app_label">
318            <intent-filter>
319                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
320            </intent-filter>
321            <intent-filter>
322                <action android:name="com.android.mms.intent.action.ACTION_NOTIFY_DATASET_CHANGED" />
323            </intent-filter>
324            <meta-data android:name="android.appwidget.provider"
325                       android:resource="@xml/widget_info" />
326        </receiver>
327        <service android:name=".widget.MmsWidgetService"
328                 android:permission="android.permission.BIND_REMOTEVIEWS"
329                 android:exported="false" />
330
331
332    </application>
333</manifest>
334