Home | History | Annotate | Download | only in Contacts
      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.contacts"
     19     android:versionCode="10417"
     20     android:versionName="1.4.17">
     21 
     22     <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="24" />
     23     <original-package android:name="com.android.contacts" />
     24 
     25     <uses-permission android:name="android.permission.CALL_PHONE" />
     26     <uses-permission android:name="android.permission.READ_CONTACTS" />
     27     <uses-permission android:name="android.permission.WRITE_CONTACTS" />
     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.GET_ACCOUNTS_PRIVILEGED" />
     31     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
     32     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
     33     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
     34     <uses-permission android:name="android.permission.READ_PROFILE" />
     35     <uses-permission android:name="android.permission.WRITE_PROFILE" />
     36     <uses-permission android:name="android.permission.INTERNET" />
     37     <uses-permission android:name="android.permission.NFC" />
     38     <uses-permission android:name="android.permission.READ_PHONE_STATE" />
     39     <uses-permission android:name="android.permission.WAKE_LOCK" />
     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.READ_EXTERNAL_STORAGE" />
     45     <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
     46     <!-- Following used for QuickContacts -->
     47     <uses-permission android:name="android.permission.READ_CALL_LOG" />
     48     <uses-permission android:name="android.permission.READ_SMS" />
     49     <uses-permission android:name="android.permission.READ_CALENDAR" />
     50     <uses-permission android:name="com.android.voicemail.permission.READ_VOICEMAIL" />
     51     <!-- Following used for Contact metadata syncing -->
     52     <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
     53 
     54     <application
     55         android:name="com.android.contacts.ContactsApplication"
     56         android:label="@string/applicationLabel"
     57         android:icon="@mipmap/ic_contacts_launcher"
     58         android:taskAffinity="android.task.contacts"
     59         android:hardwareAccelerated="true"
     60         android:supportsRtl="true"
     61         android:usesCleartextTraffic="false"
     62     >
     63 
     64         <!-- The main Contacts activity with the contact list, favorites, and groups. -->
     65         <activity android:name=".activities.PeopleActivity"
     66             android:label="@string/launcherActivityLabel"
     67             android:theme="@style/PeopleTheme"
     68             android:clearTaskOnLaunch="true"
     69             android:launchMode="singleTop"
     70             android:resizeableActivity="true"
     71         >
     72             <intent-filter>
     73                 <action android:name="android.intent.action.MAIN" />
     74                 <category android:name="android.intent.category.DEFAULT" />
     75                 <category android:name="android.intent.category.LAUNCHER" />
     76                 <category android:name="android.intent.category.BROWSABLE" />
     77                 <category android:name="android.intent.category.APP_CONTACTS" />
     78             </intent-filter>
     79             <intent-filter>
     80                 <action android:name="com.android.contacts.action.LIST_DEFAULT" />
     81                 <category android:name="android.intent.category.DEFAULT" />
     82                 <category android:name="android.intent.category.TAB" />
     83             </intent-filter>
     84 
     85             <intent-filter>
     86                 <action android:name="com.android.contacts.action.LIST_CONTACTS" />
     87                 <category android:name="android.intent.category.DEFAULT" />
     88                 <category android:name="android.intent.category.TAB" />
     89             </intent-filter>
     90 
     91             <intent-filter>
     92                 <action android:name="com.android.contacts.action.LIST_ALL_CONTACTS" />
     93                 <category android:name="android.intent.category.DEFAULT" />
     94                 <category android:name="android.intent.category.TAB" />
     95             </intent-filter>
     96 
     97             <intent-filter>
     98                 <action android:name="com.android.contacts.action.LIST_CONTACTS_WITH_PHONES" />
     99                 <category android:name="android.intent.category.DEFAULT" />
    100                 <category android:name="android.intent.category.TAB" />
    101             </intent-filter>
    102 
    103             <intent-filter android:label="@string/starredList">
    104                 <action android:name="com.android.contacts.action.LIST_STARRED" />
    105                 <category android:name="android.intent.category.DEFAULT" />
    106                 <category android:name="android.intent.category.TAB" />
    107             </intent-filter>
    108 
    109             <intent-filter android:label="@string/frequentList">
    110                 <action android:name="com.android.contacts.action.LIST_FREQUENT" />
    111                 <category android:name="android.intent.category.DEFAULT" />
    112                 <category android:name="android.intent.category.TAB" />
    113             </intent-filter>
    114 
    115             <intent-filter android:label="@string/strequentList">
    116                 <action android:name="com.android.contacts.action.LIST_STREQUENT" />
    117                 <category android:name="android.intent.category.DEFAULT" />
    118                 <category android:name="android.intent.category.TAB" />
    119             </intent-filter>
    120 
    121             <intent-filter>
    122                 <action android:name="android.intent.action.SEARCH" />
    123                 <category android:name="android.intent.category.DEFAULT" />
    124                 <data android:mimeType="vnd.android.cursor.dir/contact" />
    125             </intent-filter>
    126 
    127             <intent-filter>
    128                 <action android:name="android.intent.action.SEARCH" />
    129                 <category android:name="android.intent.category.DEFAULT" />
    130             </intent-filter>
    131 
    132             <intent-filter>
    133                 <action android:name="android.intent.action.VIEW" />
    134                 <category android:name="android.intent.category.DEFAULT" />
    135                 <data android:mimeType="vnd.android.cursor.dir/person" />
    136                 <data android:mimeType="vnd.android.cursor.dir/contact" />
    137             </intent-filter>
    138 
    139             <meta-data android:name="android.app.searchable"
    140                 android:resource="@xml/searchable"
    141             />
    142         </activity>
    143 
    144         <activity android:name=".activities.ContactSelectionActivity"
    145             android:label="@string/launcherActivityLabel"
    146             android:theme="@style/ContactPickerTheme"
    147             android:launchMode="singleTop"
    148             android:clearTaskOnLaunch="true"
    149             android:uiOptions="splitActionBarWhenNarrow"
    150             android:windowSoftInputMode="adjustResize">
    151             <intent-filter>
    152                 <action android:name="android.intent.action.INSERT_OR_EDIT" />
    153                 <category android:name="android.intent.category.DEFAULT" />
    154                 <data android:mimeType="vnd.android.cursor.item/person" />
    155                 <data android:mimeType="vnd.android.cursor.item/contact" />
    156                 <data android:mimeType="vnd.android.cursor.item/raw_contact" />
    157             </intent-filter>
    158 
    159             <intent-filter>
    160                 <action android:name="android.intent.action.PICK" />
    161                 <category android:name="android.intent.category.DEFAULT" />
    162                 <data android:mimeType="vnd.android.cursor.dir/contact" />
    163                 <data android:mimeType="vnd.android.cursor.dir/person" />
    164                 <data android:mimeType="vnd.android.cursor.dir/phone_v2" />
    165                 <data android:mimeType="vnd.android.cursor.dir/phone" />
    166                 <data android:mimeType="vnd.android.cursor.dir/postal-address_v2" />
    167                 <data android:mimeType="vnd.android.cursor.dir/postal-address" />
    168                 <data android:mimeType="vnd.android.cursor.dir/email_v2" />
    169             </intent-filter>
    170 
    171             <intent-filter>
    172                 <action android:name="android.intent.action.GET_CONTENT" />
    173                 <category android:name="android.intent.category.DEFAULT" />
    174                 <data android:mimeType="vnd.android.cursor.item/contact" />
    175                 <data android:mimeType="vnd.android.cursor.item/person" />
    176                 <data android:mimeType="vnd.android.cursor.item/phone_v2" />
    177                 <data android:mimeType="vnd.android.cursor.item/phone" />
    178                 <data android:mimeType="vnd.android.cursor.item/postal-address_v2" />
    179                 <data android:mimeType="vnd.android.cursor.item/postal-address" />
    180             </intent-filter>
    181 
    182             <intent-filter>
    183                 <action android:name="com.android.contacts.action.JOIN_CONTACT" />
    184                 <category android:name="android.intent.category.DEFAULT" />
    185             </intent-filter>
    186         </activity>
    187 
    188         <!-- Backwards compatibility: somebody may have hard coded this activity name -->
    189         <activity-alias android:name="ContactsListActivity"
    190             android:targetActivity=".activities.PeopleActivity"
    191         />
    192 
    193         <!-- Backwards compatibility: "Contacts" from Honeycomb -->
    194         <activity-alias android:name=".activities.ContactsFrontDoor"
    195             android:targetActivity=".activities.PeopleActivity"
    196             android:exported="true"
    197         />
    198 
    199         <!-- Backwards compatibility: "Contacts" from Gingerbread and earlier -->
    200         <activity-alias android:name="DialtactsContactsEntryActivity"
    201             android:targetActivity=".activities.PeopleActivity"
    202             android:exported="true"
    203         />
    204 
    205         <!-- Used to set options -->
    206         <activity
    207             android:name=".common.preference.ContactsPreferenceActivity"
    208             android:label="@string/activity_title_settings"
    209             android:theme="@style/ContactsPreferencesTheme"
    210             android:exported="false"/>
    211 
    212         <activity android:name=".common.activity.LicenseActivity"
    213             android:label="@string/activity_title_licenses"
    214             android:theme="@style/ContactsPreferencesTheme"
    215             android:exported="false" />
    216 
    217         <!-- Used to filter contacts list by account -->
    218         <activity
    219             android:name=".common.list.AccountFilterActivity"
    220             android:label="@string/activity_title_contacts_filter"
    221             android:theme="@style/ContactListFilterTheme" />
    222 
    223         <!-- Used to select display and sync groups -->
    224         <activity
    225             android:name=".common.list.CustomContactListFilterActivity"
    226             android:label="@string/custom_list_filter"
    227             android:theme="@style/ContactListFilterTheme" />
    228 
    229         <activity
    230             android:name=".common.activity.RequestPermissionsActivity"
    231             android:label="@string/launcherActivityLabel"
    232             android:theme="@style/PeopleTheme"
    233             android:exported="false"/>
    234 
    235         <activity
    236             android:name=".common.activity.RequestDesiredPermissionsActivity"
    237             android:label="@string/launcherActivityLabel"
    238             android:theme="@style/PeopleTheme"
    239             android:exported="false"/>
    240 
    241         <activity
    242             android:name=".common.activity.RequestImportVCardPermissionsActivity"
    243             android:label="@string/launcherActivityLabel"
    244             android:theme="@style/PeopleTheme"
    245             android:exported="false"/>
    246 
    247         <activity
    248             android:name=".activities.ShowOrCreateActivity"
    249             android:label="@string/launcherActivityLabel"
    250             android:theme="@android:style/Theme.Material.Light.Dialog.NoActionBar">
    251 
    252             <intent-filter>
    253                 <action android:name="com.android.contacts.action.SHOW_OR_CREATE_CONTACT" />
    254                 <category android:name="android.intent.category.DEFAULT" />
    255                 <data android:scheme="mailto" />
    256                 <data android:scheme="tel" />
    257             </intent-filter>
    258         </activity>
    259 
    260         <!-- Views the details of a single group -->
    261         <activity android:name=".activities.GroupDetailActivity"
    262             android:label=""
    263             android:theme="@style/DetailActivityTheme"/>
    264 
    265         <!-- Create a new or edit an existing group -->
    266         <activity
    267             android:name=".activities.GroupEditorActivity"
    268             android:theme="@style/EditorActivityTheme"
    269             android:windowSoftInputMode="adjustResize" />
    270 
    271         <activity
    272             android:name=".quickcontact.QuickContactActivity"
    273             android:label="@string/quickContactActivityLabel"
    274             android:theme="@style/Theme.QuickContact"
    275             android:launchMode="singleTop"
    276             android:excludeFromRecents="true"
    277             android:taskAffinity=""
    278             android:windowSoftInputMode="stateUnchanged">
    279 
    280             <intent-filter>
    281                 <action android:name="com.android.contacts.action.QUICK_CONTACT" />
    282                 <action android:name="android.provider.action.QUICK_CONTACT" />
    283                 <category android:name="android.intent.category.DEFAULT" />
    284                 <data android:mimeType="vnd.android.cursor.item/contact" />
    285                 <data android:mimeType="vnd.android.cursor.item/person" />
    286             </intent-filter>
    287 
    288             <intent-filter>
    289                 <action android:name="android.intent.action.VIEW" />
    290                 <category android:name="android.intent.category.DEFAULT" />
    291                 <data android:mimeType="vnd.android.cursor.item/person" />
    292                 <data android:mimeType="vnd.android.cursor.item/contact" />
    293                 <data android:mimeType="vnd.android.cursor.item/raw_contact" />
    294             </intent-filter>
    295         </activity>
    296 
    297         <receiver
    298             android:name=".quickcontact.QuickContactBroadcastReceiver"
    299             android:exported="false" />
    300 
    301         <activity-alias android:name="ContactShortcut"
    302             android:targetActivity=".activities.ContactSelectionActivity"
    303             android:label="@string/shortcutContact"
    304             android:icon="@drawable/logo_quick_contacts_color_44in48dp">
    305 
    306             <intent-filter>
    307                 <action android:name="android.intent.action.CREATE_SHORTCUT" />
    308                 <category android:name="android.intent.category.DEFAULT" />
    309             </intent-filter>
    310 
    311         </activity-alias>
    312 
    313         <activity-alias android:name="alias.DialShortcut"
    314             android:targetActivity=".activities.ContactSelectionActivity"
    315             android:label="@string/shortcutDialContact"
    316             android:icon="@drawable/logo_quick_contacts_dialer_color_44in48dp">
    317 
    318             <intent-filter>
    319                 <action android:name="android.intent.action.CREATE_SHORTCUT" />
    320                 <category android:name="android.intent.category.DEFAULT" />
    321                 <category android:name="android.intent.category.CAR_MODE" />
    322             </intent-filter>
    323 
    324         </activity-alias>
    325 
    326         <activity-alias android:name="alias.MessageShortcut"
    327             android:targetActivity=".activities.ContactSelectionActivity"
    328             android:label="@string/shortcutMessageContact"
    329             android:icon="@drawable/logo_quick_contacts_mail_color_44in48dp">
    330 
    331             <intent-filter>
    332                 <action android:name="android.intent.action.CREATE_SHORTCUT" />
    333                 <category android:name="android.intent.category.DEFAULT" />
    334             </intent-filter>
    335 
    336         </activity-alias>
    337 
    338         <!-- Confirm that a single detail will be added to an existing contact -->
    339         <activity
    340             android:name=".activities.ConfirmAddDetailActivity"
    341             android:label="@string/activity_title_confirm_add_detail"
    342             android:theme="@style/ConfirmAddDetailDialogTheme"
    343             android:windowSoftInputMode="adjustResize"
    344             android:exported="false"/>
    345 
    346         <!-- Accounts changed prompt that can appear when creating a new contact. -->
    347         <activity
    348             android:name=".activities.ContactEditorAccountsChangedActivity"
    349             android:theme="@style/ContactEditorAccountsChangedActivityTheme"
    350             android:windowSoftInputMode="adjustResize"
    351             android:exported="false"/>
    352 
    353         <!-- Edit or create a contact with only the most important fields displayed initially. -->
    354         <activity
    355             android:name=".activities.CompactContactEditorActivity"
    356             android:label="@string/editContactActivityLabel"
    357             android:theme="@style/EditorActivityTheme"
    358             android:windowSoftInputMode="stateHidden|adjustResize">
    359 
    360             <intent-filter android:label="@string/editContactDescription">
    361                 <action android:name="android.intent.action.EDIT" />
    362                 <category android:name="android.intent.category.DEFAULT" />
    363                 <data android:mimeType="vnd.android.cursor.item/person" />
    364                 <data android:mimeType="vnd.android.cursor.item/contact" />
    365                 <data android:mimeType="vnd.android.cursor.item/raw_contact" />
    366             </intent-filter>
    367             <intent-filter android:label="@string/insertContactDescription">
    368                 <action android:name="android.intent.action.INSERT" />
    369                 <category android:name="android.intent.category.DEFAULT" />
    370                 <data android:mimeType="vnd.android.cursor.dir/person" />
    371                 <data android:mimeType="vnd.android.cursor.dir/contact" />
    372                 <data android:mimeType="vnd.android.cursor.dir/raw_contact" />
    373             </intent-filter>
    374         </activity>
    375 
    376         <!-- Edit or create a contact with all fields displayed. -->
    377         <activity
    378             android:name=".activities.ContactEditorActivity"
    379             android:label="@string/editContactActivityLabel"
    380             android:theme="@style/EditorActivityTheme"
    381             android:windowSoftInputMode="stateHidden|adjustResize"
    382             android:exported="false">
    383 
    384             <intent-filter android:label="@string/editContactDescription">
    385                 <action android:name="com.android.contacts.action.FULL_EDIT" />
    386                 <category android:name="android.intent.category.DEFAULT" />
    387                 <data android:mimeType="vnd.android.cursor.item/person" />
    388                 <data android:mimeType="vnd.android.cursor.item/contact" />
    389                 <data android:mimeType="vnd.android.cursor.item/raw_contact" />
    390             </intent-filter>
    391             <intent-filter android:label="@string/insertContactDescription">
    392                 <action android:name="com.android.contacts.action.FULL_INSERT" />
    393                 <category android:name="android.intent.category.DEFAULT" />
    394                 <data android:mimeType="vnd.android.cursor.dir/person" />
    395                 <data android:mimeType="vnd.android.cursor.dir/contact" />
    396                 <data android:mimeType="vnd.android.cursor.dir/raw_contact" />
    397             </intent-filter>
    398         </activity>
    399 
    400         <activity android:name=".common.test.FragmentTestActivity">
    401             <intent-filter>
    402                 <category android:name="android.intent.category.TEST" />
    403             </intent-filter>
    404         </activity>
    405 
    406         <!-- Stub service used to keep our process alive long enough for
    407              background threads to finish their operations. -->
    408         <service
    409             android:name=".common.util.EmptyService"
    410             android:exported="false" />
    411 
    412         <!-- Service to save a contact -->
    413         <service
    414             android:name=".ContactSaveService"
    415             android:exported="false" />
    416 
    417         <!-- Attaches a photo to a contact. Started from external applications -->
    418         <activity android:name=".activities.AttachPhotoActivity"
    419             android:label="@string/attach_photo_dialog_title"
    420             android:taskAffinity="">
    421             <intent-filter>
    422                 <action android:name="android.intent.action.ATTACH_DATA" />
    423                 <data android:mimeType="image/*" />
    424                 <category android:name="android.intent.category.DEFAULT" />
    425             </intent-filter>
    426         </activity>
    427 
    428         <!-- vCard related -->
    429         <activity android:name=".common.vcard.ImportVCardActivity"
    430             android:label="@string/launcherActivityLabel"
    431             android:configChanges="orientation|screenSize|keyboardHidden"
    432             android:theme="@style/BackgroundOnlyTheme">
    433             <intent-filter>
    434                 <action android:name="android.intent.action.VIEW" />
    435                 <data android:mimeType="text/directory" />
    436                 <data android:mimeType="text/vcard" />
    437                 <data android:mimeType="text/x-vcard" />
    438                 <category android:name="android.intent.category.DEFAULT" />
    439             </intent-filter>
    440         </activity>
    441 
    442         <activity android:name=".common.vcard.NfcImportVCardActivity"
    443             android:label="@string/launcherActivityLabel"
    444             android:configChanges="orientation|screenSize|keyboardHidden"
    445             android:theme="@style/BackgroundOnlyTheme">
    446             <intent-filter>
    447                 <action android:name="android.nfc.action.NDEF_DISCOVERED" />
    448                 <data android:mimeType="text/vcard" />
    449                 <data android:mimeType="text/x-vcard" />
    450                 <category android:name="android.intent.category.DEFAULT" />
    451             </intent-filter>
    452         </activity>
    453 
    454         <activity android:name=".common.vcard.CancelActivity"
    455             android:label="@string/launcherActivityLabel"
    456             android:theme="@style/BackgroundOnlyTheme" />
    457 
    458         <activity android:name=".common.vcard.SelectAccountActivity"
    459             android:label="@string/launcherActivityLabel"
    460             android:theme="@style/BackgroundOnlyTheme" />
    461 
    462         <activity android:name=".common.vcard.ExportVCardActivity"
    463             android:label="@string/launcherActivityLabel"
    464             android:theme="@style/BackgroundOnlyTheme" />
    465 
    466         <activity android:name=".common.vcard.ShareVCardActivity"
    467                   android:label="@string/launcherActivityLabel"
    468                   android:theme="@style/BackgroundOnlyTheme" />
    469 
    470         <service
    471             android:name=".common.vcard.VCardService"
    472             android:exported="false" />
    473         <!-- end vCard related -->
    474 
    475         <!-- Intercept Dialer Intents for devices without a phone.
    476              This activity should have the same intent filters as the DialtactsActivity,
    477              so that its capturing the same events. Omit android.intent.category.LAUNCHER, because
    478              we don't want this to show up in the Launcher. The priorities of the intent-filters
    479              are set lower, so that the user does not see a disambig dialog -->
    480         <activity
    481             android:name="com.android.contacts.NonPhoneActivity"
    482             android:theme="@style/NonPhoneActivityTheme"
    483             android:label="@string/launcherActivityLabel"
    484             >
    485             <intent-filter android:priority="-1">
    486                 <action android:name="android.intent.action.MAIN"/>
    487                 <category android:name="android.intent.category.DEFAULT"/>
    488                 <category android:name="android.intent.category.BROWSABLE"/>
    489             </intent-filter>
    490             <intent-filter android:priority="-1">
    491                 <action android:name="android.intent.action.VIEW"/>
    492                 <category android:name="android.intent.category.DEFAULT"/>
    493                 <category android:name="android.intent.category.BROWSABLE"/>
    494                 <data android:scheme="tel"/>
    495             </intent-filter>
    496             <intent-filter android:priority="-1">
    497                 <action android:name="android.intent.action.VIEW"/>
    498                 <category android:name="android.intent.category.DEFAULT"/>
    499                 <category android:name="android.intent.category.BROWSABLE"/>
    500                 <data android:mimeType="vnd.android.cursor.dir/calls"/>
    501             </intent-filter>
    502         </activity>
    503 
    504         <activity android:name="com.android.contacts.common.dialog.CallSubjectDialog"
    505                   android:theme="@style/Theme.CallSubjectDialogTheme"
    506                   android:windowSoftInputMode="stateVisible|adjustResize">
    507             <intent-filter>
    508                 <action android:name="android.intent.action.VIEW"/>
    509             </intent-filter>
    510         </activity>
    511 
    512         <!-- Service that is exclusively for the Phone application that sends out a view
    513              notification. This service might be removed in future versions of the app.
    514 
    515              This is called explicitly by the phone app via package name and class.
    516              (PhoneUtils.sendViewNotificationAsync()).  If this service moves, then phone
    517              needs to be changed as well.
    518         -->
    519         <service android:name=".ViewNotificationService"
    520                  android:permission="android.permission.WRITE_CONTACTS"
    521                  android:exported="true">
    522             <intent-filter>
    523                 <action android:name="com.android.contacts.VIEW_NOTIFICATION"/>
    524                 <data android:mimeType="vnd.android.cursor.item/contact"/>
    525             </intent-filter>
    526         </service>
    527 
    528         <!-- Broadcast receiver that passively listens to location updates -->
    529         <receiver android:name="com.android.contacts.common.location.CountryDetector$LocationChangedReceiver"/>
    530 
    531         <!-- IntentService to update the user's current country -->
    532         <service android:name="com.android.contacts.common.location.UpdateCountryService"
    533             android:exported="false"/>
    534 
    535         <provider
    536             android:name="android.support.v4.content.FileProvider"
    537             android:authorities="@string/contacts_file_provider_authority"
    538             android:grantUriPermissions="true"
    539             android:exported="false">
    540             <meta-data
    541                 android:name="android.support.FILE_PROVIDER_PATHS"
    542                 android:resource="@xml/file_paths" />
    543         </provider>
    544 
    545         <meta-data android:name="android.nfc.disable_beam_default" android:value="true" />
    546     </application>
    547 </manifest>
    548