Ben Gilad | 4937ff9 | 2013-12-12 12:05:37 -0800 | [diff] [blame] | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <!-- Copyright (C) 2007 The Android Open Source Project |
| 3 | |
| 4 | Licensed under the Apache License, Version 2.0 (the "License"); |
| 5 | you may not use this file except in compliance with the License. |
| 6 | You may obtain a copy of the License at |
| 7 | |
| 8 | http://www.apache.org/licenses/LICENSE-2.0 |
| 9 | |
| 10 | Unless required by applicable law or agreed to in writing, software |
| 11 | distributed under the License is distributed on an "AS IS" BASIS, |
| 12 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 13 | See the License for the specific language governing permissions and |
| 14 | limitations under the License. |
| 15 | --> |
| 16 | |
| 17 | <manifest xmlns:android="http://schemas.android.com/apk/res/android" |
| 18 | xmlns:androidprv="http://schemas.android.com/apk/prv/res/android" |
Santos Cordon | b64c150 | 2014-05-21 21:21:49 -0700 | [diff] [blame] | 19 | package="com.android.telecomm" |
| 20 | coreApp="true" |
| 21 | android:sharedUserId="android.uid.phone"> |
Santos Cordon | 3e3b541 | 2013-12-16 17:33:45 -0800 | [diff] [blame] | 22 | |
Ben Gilad | 4937ff9 | 2013-12-12 12:05:37 -0800 | [diff] [blame] | 23 | <!-- Prevents the activity manager from delaying any activity-start |
| 24 | requests by this package, including requests immediately after |
| 25 | the user presses "home". --> |
Santos Cordon | c7e85d4 | 2014-05-22 02:51:48 -0700 | [diff] [blame] | 26 | <uses-permission android:name="android.permission.BLUETOOTH" /> |
| 27 | <uses-permission android:name="android.permission.BLUETOOTH_ADMIN" /> |
Evan Charlton | 51bd35b | 2014-04-07 17:58:14 -0700 | [diff] [blame] | 28 | <uses-permission android:name="android.permission.CALL_PRIVILEGED" /> |
Yorke Lee | a38f329 | 2014-07-16 17:31:02 -0700 | [diff] [blame] | 29 | <uses-permission android:name="android.permission.MANAGE_USERS" /> |
Santos Cordon | c7e85d4 | 2014-05-22 02:51:48 -0700 | [diff] [blame] | 30 | <uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL" /> |
Evan Charlton | 198fde8 | 2014-04-07 10:53:11 -0700 | [diff] [blame] | 31 | <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> |
Santos Cordon | c7e85d4 | 2014-05-22 02:51:48 -0700 | [diff] [blame] | 32 | <uses-permission android:name="android.permission.READ_CALL_LOG" /> |
| 33 | <uses-permission android:name="android.permission.STOP_APP_SWITCHES" /> |
Evan Charlton | 198fde8 | 2014-04-07 10:53:11 -0700 | [diff] [blame] | 34 | <uses-permission android:name="android.permission.VIBRATE" /> |
Santos Cordon | c7e85d4 | 2014-05-22 02:51:48 -0700 | [diff] [blame] | 35 | <uses-permission android:name="android.permission.WRITE_CALL_LOG" /> |
Ihab Awad | c17294c | 2014-08-04 19:23:37 -0700 | [diff] [blame] | 36 | <!-- Protects the ability to register any PhoneAccount with a capability flags of either |
| 37 | PhoneAccount#CAPABILITY_CALL_PROVIDER or PhoneAccount#CAPABILITY_SIM_SUBSCRIPTION. --> |
| 38 | <permission |
| 39 | android:name="com.android.telecomm.permission.REGISTER_PROVIDER_OR_SUBSCRIPTION" |
| 40 | android:label="Register CALL_PROVIDER or SIM_SUBSCRIPTION PhoneAccount" |
| 41 | android:protectionLevel="signature"/> |
Sailesh Nepal | 1cecc7c | 2014-03-10 17:03:08 -0700 | [diff] [blame] | 42 | |
Evan Charlton | 0958f53 | 2014-01-10 16:58:02 -0800 | [diff] [blame] | 43 | <!-- Declare which SDK level this application was built against. This is needed so that IDEs |
| 44 | can check for incompatible APIs. --> |
| 45 | <uses-sdk android:minSdkVersion="19" /> |
| 46 | |
Santos Cordon | 049b7b6 | 2014-01-30 05:34:26 -0800 | [diff] [blame] | 47 | <application android:name="TelecommApp" |
Evan Charlton | 5c670a9 | 2014-03-06 14:58:20 -0800 | [diff] [blame] | 48 | android:persistent="true" |
Ben Gilad | 4937ff9 | 2013-12-12 12:05:37 -0800 | [diff] [blame] | 49 | android:label="@string/telecommAppLabel" |
| 50 | android:icon="@mipmap/ic_launcher_phone" |
Jay Shrauner | d5a71da | 2014-07-30 09:33:59 -0700 | [diff] [blame] | 51 | android:allowBackup="false" |
Ben Gilad | 4937ff9 | 2013-12-12 12:05:37 -0800 | [diff] [blame] | 52 | android:supportsRtl="true"> |
Santos Cordon | 10e6832 | 2013-12-12 16:06:56 -0800 | [diff] [blame] | 53 | |
| 54 | <!-- CALL vs CALL_PRIVILEGED vs CALL_EMERGENCY |
| 55 | We have three different intents through which a call can be initiated each with its |
| 56 | own behavior. |
| 57 | 1) CALL - Expected from any third party app with CALL_PHONE permission. Through this |
| 58 | intent, an app can call any number except emergency numbers. |
| 59 | 2) CALL_PRIVILEGED - Expected from the dialer app and requires CALL_PRIVILEGED |
| 60 | permission, which is only held by the system dialer and the emergency dialer at the |
| 61 | time of this writing. Through this intent, an app can call any number including |
| 62 | emergency numbers. |
| 63 | 3) CALL_EMERGENCY - Expected from the emergency dialer app and requires CALL_PRIVILEGED |
| 64 | permission. Through this intent, an app can call *only* emergency numbers. --> |
| 65 | |
| 66 | <!-- Activity that starts the outgoing call process by listening to CALL intent which |
| 67 | contain contact information in the intent's data. CallActivity handles any data |
| 68 | URL with the schemes "tel", "sip", and "voicemail". It also handles URLs linked to |
| 69 | contacts provider entries. Any data not fitting the schema described is ignored. --> |
| 70 | <activity android:name="CallActivity" |
| 71 | android:theme="@android:style/Theme.NoDisplay" |
| 72 | android:permission="android.permission.CALL_PHONE" |
| 73 | android:excludeFromRecents="true"> |
| 74 | <!-- CALL action intent filters for the various ways of initiating an outgoing call. --> |
| 75 | <intent-filter> |
| 76 | <action android:name="android.intent.action.CALL" /> |
| 77 | <category android:name="android.intent.category.DEFAULT" /> |
| 78 | <data android:scheme="tel" /> |
| 79 | </intent-filter> |
| 80 | <!-- Specify an icon for SIP calls so that quick contacts widget shows a special SIP |
| 81 | icon for calls to SIP addresses. --> |
| 82 | <intent-filter android:icon="@drawable/ic_launcher_sip_call"> |
| 83 | <action android:name="android.intent.action.CALL" /> |
| 84 | <category android:name="android.intent.category.DEFAULT" /> |
| 85 | <data android:scheme="sip" /> |
| 86 | </intent-filter> |
| 87 | <intent-filter> |
| 88 | <action android:name="android.intent.action.CALL" /> |
| 89 | <category android:name="android.intent.category.DEFAULT" /> |
| 90 | <data android:scheme="voicemail" /> |
| 91 | </intent-filter> |
| 92 | <!-- Omit default category below so that all Intents sent to this filter must be |
| 93 | explicit. --> |
| 94 | <intent-filter> |
| 95 | <action android:name="android.intent.action.CALL" /> |
| 96 | <data android:mimeType="vnd.android.cursor.item/phone" /> |
| 97 | <data android:mimeType="vnd.android.cursor.item/phone_v2" /> |
| 98 | <data android:mimeType="vnd.android.cursor.item/person" /> |
| 99 | </intent-filter> |
| 100 | </activity> |
| 101 | |
| 102 | <!-- Works like CallActivity with CALL_PRIVILEGED instead of CALL intent. |
| 103 | CALL_PRIVILEGED allows calls to emergency numbers unlike CALL which disallows it. |
| 104 | Intent-sender must have the CALL_PRIVILEGED permission or the broadcast will not be |
| 105 | processed. High priority of 1000 is used in all intent filters to prevent anything but |
| 106 | the system from processing this intent (b/8871505). --> |
| 107 | <activity-alias android:name="PrivilegedCallActivity" |
| 108 | android:targetActivity="CallActivity" |
| 109 | android:permission="android.permission.CALL_PRIVILEGED"> |
| 110 | <intent-filter android:priority="1000"> |
| 111 | <action android:name="android.intent.action.CALL_PRIVILEGED" /> |
| 112 | <category android:name="android.intent.category.DEFAULT" /> |
| 113 | <data android:scheme="tel" /> |
| 114 | </intent-filter> |
| 115 | <intent-filter android:priority="1000" |
| 116 | android:icon="@drawable/ic_launcher_sip_call"> |
| 117 | <action android:name="android.intent.action.CALL_PRIVILEGED" /> |
| 118 | <category android:name="android.intent.category.DEFAULT" /> |
| 119 | <data android:scheme="sip" /> |
| 120 | </intent-filter> |
| 121 | <intent-filter android:priority="1000"> |
| 122 | <action android:name="android.intent.action.CALL_PRIVILEGED" /> |
| 123 | <category android:name="android.intent.category.DEFAULT" /> |
| 124 | <data android:scheme="voicemail" /> |
| 125 | </intent-filter> |
| 126 | <intent-filter android:priority="1000"> |
| 127 | <action android:name="android.intent.action.CALL_PRIVILEGED" /> |
| 128 | <data android:mimeType="vnd.android.cursor.item/phone" /> |
| 129 | <data android:mimeType="vnd.android.cursor.item/phone_v2" /> |
| 130 | <data android:mimeType="vnd.android.cursor.item/person" /> |
| 131 | </intent-filter> |
| 132 | </activity-alias> |
| 133 | |
| 134 | <!-- Works like CallActivity with CALL_EMERGENCY instead of CALL intent. |
| 135 | CALL_EMERGENCY allows calls *only* to emergency numbers. Intent-sender must have the |
| 136 | CALL_PRIVILEGED permission or the broadcast will not be processed. High priority of |
| 137 | 1000 is used in all intent filters to prevent anything but the system from processing |
| 138 | this intent (b/8871505). --> |
Santos Cordon | df39986 | 2014-08-06 04:39:15 -0700 | [diff] [blame] | 139 | <!-- TODO: Is there really a notion of an emergency SIP number? If not, can |
Santos Cordon | 10e6832 | 2013-12-12 16:06:56 -0800 | [diff] [blame] | 140 | that scheme be removed from this activity? --> |
| 141 | <activity-alias android:name="EmergencyCallActivity" |
| 142 | android:targetActivity="CallActivity" |
| 143 | android:permission="android.permission.CALL_PRIVILEGED"> |
| 144 | <intent-filter android:priority="1000"> |
| 145 | <action android:name="android.intent.action.CALL_EMERGENCY" /> |
| 146 | <category android:name="android.intent.category.DEFAULT" /> |
| 147 | <data android:scheme="tel" /> |
| 148 | </intent-filter> |
| 149 | <intent-filter android:priority="1000" |
| 150 | android:icon="@drawable/ic_launcher_sip_call"> |
| 151 | <action android:name="android.intent.action.CALL_EMERGENCY" /> |
| 152 | <category android:name="android.intent.category.DEFAULT" /> |
| 153 | <data android:scheme="sip" /> |
| 154 | </intent-filter> |
| 155 | <intent-filter android:priority="1000"> |
| 156 | <action android:name="android.intent.action.CALL_EMERGENCY" /> |
| 157 | <category android:name="android.intent.category.DEFAULT" /> |
| 158 | <data android:scheme="voicemail" /> |
| 159 | </intent-filter> |
| 160 | <intent-filter android:priority="1000"> |
| 161 | <action android:name="android.intent.action.CALL_EMERGENCY" /> |
| 162 | <data android:mimeType="vnd.android.cursor.item/phone" /> |
| 163 | <data android:mimeType="vnd.android.cursor.item/phone_v2" /> |
| 164 | <data android:mimeType="vnd.android.cursor.item/person" /> |
| 165 | </intent-filter> |
| 166 | </activity-alias> |
| 167 | |
Santos Cordon | 523f605 | 2014-02-20 16:39:34 -0800 | [diff] [blame] | 168 | <activity-alias android:name="IncomingCallActivity" |
| 169 | android:targetActivity="CallActivity" |
| 170 | android:exported="true"> |
Santos Cordon | 3e3b541 | 2013-12-16 17:33:45 -0800 | [diff] [blame] | 171 | <intent-filter> |
Santos Cordon | 493e8f2 | 2014-02-19 03:15:12 -0800 | [diff] [blame] | 172 | <action android:name="android.intent.action.INCOMING_CALL" /> |
| 173 | <category android:name="android.intent.category.DEFAULT" /> |
Santos Cordon | 3e3b541 | 2013-12-16 17:33:45 -0800 | [diff] [blame] | 174 | </intent-filter> |
Santos Cordon | 523f605 | 2014-02-20 16:39:34 -0800 | [diff] [blame] | 175 | </activity-alias> |
| 176 | |
Santos Cordon | a0e5f1a | 2014-03-31 21:43:00 -0700 | [diff] [blame] | 177 | <receiver android:name="TelecommBroadcastReceiver" android:exported="false"> |
| 178 | <intent-filter> |
| 179 | <action android:name="com.android.telecomm.ACTION_CALL_BACK_FROM_NOTIFICATION" /> |
| 180 | <action android:name="com.android.telecomm.ACTION_CALL_BACK_FROM_NOTIFICATION" /> |
| 181 | <action android:name="com.android.telecomm.ACTION_SEND_SMS_FROM_NOTIFICATION" /> |
| 182 | </intent-filter> |
| 183 | </receiver> |
| 184 | |
Ihab Awad | ff7493a | 2014-06-10 13:47:44 -0700 | [diff] [blame] | 185 | <activity android:name=".RespondViaSmsSettings$Settings" |
| 186 | android:label="@string/respond_via_sms_setting_title" |
| 187 | android:configChanges="orientation|screenSize|keyboardHidden"> |
| 188 | <intent-filter> |
| 189 | <action android:name="android.intent.action.MAIN" /> |
| 190 | </intent-filter> |
| 191 | </activity> |
Ihab Awad | 104f806 | 2014-07-17 11:29:35 -0700 | [diff] [blame] | 192 | |
| 193 | <activity android:name=".PhoneAccountPreferencesActivity" |
Ihab Awad | 78ac0ce | 2014-07-18 13:32:53 -0700 | [diff] [blame] | 194 | android:label="@string/phone_account_preferences_title" |
| 195 | android:configChanges="orientation|screenSize|keyboardHidden"> |
Ihab Awad | 104f806 | 2014-07-17 11:29:35 -0700 | [diff] [blame] | 196 | android:exported="true" > |
| 197 | <intent-filter> |
| 198 | <action android:name="android.intent.action.MAIN" /> |
| 199 | </intent-filter> |
| 200 | </activity> |
| 201 | |
Ben Gilad | 4937ff9 | 2013-12-12 12:05:37 -0800 | [diff] [blame] | 202 | </application> |
| 203 | </manifest> |