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:excludeFromRecents="true"> 185 </activity> 186 187 <activity android:name=".ui.MessagingPreferenceActivity" 188 android:theme="@style/MmsHoloTheme" 189 android:configChanges="orientation|screenSize|keyboardHidden" 190 android:label="@string/preferences_title" /> 191 192 <receiver android:name=".transaction.PushReceiver" 193 android:permission="android.permission.BROADCAST_WAP_PUSH"> 194 <intent-filter> 195 <action android:name="android.provider.Telephony.WAP_PUSH_DELIVER" /> 196 <data android:mimeType="application/vnd.wap.mms-message" /> 197 </intent-filter> 198 </receiver> 199 <receiver android:name=".transaction.MmsPushOutboxMessages" 200 android:permission="android.permission.MMS_SEND_OUTBOX_MSG"> 201 <intent-filter> 202 <action android:name="android.intent.action.MMS_SEND_OUTBOX_MSG" /> 203 </intent-filter> 204 </receiver> 205 <receiver android:name=".transaction.MmsSystemEventReceiver"> 206 <intent-filter> 207 <action android:name="android.intent.action.CONTENT_CHANGED" /> 208 </intent-filter> 209 <intent-filter> 210 <action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> 211 </intent-filter> 212 <intent-filter> 213 <action android:name="android.intent.action.BOOT_COMPLETED" /> 214 </intent-filter> 215 </receiver> 216 217 <activity android:name=".ui.ManageSimMessages" 218 android:theme="@style/MmsHoloTheme" 219 android:launchMode="singleTop" 220 android:configChanges="orientation|screenSize|keyboardHidden" 221 android:label="@string/sim_manage_messages_title"> 222 <intent-filter> 223 <action android:name="android.intent.action.VIEW" /> 224 </intent-filter> 225 </activity> 226 227 <!-- Require sender permissions to prevent SMS spoofing --> 228 <receiver android:name=".transaction.PrivilegedSmsReceiver" 229 android:permission="android.permission.BROADCAST_SMS"> 230 <intent-filter> 231 <action android:name="android.provider.Telephony.SMS_DELIVER" /> 232 </intent-filter> 233 </receiver> 234 235 <!-- Catch-all receiver for broadcasts that don't have associated security --> 236 <receiver android:name=".transaction.SmsReceiver"> 237 <intent-filter> 238 <action android:name="android.intent.action.BOOT_COMPLETED" /> 239 </intent-filter> 240 <intent-filter> 241 <action android:name="com.android.mms.transaction.MESSAGE_SENT" /> 242 <!-- TODO Do a better data match here. --> 243 <data android:scheme="content" /> 244 </intent-filter> 245 <intent-filter> 246 <action android:name="android.intent.action.SEND_MESSAGE" /> 247 </intent-filter> 248 </receiver> 249 250 <receiver android:name=".transaction.MessageStatusReceiver"> 251 <intent-filter> 252 <action android:name="com.android.mms.transaction.MessageStatusReceiver.MESSAGE_STATUS_RECEIVED" /> 253 </intent-filter> 254 </receiver> 255 256 <service android:name=".transaction.MessageStatusService"/> 257 258 <receiver android:name=".transaction.SimFullReceiver"> 259 <intent-filter> 260 <action android:name="android.provider.Telephony.SIM_FULL" /> 261 </intent-filter> 262 </receiver> 263 264 <receiver android:name=".transaction.SmsRejectedReceiver"> 265 <intent-filter> 266 <action android:name="android.provider.Telephony.SMS_REJECTED" /> 267 </intent-filter> 268 </receiver> 269 270 <activity android:name=".ui.ConfirmRateLimitActivity" 271 android:theme="@android:style/Theme.Dialog"> 272 <intent-filter> 273 <action android:name="com.android.mms.RATE_LIMIT_SURPASSED" /> 274 <category android:name="android.intent.category.DEFAULT" /> 275 </intent-filter> 276 </activity> 277 278 <activity android:name=".ui.SearchActivity" 279 android:theme="@style/MmsHoloTheme" 280 android:label="@string/search" 281 android:configChanges="orientation|screenSize|keyboardHidden" > 282 <intent-filter> 283 <action android:name="android.intent.action.SEARCH" /> 284 <category android:name="android.intent.category.DEFAULT" /> 285 </intent-filter> 286 <meta-data android:name="android.app.searchable" 287 android:resource="@xml/searchable" /> 288 </activity> 289 290 <meta-data android:name="android.app.default_searchable" 291 android:value=".ui.SearchActivity" /> 292 293 <!-- Search Suggestions Provider --> 294 <provider android:name="SuggestionsProvider" 295 android:exported="true" 296 android:readPermission="android.permission.READ_SMS" 297 android:authorities="com.android.mms.SuggestionsProvider" > 298 <path-permission 299 android:pathPrefix="/search_suggest_query" 300 android:readPermission="android.permission.GLOBAL_SEARCH" /> 301 <path-permission 302 android:pathPrefix="/search_suggest_shortcut" 303 android:readPermission="android.permission.GLOBAL_SEARCH" /> 304 </provider> 305 306 <service android:name=".ui.NoConfirmationSendService" 307 android:permission="android.permission.SEND_RESPOND_VIA_MESSAGE" 308 android:exported="true" > 309 <intent-filter> 310 <action android:name="android.intent.action.RESPOND_VIA_MESSAGE" /> 311 <category android:name="android.intent.category.DEFAULT" /> 312 <data android:scheme="sms" /> 313 <data android:scheme="smsto" /> 314 </intent-filter> 315 </service> 316 317 <provider android:name="TempFileProvider" 318 android:exported="true" 319 android:authorities="mms_temp_file" 320 android:multiprocess="true" /> 321 322 <activity android:name=".ui.MiniPreferenceActivity" > 323 <intent-filter> 324 <action android:name="com.android.mms.intent.action.MESSAGING_APP_NOTIFICATIONS" /> 325 <category android:name="android.intent.category.DEFAULT" /> 326 </intent-filter> 327 </activity> 328 <receiver android:name=".ui.SmsStorageMonitor" > 329 <intent-filter> 330 <action android:name="android.intent.action.DEVICE_STORAGE_FULL" /> 331 <action android:name="android.intent.action.DEVICE_STORAGE_NOT_FULL" /> 332 </intent-filter> 333 </receiver> 334 <!-- Widget --> 335 <receiver android:name=".widget.MmsWidgetProvider" android:label="@string/app_label"> 336 <intent-filter> 337 <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> 338 </intent-filter> 339 <intent-filter> 340 <action android:name="com.android.mms.intent.action.ACTION_NOTIFY_DATASET_CHANGED" /> 341 </intent-filter> 342 <meta-data android:name="android.appwidget.provider" 343 android:resource="@xml/widget_info" /> 344 </receiver> 345 <service android:name=".widget.MmsWidgetService" 346 android:permission="android.permission.BIND_REMOTEVIEWS" 347 android:exported="false" /> 348 </application> 349 </manifest> 350