summaryrefslogtreecommitdiff
path: root/AndroidManifest.xml
diff options
context:
space:
mode:
Diffstat (limited to 'AndroidManifest.xml')
-rw-r--r--AndroidManifest.xml157
1 files changed, 101 insertions, 56 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 5438926..b24137a 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -1,91 +1,136 @@
<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2017 The Android Open Source Project
+<!--
+ Copyright (C) 2020 The Android Open Source Project
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
+ http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
- package="com.android.car.messenger">
-
- <uses-sdk android:minSdkVersion="26" android:targetSdkVersion="29"/>
-
- <uses-permission android:name="android.permission.BLUETOOTH"/>
- <uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/>
- <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
- <uses-permission android:name="android.permission.READ_CONTACTS"/>
- <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
- <uses-permission android:name="android.permission.RECEIVE_SMS"/>
- <uses-permission android:name="android.permission.SEND_SMS"/>
- <uses-permission android:name="android.permission.READ_SMS"/>
- <uses-permission android:name="android.permission.WRITE_SMS"/>
- <uses-permission android:name="android.car.permission.ACCESS_CAR_PROJECTION_STATUS"/>
-
- <application android:label="@string/app_name">
- <service android:name=".MessengerService"
- android:permission="android.permission.SEND_RESPOND_VIA_MESSAGE"
- android:exported="true" >
+ package="com.android.car.messenger">
+
+ <application
+ android:name="com.android.car.messenger.impl.CarMessengerApp"
+ android:icon="@drawable/ic_launcher_icon"
+ android:label="@string/app_name"
+ android:screenOrientation="landscape"
+ android:supportsRtl="true"
+ android:theme="@style/Theme.CarUi.WithToolbar">
+
+ <activity
+ android:name=".core.ui.launcher.MessageLauncherActivity"
+ android:exported="true"
+ android:screenOrientation="landscape">
<intent-filter>
- <action android:name="android.intent.action.RESPOND_VIA_MESSAGE" />
+ <action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.LAUNCHER" />
+ </intent-filter>
+
+ <intent-filter>
+ <action android:name="android.intent.action.MAIN" />
+ <category android:name="android.intent.category.APP_MESSAGING" />
+ </intent-filter>
+ <intent-filter>
+ <action android:name="android.intent.action.VIEW" />
+ <action android:name="android.intent.action.SENDTO" />
+
<category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.BROWSABLE" />
+
<data android:scheme="sms" />
<data android:scheme="smsto" />
+ </intent-filter>
+ <intent-filter>
+ <action android:name="android.intent.action.VIEW" />
+ <action android:name="android.intent.action.SENDTO" />
+
+ <category android:name="android.intent.category.DEFAULT" />
+ <category android:name="android.intent.category.BROWSABLE" />
+
<data android:scheme="mms" />
<data android:scheme="mmsto" />
</intent-filter>
- </service>
+ <meta-data
+ android:name="distractionOptimized"
+ android:value="true" />
+ </activity>
<!-- BroadcastReceiver that listens for incoming SMS messages -->
- <receiver android:name=".SmsReceiver"
- android:exported="true"
- android:permission="android.permission.BROADCAST_SMS">
+ <receiver
+ android:name=".impl.receivers.MmsReceiver"
+ android:exported="false"
+ android:permission="android.permission.BROADCAST_WAP_PUSH">
<intent-filter>
- <action android:name="android.provider.Telephony.SMS_DELIVER" />
- <action android:name="android.provider.Telephony.SMS_RECEIVED" />
+ <action android:name="android.provider.Telephony.WAP_PUSH_DELIVER" />
+ <data android:mimeType="application/vnd.wap.mms-message" />
</intent-filter>
</receiver>
<!-- BroadcastReceiver that listens for incoming MMS messages -->
- <receiver android:name=".MmsReceiver"
- android:exported="true"
- android:permission="android.permission.BROADCAST_WAP_PUSH">
+ <receiver
+ android:name=".core.service.OnBootReceiver"
+ android:enabled="true"
+ android:exported="false"
+ android:permission="android.permission.RECEIVE_BOOT_COMPLETED">
<intent-filter>
- <action android:name="android.provider.Telephony.WAP_PUSH_DELIVER" />
- <data android:mimeType="application/vnd.wap.mms-message" />
+ <action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
- <activity android:name=".MessengerActivity" android:exported="true">
- <meta-data android:name="distractionOptimized" android:value="true"/>
+ <!-- BroadcastReceiver for car booting -->
+ <receiver
+ android:name=".impl.receivers.SmsReceiver"
+ android:exported="false"
+ android:permission="android.permission.BROADCAST_SMS">
<intent-filter>
- <action android:name="android.intent.action.MAIN"/>
- <category android:name="android.intent.category.APP_MESSAGING"/>
+ <action android:name="android.provider.Telephony.SMS_DELIVER" />
+ <action android:name="android.provider.Telephony.SMS_RECEIVED" />
</intent-filter>
+ </receiver>
+
+ <service
+ android:name=".core.service.MessengerService"
+ android:exported="false"
+ android:permission="android.permission.SEND_RESPOND_VIA_MESSAGE">
<intent-filter>
- <action android:name="android.intent.action.VIEW"/>
- <action android:name="android.intent.action.SENDTO" />
+ <action android:name="android.intent.action.RESPOND_VIA_MESSAGE" />
<category android:name="android.intent.category.DEFAULT" />
- <category android:name="android.intent.category.BROWSABLE" />
+
<data android:scheme="sms" />
<data android:scheme="smsto" />
- </intent-filter>
- <intent-filter>
- <action android:name="android.intent.action.VIEW" />
- <action android:name="android.intent.action.SENDTO" />
- <category android:name="android.intent.category.DEFAULT" />
- <category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="mms" />
<data android:scheme="mmsto" />
</intent-filter>
- </activity>
+ </service>
+
</application>
+
+ <uses-permission android:name="android.permission.SEND_SMS" />
+ <uses-permission android:name="android.permission.RECEIVE_SMS" />
+ <uses-permission android:name="android.permission.READ_CONTACTS" />
+ <uses-permission android:name="android.permission.READ_PHONE_STATE" />
+ <uses-permission android:name="android.permission.READ_SMS" />
+ <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
+ <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
+ <!-- Permissions required to know the current projection app status. -->
+ <uses-permission android:name="android.car.permission.ACCESS_CAR_PROJECTION_STATUS" />
+ <!-- Permissions required to retrieve the SubscriptionInfo#getIccId.
+ This maps to the bluetooth address and is necessary
+ for various functions such as Assistant device disambiguation,
+ checking the projection state and more etc.
+ -->
+ <uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
+
+ <uses-sdk
+ android:minSdkVersion="30"
+ android:targetSdkVersion="30" />
</manifest>