Home | History | Annotate | Download | only in Dialer
      1 <?xml version="1.0" encoding="utf-8"?>
      2 <!-- Copyright (C) 2006 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     package="com.android.dialer"
     19     coreApp="true"
     20     android:versionCode="30000"
     21     android:versionName="3.00.00">
     22 
     23     <uses-sdk
     24         android:minSdkVersion="23"
     25         android:targetSdkVersion="23" />
     26 
     27     <uses-permission android:name="android.permission.CALL_PHONE" />
     28     <uses-permission android:name="android.permission.READ_CONTACTS" />
     29     <uses-permission android:name="android.permission.WRITE_CONTACTS" />
     30     <uses-permission android:name="android.permission.READ_CALL_LOG" />
     31     <uses-permission android:name="android.permission.WRITE_CALL_LOG" />
     32     <uses-permission android:name="android.permission.READ_PROFILE" />
     33     <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
     34     <uses-permission android:name="android.permission.GET_ACCOUNTS" />
     35     <uses-permission android:name="android.permission.GET_ACCOUNTS_PRIVILEGED"/>
     36     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
     37     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
     38     <uses-permission android:name="android.permission.INTERNET" />
     39     <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
     40     <uses-permission android:name="android.permission.NFC" />
     41     <uses-permission android:name="android.permission.READ_PHONE_STATE" />
     42     <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
     43     <uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
     44     <uses-permission android:name="android.permission.WAKE_LOCK" />
     45     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
     46     <uses-permission android:name="android.permission.WRITE_SETTINGS" />
     47     <uses-permission android:name="android.permission.USE_CREDENTIALS" />
     48     <uses-permission android:name="android.permission.VIBRATE" />
     49     <uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
     50     <uses-permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE" />
     51     <uses-permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL" />
     52     <uses-permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL" />
     53     <uses-permission android:name="com.android.voicemail.permission.READ_VOICEMAIL" />
     54     <uses-permission android:name="android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK" />
     55     <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
     56     <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
     57     <uses-permission android:name="android.permission.BROADCAST_STICKY" />
     58     <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
     59     <!-- This tells the activity manager to not delay any of our activity
     60      start requests, even if they happen immediately after the user
     61      presses home. -->
     62     <uses-permission android:name="android.permission.STOP_APP_SWITCHES" />
     63 
     64     <application
     65         android:name="DialerApplication"
     66         android:label="@string/applicationLabel"
     67         android:icon="@mipmap/ic_launcher_phone"
     68         android:hardwareAccelerated="true"
     69         android:supportsRtl="true"
     70         android:backupAgent='com.android.dialer.DialerBackupAgent'
     71         android:usesCleartextTraffic="false">
     72 
     73         <meta-data android:name="com.google.android.backup.api_key"
     74             android:value="AEdPqrEAAAAIBXgtCEKQ6W0PXVnW-ZVia2KmlV2AxsTw3GjAeQ" />
     75 
     76         <!-- The entrance point for Phone UI.
     77              stateAlwaysHidden is set to suppress keyboard show up on
     78              dialpad screen. -->
     79         <activity android:name=".DialtactsActivity"
     80             android:label="@string/launcherActivityLabel"
     81             android:theme="@style/DialtactsActivityTheme"
     82             android:launchMode="singleTask"
     83             android:clearTaskOnLaunch="true"
     84             android:icon="@mipmap/ic_launcher_phone"
     85             android:windowSoftInputMode="stateAlwaysHidden|adjustNothing"
     86             android:resizeableActivity="true"
     87             android:directBootAware="true">
     88             <intent-filter>
     89                 <action android:name="android.intent.action.DIAL" />
     90                 <category android:name="android.intent.category.DEFAULT" />
     91                 <category android:name="android.intent.category.BROWSABLE" />
     92                 <data android:mimeType="vnd.android.cursor.item/phone" />
     93                 <data android:mimeType="vnd.android.cursor.item/person" />
     94             </intent-filter>
     95             <intent-filter>
     96                 <action android:name="android.intent.action.DIAL" />
     97                 <category android:name="android.intent.category.DEFAULT" />
     98                 <category android:name="android.intent.category.BROWSABLE" />
     99                 <data android:scheme="voicemail" />
    100             </intent-filter>
    101             <intent-filter>
    102                 <action android:name="android.intent.action.DIAL" />
    103                 <category android:name="android.intent.category.DEFAULT" />
    104             </intent-filter>
    105             <intent-filter>
    106                 <action android:name="android.intent.action.MAIN" />
    107                 <category android:name="android.intent.category.DEFAULT" />
    108                 <category android:name="android.intent.category.LAUNCHER" />
    109                 <category android:name="android.intent.category.BROWSABLE" />
    110             </intent-filter>
    111             <intent-filter>
    112                 <action android:name="android.intent.action.VIEW" />
    113                 <action android:name="android.intent.action.DIAL" />
    114                 <category android:name="android.intent.category.DEFAULT" />
    115                 <category android:name="android.intent.category.BROWSABLE" />
    116                 <data android:scheme="tel" />
    117             </intent-filter>
    118             <intent-filter>
    119                 <action android:name="android.intent.action.VIEW" />
    120                 <category android:name="android.intent.category.DEFAULT" />
    121                 <category android:name="android.intent.category.BROWSABLE" />
    122                 <data android:mimeType="vnd.android.cursor.dir/calls" />
    123             </intent-filter>
    124             <intent-filter>
    125                 <action android:name="android.intent.action.CALL_BUTTON" />
    126                 <category android:name="android.intent.category.DEFAULT" />
    127                 <category android:name="android.intent.category.BROWSABLE" />
    128             </intent-filter>
    129             <!-- This was never intended to be public, but is here for backward
    130                  compatibility.  Use Intent.ACTION_DIAL instead. -->
    131             <intent-filter>
    132                 <action android:name="com.android.phone.action.TOUCH_DIALER" />
    133                 <category android:name="android.intent.category.DEFAULT" />
    134                 <category android:name="android.intent.category.TAB" />
    135             </intent-filter>
    136             <intent-filter android:label="@string/callHistoryIconLabel">
    137                 <action android:name="com.android.phone.action.RECENT_CALLS" />
    138                 <category android:name="android.intent.category.DEFAULT" />
    139                 <category android:name="android.intent.category.TAB" />
    140             </intent-filter>
    141             <meta-data
    142                 android:name="com.android.keyguard.layout"
    143                 android:resource="@layout/keyguard_preview" />
    144         </activity>
    145 
    146         <activity android:name="com.android.dialer.settings.DialerSettingsActivity"
    147               android:label="@string/dialer_settings_label"
    148               android:parentActivityName="com.android.dialer.DialtactsActivity"
    149               android:theme="@style/SettingsStyle"
    150               android:exported="false">
    151         </activity>
    152 
    153         <activity android:name="com.android.dialer.filterednumber.BlockedNumbersSettingsActivity"
    154             android:label="@string/manage_blocked_numbers_label"
    155             android:parentActivityName="com.android.dialer.settings.DialerSettingsActivity"
    156             android:theme="@style/ManageBlockedNumbersStyle"
    157             android:exported="false">
    158         </activity>
    159 
    160         <activity android:name="com.android.dialer.voicemail.VoicemailArchiveActivity"
    161             android:label="@string/voicemail_archive_activity_title"
    162             android:theme="@style/DialtactsThemeWithoutActionBarOverlay">
    163         </activity>
    164 
    165         <activity android:name="com.android.dialer.calllog.CallLogActivity"
    166             android:label="@string/call_log_activity_title"
    167             android:theme="@style/DialtactsThemeWithoutActionBarOverlay"
    168             android:icon="@mipmap/ic_launcher_phone">
    169         </activity>
    170 
    171         <activity android:name="com.android.dialer.CallDetailActivity"
    172             android:label="@string/callDetailTitle"
    173             android:theme="@style/CallDetailActivityTheme"
    174             android:parentActivityName="com.android.dialer.calllog.CallLogActivity"
    175             android:icon="@mipmap/ic_launcher_phone">
    176             <intent-filter>
    177                 <action android:name="android.intent.action.VIEW"/>
    178                 <category android:name="android.intent.category.DEFAULT"/>
    179                 <data android:mimeType="vnd.android.cursor.item/calls"/>
    180             </intent-filter>
    181         </activity>
    182 
    183         <activity android:name="com.android.contacts.common.test.FragmentTestActivity">
    184             <intent-filter>
    185                 <category android:name="android.intent.category.TEST"/>
    186             </intent-filter>
    187         </activity>
    188 
    189         <activity android:name="com.android.contacts.common.dialog.CallSubjectDialog"
    190                   android:theme="@style/Theme.CallSubjectDialogTheme"
    191                   android:windowSoftInputMode="stateVisible|adjustResize">
    192             <intent-filter>
    193                 <action android:name="android.intent.action.VIEW"/>
    194             </intent-filter>
    195         </activity>
    196 
    197         <!-- Backwards compatibility: "Phone" from Gingerbread and earlier -->
    198         <activity-alias android:name="DialtactsActivity"
    199             android:targetActivity=".DialtactsActivity"
    200             android:exported="true"
    201         />
    202 
    203         <!-- Backwards compatibility: "Call log" from Gingerbread and earlier -->
    204         <activity-alias android:name="RecentCallsListActivity"
    205             android:targetActivity=".DialtactsActivity"
    206             android:exported="true"
    207         />
    208 
    209         <!-- Backwards compatibility: "Call log" from ICS -->
    210         <activity-alias android:name=".activities.CallLogActivity"
    211             android:targetActivity=".DialtactsActivity"
    212             android:exported="true"
    213         />
    214 
    215         <!-- Used to filter contacts list by account -->
    216         <activity
    217             android:name="com.android.contacts.common.list.AccountFilterActivity"
    218             android:label="@string/activity_title_contacts_filter"
    219             android:theme="@style/ContactListFilterTheme"/>
    220 
    221         <!-- Used to select display and sync groups -->
    222         <activity
    223             android:name="com.android.contacts.common.list.CustomContactListFilterActivity"
    224             android:label="@string/custom_list_filter"
    225             android:theme="@style/ContactListFilterTheme"/>
    226 
    227         <activity
    228             android:name="com.android.contacts.common.activity.RequestImportVCardPermissionsActivity"
    229             android:label="@string/launcherActivityLabel"
    230             android:theme="@style/BackgroundOnlyTheme"
    231             android:exported="false"/>
    232 
    233         <!-- vCard related -->
    234         <activity android:name="com.android.contacts.common.vcard.ImportVCardActivity"
    235                   android:configChanges="orientation|screenSize|keyboardHidden"
    236                   android:theme="@style/BackgroundOnlyTheme">
    237         </activity>
    238 
    239         <activity android:name="com.android.contacts.common.vcard.NfcImportVCardActivity"
    240                   android:configChanges="orientation|screenSize|keyboardHidden"
    241                   android:theme="@style/BackgroundOnlyTheme">
    242         </activity>
    243 
    244         <activity android:name="com.android.contacts.common.vcard.CancelActivity"
    245                   android:theme="@style/BackgroundOnlyTheme"/>
    246 
    247         <activity android:name="com.android.contacts.common.vcard.SelectAccountActivity"
    248                   android:theme="@style/BackgroundOnlyTheme"/>
    249 
    250         <activity android:name="com.android.contacts.common.vcard.ExportVCardActivity"
    251                   android:theme="@style/BackgroundOnlyTheme"/>
    252 
    253         <activity android:name="com.android.contacts.common.vcard.ShareVCardActivity"
    254                   android:theme="@style/BackgroundOnlyTheme" />
    255 
    256         <service
    257             android:name="com.android.contacts.common.vcard.VCardService"
    258             android:exported="false"/>
    259         <!-- end vCard related -->
    260 
    261         <receiver android:name=".calllog.CallLogReceiver">
    262             <intent-filter>
    263                 <action android:name="android.intent.action.NEW_VOICEMAIL" />
    264                 <data
    265                     android:scheme="content"
    266                     android:host="com.android.voicemail"
    267                     android:mimeType="vnd.android.cursor.item/voicemail"
    268                 />
    269             </intent-filter>
    270             <intent-filter android:priority="100">
    271                  <action android:name="android.intent.action.BOOT_COMPLETED"/>
    272             </intent-filter>
    273         </receiver>
    274 
    275         <receiver android:name=".interactions.UndemoteOutgoingCallReceiver">
    276             <intent-filter>
    277                 <action android:name="android.intent.action.NEW_OUTGOING_CALL" />
    278             </intent-filter>
    279         </receiver>
    280 
    281         <service
    282             android:name=".calllog.CallLogNotificationsService"
    283             android:directBootAware="true"
    284             android:exported="false"
    285         />
    286 
    287         <receiver android:name=".calllog.MissedCallNotificationReceiver"
    288             android:directBootAware="true">
    289             <intent-filter>
    290                 <action android:name="android.telecom.action.SHOW_MISSED_CALLS_NOTIFICATION" />
    291             </intent-filter>
    292         </receiver>
    293 
    294         <!-- Service to update a contact -->
    295         <service
    296             android:name=".contact.ContactUpdateService"
    297             android:exported="false" />
    298 
    299         <!-- Broadcast receiver that passively listens to location updates -->
    300         <receiver android:name="com.android.contacts.common.location.CountryDetector$LocationChangedReceiver"/>
    301 
    302         <!-- IntentService to update the user's current country -->
    303         <service android:name="com.android.contacts.common.location.UpdateCountryService"
    304             android:exported="false"/>
    305 
    306         <!-- Main in-call UI activity.  This is never launched directly
    307              from outside the phone app; instead, it's either launched by
    308              the OutgoingCallBroadcaster (for outgoing calls), or as the
    309              fullScreenIntent of a notification (for incoming calls.) -->
    310         <activity android:name="com.android.incallui.InCallActivity"
    311                   android:theme="@style/Theme.InCallScreen"
    312                   android:label="@string/phoneAppLabel"
    313                   android:excludeFromRecents="true"
    314                   android:launchMode="singleInstance"
    315                   android:configChanges="screenSize|smallestScreenSize|screenLayout|orientation|keyboardHidden"
    316                   android:exported="false"
    317                   android:screenOrientation="nosensor"
    318                   android:directBootAware="true"
    319                   android:resizeableActivity="true">
    320         </activity>
    321 
    322         <service android:name="com.android.incallui.InCallServiceImpl"
    323                  android:permission="android.permission.BIND_INCALL_SERVICE"
    324                  android:directBootAware="true" >
    325             <meta-data android:name="android.telecom.IN_CALL_SERVICE_UI" android:value="true" />
    326             <meta-data android:name="android.telecom.IN_CALL_SERVICE_RINGING"
    327                 android:value="false"/>
    328             <meta-data android:name="android.telecom.INCLUDE_EXTERNAL_CALLS"
    329                        android:value="true"/>
    330             <intent-filter>
    331                 <action android:name="android.telecom.InCallService"/>
    332             </intent-filter>
    333         </service>
    334 
    335         <!-- BroadcastReceiver for receiving Intents from Notification mechanism. -->
    336         <receiver android:name="com.android.incallui.NotificationBroadcastReceiver"
    337             android:directBootAware="true"
    338             android:exported="false" />
    339 
    340         <provider
    341             android:name=".database.FilteredNumberProvider"
    342             android:authorities="com.android.dialer.database.filterednumberprovider"
    343             android:exported="false"
    344             android:multiprocess="false"
    345             />
    346 
    347         <provider
    348             android:name="android.support.v4.content.FileProvider"
    349             android:authorities="@string/contacts_file_provider_authority"
    350             android:grantUriPermissions="true"
    351             android:exported="false">
    352             <meta-data
    353                 android:name="android.support.FILE_PROVIDER_PATHS"
    354                 android:resource="@xml/file_paths" />
    355         </provider>
    356 
    357         <provider
    358             android:name=".database.VoicemailArchiveProvider"
    359             android:authorities="com.android.dialer.database.voicemailarchiveprovider"
    360             android:exported="false"
    361             android:multiprocess="false"
    362             />
    363     </application>
    364 </manifest>
    365