1<?xml version="1.0" encoding="utf-8"?> 2<!-- 3 Copyright (C) 2020 The Android Open Source Project 4 5 Licensed under the Apache License, Version 2.0 (the "License"); 6 you may not use this file except in compliance with the License. 7 You may obtain a copy of the License at 8 9 http://www.apache.org/licenses/LICENSE-2.0 10 11 Unless required by applicable law or agreed to in writing, software 12 distributed under the License is distributed on an "AS IS" BASIS, 13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 See the License for the specific language governing permissions and 15 limitations under the License. 16 --> 17 18<manifest xmlns:android="http://schemas.android.com/apk/res/android" 19 package="com.android.car.messenger"> 20 21 <application 22 android:name="com.android.car.messenger.impl.CarMessengerApp" 23 android:icon="@drawable/ic_launcher_icon" 24 android:label="@string/app_name" 25 android:screenOrientation="landscape" 26 android:supportsRtl="true" 27 android:theme="@style/Theme.CarUi.WithToolbar"> 28 29 <activity 30 android:name=".core.ui.launcher.MessageLauncherActivity" 31 android:exported="true" 32 android:screenOrientation="landscape"> 33 <intent-filter> 34 <action android:name="android.intent.action.MAIN" /> 35 <category android:name="android.intent.category.LAUNCHER" /> 36 </intent-filter> 37 38 <intent-filter> 39 <action android:name="android.intent.action.MAIN" /> 40 <category android:name="android.intent.category.APP_MESSAGING" /> 41 </intent-filter> 42 <intent-filter> 43 <action android:name="android.intent.action.VIEW" /> 44 <action android:name="android.intent.action.SENDTO" /> 45 46 <category android:name="android.intent.category.DEFAULT" /> 47 <category android:name="android.intent.category.BROWSABLE" /> 48 49 <data android:scheme="sms" /> 50 <data android:scheme="smsto" /> 51 </intent-filter> 52 <intent-filter> 53 <action android:name="android.intent.action.VIEW" /> 54 <action android:name="android.intent.action.SENDTO" /> 55 56 <category android:name="android.intent.category.DEFAULT" /> 57 <category android:name="android.intent.category.BROWSABLE" /> 58 59 <data android:scheme="mms" /> 60 <data android:scheme="mmsto" /> 61 </intent-filter> 62 <meta-data 63 android:name="distractionOptimized" 64 android:value="true" /> 65 </activity> 66 67 <!-- BroadcastReceiver that listens for incoming SMS messages --> 68 <receiver 69 android:name=".impl.receivers.MmsReceiver" 70 android:exported="false" 71 android:permission="android.permission.BROADCAST_WAP_PUSH"> 72 <intent-filter> 73 <action android:name="android.provider.Telephony.WAP_PUSH_DELIVER" /> 74 <data android:mimeType="application/vnd.wap.mms-message" /> 75 </intent-filter> 76 </receiver> 77 78 <!-- BroadcastReceiver that listens for incoming MMS messages --> 79 <receiver 80 android:name=".core.service.OnBootReceiver" 81 android:enabled="true" 82 android:exported="false" 83 android:permission="android.permission.RECEIVE_BOOT_COMPLETED"> 84 <intent-filter> 85 <action android:name="android.intent.action.BOOT_COMPLETED" /> 86 </intent-filter> 87 </receiver> 88 89 <!-- BroadcastReceiver for car booting --> 90 <receiver 91 android:name=".impl.receivers.SmsReceiver" 92 android:exported="false" 93 android:permission="android.permission.BROADCAST_SMS"> 94 <intent-filter> 95 <action android:name="android.provider.Telephony.SMS_DELIVER" /> 96 <action android:name="android.provider.Telephony.SMS_RECEIVED" /> 97 </intent-filter> 98 </receiver> 99 100 <service 101 android:name=".core.service.MessengerService" 102 android:exported="false" 103 android:permission="android.permission.SEND_RESPOND_VIA_MESSAGE"> 104 <intent-filter> 105 <action android:name="android.intent.action.RESPOND_VIA_MESSAGE" /> 106 <category android:name="android.intent.category.DEFAULT" /> 107 108 <data android:scheme="sms" /> 109 <data android:scheme="smsto" /> 110 <data android:scheme="mms" /> 111 <data android:scheme="mmsto" /> 112 </intent-filter> 113 </service> 114 115 </application> 116 117 <uses-permission android:name="android.permission.SEND_SMS" /> 118 <uses-permission android:name="android.permission.RECEIVE_SMS" /> 119 <uses-permission android:name="android.permission.READ_CONTACTS" /> 120 <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 121 <uses-permission android:name="android.permission.READ_SMS" /> 122 <uses-permission android:name="android.permission.FOREGROUND_SERVICE" /> 123 <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 124 <!-- Permissions required to know the current projection app status. --> 125 <uses-permission android:name="android.car.permission.ACCESS_CAR_PROJECTION_STATUS" /> 126 <!-- Permissions required to retrieve the SubscriptionInfo#getIccId. 127 This maps to the bluetooth address and is necessary 128 for various functions such as Assistant device disambiguation, 129 checking the projection state and more etc. 130 --> 131 <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" /> 132 133 <uses-sdk 134 android:minSdkVersion="30" 135 android:targetSdkVersion="30" /> 136</manifest> 137