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 
     21     <uses-permission android:name="android.permission.CALL_PHONE" />
     22     <uses-permission android:name="android.permission.CALL_PRIVILEGED" />
     23     <uses-permission android:name="android.permission.READ_CONTACTS" />
     24     <uses-permission android:name="android.permission.WRITE_CONTACTS" />
     25     <uses-permission android:name="android.permission.READ_CALL_LOG" />
     26     <uses-permission android:name="android.permission.WRITE_CALL_LOG" />
     27     <uses-permission android:name="android.permission.READ_PROFILE" />
     28     <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
     29     <uses-permission android:name="android.permission.GET_ACCOUNTS" />
     30     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
     31     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
     32     <uses-permission android:name="android.permission.INTERNET" />
     33     <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
     34     <uses-permission android:name="android.permission.NFC" />
     35     <uses-permission android:name="android.permission.READ_PHONE_STATE" />
     36     <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
     37     <uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
     38     <uses-permission android:name="android.permission.WAKE_LOCK" />
     39     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
     40     <uses-permission android:name="android.permission.WRITE_SETTINGS" />
     41     <uses-permission android:name="android.permission.USE_CREDENTIALS" />
     42     <uses-permission android:name="android.permission.VIBRATE" />
     43     <uses-permission android:name="android.permission.READ_SYNC_SETTINGS" />
     44     <uses-permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE" />
     45     <uses-permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL" />
     46     <uses-permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL" />
     47     <uses-permission android:name="com.android.voicemail.permission.READ_VOICEMAIL" />
     48     <uses-permission android:name="android.permission.ALLOW_ANY_CODEC_FOR_PLAYBACK" />
     49     <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
     50     <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
     51     <uses-permission android:name="android.permission.BROADCAST_STICKY" />
     52     <!-- This tells the activity manager to not delay any of our activity
     53      start requests, even if they happen immediately after the user
     54      presses home. -->
     55     <uses-permission android:name="android.permission.STOP_APP_SWITCHES" />
     56 
     57     <application
     58         android:name="DialerApplication"
     59         android:label="@string/applicationLabel"
     60         android:icon="@mipmap/ic_launcher_phone"
     61         android:hardwareAccelerated="true"
     62         android:supportsRtl="true"
     63         android:backupAgent='com.android.dialer.DialerBackupAgent'>
     64 
     65         <meta-data android:name="com.google.android.backup.api_key"
     66             android:value="AEdPqrEAAAAIBXgtCEKQ6W0PXVnW-ZVia2KmlV2AxsTw3GjAeQ" />
     67 
     68         <!-- The entrance point for Phone UI.
     69              stateAlwaysHidden is set to suppress keyboard show up on
     70              dialpad screen. -->
     71         <activity android:name=".DialtactsActivity"
     72             android:label="@string/launcherActivityLabel"
     73             android:theme="@style/DialtactsActivityTheme"
     74             android:launchMode="singleTask"
     75             android:clearTaskOnLaunch="true"
     76             android:icon="@mipmap/ic_launcher_phone"
     77             android:enabled="@*android:bool/config_voice_capable"
     78             android:windowSoftInputMode="stateAlwaysHidden|adjustNothing">
     79             <intent-filter>
     80                 <action android:name="android.intent.action.DIAL" />
     81                 <category android:name="android.intent.category.DEFAULT" />
     82                 <category android:name="android.intent.category.BROWSABLE" />
     83                 <data android:mimeType="vnd.android.cursor.item/phone" />
     84                 <data android:mimeType="vnd.android.cursor.item/person" />
     85             </intent-filter>
     86             <intent-filter>
     87                 <action android:name="android.intent.action.DIAL" />
     88                 <category android:name="android.intent.category.DEFAULT" />
     89                 <category android:name="android.intent.category.BROWSABLE" />
     90                 <data android:scheme="voicemail" />
     91             </intent-filter>
     92             <intent-filter>
     93                 <action android:name="android.intent.action.DIAL" />
     94                 <category android:name="android.intent.category.DEFAULT" />
     95             </intent-filter>
     96             <intent-filter>
     97                 <action android:name="android.intent.action.MAIN" />
     98                 <category android:name="android.intent.category.DEFAULT" />
     99                 <category android:name="android.intent.category.LAUNCHER" />
    100                 <category android:name="android.intent.category.BROWSABLE" />
    101             </intent-filter>
    102             <intent-filter>
    103                 <action android:name="android.intent.action.VIEW" />
    104                 <action android:name="android.intent.action.DIAL" />
    105                 <category android:name="android.intent.category.DEFAULT" />
    106                 <category android:name="android.intent.category.BROWSABLE" />
    107                 <data android:scheme="tel" />
    108             </intent-filter>
    109             <intent-filter>
    110                 <action android:name="android.intent.action.CALL_BUTTON" />
    111                 <category android:name="android.intent.category.DEFAULT" />
    112                 <category android:name="android.intent.category.BROWSABLE" />
    113             </intent-filter>
    114             <!-- This was never intended to be public, but is here for backward
    115                  compatibility.  Use Intent.ACTION_DIAL instead. -->
    116             <intent-filter>
    117                 <action android:name="com.android.phone.action.TOUCH_DIALER" />
    118                 <category android:name="android.intent.category.DEFAULT" />
    119                 <category android:name="android.intent.category.TAB" />
    120             </intent-filter>
    121             <intent-filter android:label="@string/recentCallsIconLabel">
    122                 <action android:name="com.android.phone.action.RECENT_CALLS" />
    123                 <category android:name="android.intent.category.DEFAULT" />
    124                 <category android:name="android.intent.category.TAB" />
    125             </intent-filter>
    126             <meta-data
    127                 android:name="com.android.keyguard.layout"
    128                 android:resource="@layout/keyguard_preview" />
    129         </activity>
    130 
    131         <activity android:name="com.android.dialer.settings.DialerSettingsActivity"
    132                   android:label="@string/dialer_settings_label"
    133                   android:parentActivityName="com.android.dialer.DialtactsActivity"
    134                   android:theme="@style/SettingsStyle"
    135                   android:exported="false">
    136         </activity>
    137 
    138         <activity android:name="com.android.dialer.calllog.CallLogActivity"
    139             android:label="@string/call_log_activity_title"
    140             android:theme="@style/DialtactsThemeWithoutActionBarOverlay"
    141             android:icon="@mipmap/ic_launcher_phone">
    142             <intent-filter>
    143                 <action android:name="android.intent.action.VIEW" />
    144                 <category android:name="android.intent.category.DEFAULT" />
    145                 <category android:name="android.intent.category.BROWSABLE" />
    146                 <data android:mimeType="vnd.android.cursor.dir/calls" />
    147             </intent-filter>
    148         </activity>
    149 
    150         <activity android:name="com.android.dialer.CallDetailActivity"
    151                   android:label="@string/callDetailTitle"
    152                   android:theme="@style/CallDetailActivityTheme"
    153                   android:icon="@mipmap/ic_launcher_phone"
    154                   android:parentActivityName="com.android.dialer.calllog.CallLogActivity"
    155             >
    156             <intent-filter>
    157                 <action android:name="android.intent.action.VIEW"/>
    158                 <category android:name="android.intent.category.DEFAULT"/>
    159                 <data android:mimeType="vnd.android.cursor.item/calls"/>
    160             </intent-filter>
    161         </activity>
    162 
    163         <activity android:name="com.android.contacts.common.test.FragmentTestActivity">
    164             <intent-filter>
    165                 <category android:name="android.intent.category.TEST"/>
    166             </intent-filter>
    167         </activity>
    168 
    169         <!-- Backwards compatibility: "Phone" from Gingerbread and earlier -->
    170         <activity-alias android:name="DialtactsActivity"
    171             android:targetActivity=".DialtactsActivity"
    172             android:exported="true"
    173         />
    174 
    175         <!-- Backwards compatibility: "Call log" from Gingerbread and earlier -->
    176         <activity-alias android:name="RecentCallsListActivity"
    177             android:targetActivity=".DialtactsActivity"
    178             android:exported="true"
    179         />
    180 
    181         <!-- Backwards compatibility: "Call log" from ICS -->
    182         <activity-alias android:name=".activities.CallLogActivity"
    183             android:targetActivity=".DialtactsActivity"
    184             android:exported="true"
    185         />
    186 
    187         <!-- Used to filter contacts list by account -->
    188         <activity
    189             android:name="com.android.contacts.common.list.AccountFilterActivity"
    190             android:label="@string/activity_title_contacts_filter"
    191             android:theme="@style/ContactListFilterTheme"/>
    192 
    193         <!-- Used to select display and sync groups -->
    194         <activity
    195             android:name="com.android.contacts.common.list.CustomContactListFilterActivity"
    196             android:label="@string/custom_list_filter"
    197             android:theme="@style/ContactListFilterTheme"/>
    198 
    199         <!-- vCard related -->
    200         <activity android:name="com.android.contacts.common.vcard.ImportVCardActivity"
    201                   android:configChanges="orientation|screenSize|keyboardHidden"
    202                   android:theme="@style/BackgroundOnlyTheme">
    203         </activity>
    204 
    205         <activity android:name="com.android.contacts.common.vcard.NfcImportVCardActivity"
    206                   android:configChanges="orientation|screenSize|keyboardHidden"
    207                   android:theme="@style/BackgroundOnlyTheme">
    208         </activity>
    209 
    210         <activity android:name="com.android.contacts.common.vcard.CancelActivity"
    211                   android:theme="@style/BackgroundOnlyTheme"/>
    212 
    213         <activity android:name="com.android.contacts.common.vcard.SelectAccountActivity"
    214                   android:theme="@style/BackgroundOnlyTheme"/>
    215 
    216         <activity android:name="com.android.contacts.common.vcard.ExportVCardActivity"
    217                   android:theme="@style/BackgroundOnlyTheme"/>
    218 
    219         <service
    220             android:name="com.android.contacts.common.vcard.VCardService"
    221             android:exported="false"/>
    222         <!-- end vCard related -->
    223 
    224         <receiver android:name=".calllog.CallLogReceiver"
    225             android:enabled="@*android:bool/config_voice_capable">
    226             <intent-filter>
    227                 <action android:name="android.intent.action.NEW_VOICEMAIL" />
    228                 <data
    229                     android:scheme="content"
    230                     android:host="com.android.voicemail"
    231                     android:mimeType="vnd.android.cursor.item/voicemail"
    232                 />
    233             </intent-filter>
    234             <intent-filter android:priority="100">
    235                  <action android:name="android.intent.action.BOOT_COMPLETED"/>
    236             </intent-filter>
    237         </receiver>
    238 
    239         <receiver android:name=".interactions.UndemoteOutgoingCallReceiver">
    240             <intent-filter>
    241                 <action android:name="android.intent.action.NEW_OUTGOING_CALL" />
    242             </intent-filter>
    243         </receiver>
    244 
    245         <service
    246             android:name=".calllog.CallLogNotificationsService"
    247             android:exported="false"
    248         />
    249 
    250         <!-- Service to update a contact -->
    251         <service
    252             android:name=".contact.ContactUpdateService"
    253             android:exported="false" />
    254 
    255         <!-- Broadcast receiver that passively listens to location updates -->
    256         <receiver android:name="com.android.contacts.common.location.CountryDetector$LocationChangedReceiver"/>
    257 
    258         <!-- IntentService to update the user's current country -->
    259         <service android:name="com.android.contacts.common.location.UpdateCountryService"
    260             android:exported="false"/>
    261 
    262         <!-- Main in-call UI activity.  This is never launched directly
    263              from outside the phone app; instead, it's either launched by
    264              the OutgoingCallBroadcaster (for outgoing calls), or as the
    265              fullScreenIntent of a notification (for incoming calls.) -->
    266         <activity android:name="com.android.incallui.InCallActivity"
    267                   android:theme="@style/Theme.InCallScreen"
    268                   android:label="@string/phoneAppLabel"
    269                   android:excludeFromRecents="true"
    270                   android:launchMode="singleInstance"
    271                   android:configChanges="keyboardHidden"
    272                   android:exported="false"
    273                   android:process="com.android.incallui"
    274                   android:screenOrientation="nosensor" >
    275         </activity>
    276 
    277         <!-- BroadcastReceiver for receiving Intents from Notification mechanism. -->
    278         <receiver android:name="com.android.incallui.InCallApp$NotificationBroadcastReceiver"
    279                   android:exported="false"
    280                   android:process="com.android.incallui">
    281             <intent-filter>
    282                 <action android:name="com.android.incallui.ACTION_HANG_UP_ONGOING_CALL" />
    283             </intent-filter>
    284         </receiver>
    285 
    286         <service android:name="com.android.incallui.InCallServiceImpl"
    287                  android:process="com.android.incallui"
    288                  android:permission="android.permission.BIND_INCALL_SERVICE" >
    289             <intent-filter>
    290                 <action android:name="android.telecom.InCallService"/>
    291             </intent-filter>
    292         </service>
    293     </application>
    294 </manifest>
    295