• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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:sharedUserId="android.uid.shared"
20    android:sharedUserLabel="@string/sharedUserLabel"
21>
22
23    <original-package android:name="com.android.contacts" />
24
25    <uses-permission android:name="android.permission.CALL_PRIVILEGED" />
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.INTERNET" />
29    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
30    <uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
31    <uses-permission android:name="com.google.android.googleapps.permission.GOOGLE_AUTH.mail" />
32    <uses-permission android:name="android.permission.WAKE_LOCK" />
33    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
34    <uses-permission android:name="android.permission.WRITE_SETTINGS" />
35    <uses-permission android:name="android.permission.USE_CREDENTIALS" />
36    <uses-permission android:name="android.permission.VIBRATE" />
37
38    <application
39        android:label="@string/contactsList"
40        android:icon="@drawable/ic_launcher_contacts"
41        android:process="android.process.acore"
42        android:taskAffinity="android.task.contacts"
43    >
44
45        <!-- A virtual 12 key dialer -->
46        <activity android:name="TwelveKeyDialer"
47            android:launchMode="singleTop"
48        >
49            <intent-filter>
50                <action android:name="com.android.phone.action.TOUCH_DIALER" />
51                <category android:name="android.intent.category.DEFAULT" />
52                <category android:name="android.intent.category.TAB" />
53            </intent-filter>
54        </activity>
55
56        <!-- A list of recent calls -->
57        <activity android:name="RecentCallsListActivity"
58            android:label="@string/recentCallsIconLabel"
59        >
60            <intent-filter>
61                <action android:name="com.android.phone.action.RECENT_CALLS" />
62                <category android:name="android.intent.category.DEFAULT" />
63                <category android:name="android.intent.category.TAB" />
64            </intent-filter>
65        </activity>
66
67        <!-- Tab container for all tabs -->
68        <activity android:name="DialtactsActivity"
69            android:label="@string/launcherDialer"
70            android:theme="@style/DialtactsTheme"
71            android:launchMode="singleTask"
72            android:clearTaskOnLaunch="true"
73            android:icon="@drawable/ic_launcher_phone"
74            android:screenOrientation="nosensor"
75        >
76            <intent-filter>
77                <action android:name="android.intent.action.DIAL" />
78                <category android:name="android.intent.category.DEFAULT" />
79                <category android:name="android.intent.category.BROWSABLE" />
80                <data android:mimeType="vnd.android.cursor.item/phone" />
81                <data android:mimeType="vnd.android.cursor.item/person" />
82            </intent-filter>
83            <intent-filter>
84                <action android:name="android.intent.action.DIAL" />
85                <category android:name="android.intent.category.DEFAULT" />
86                <category android:name="android.intent.category.BROWSABLE" />
87                <data android:scheme="voicemail" />
88            </intent-filter>
89            <intent-filter>
90                <action android:name="android.intent.action.DIAL" />
91                <category android:name="android.intent.category.DEFAULT" />
92            </intent-filter>
93            <intent-filter>
94                <action android:name="android.intent.action.MAIN" />
95                <category android:name="android.intent.category.DEFAULT" />
96                <category android:name="android.intent.category.LAUNCHER" />
97                <category android:name="android.intent.category.BROWSABLE" />
98            </intent-filter>
99            <intent-filter>
100                <action android:name="android.intent.action.VIEW" />
101                <action android:name="android.intent.action.DIAL" />
102                <category android:name="android.intent.category.DEFAULT" />
103                <category android:name="android.intent.category.BROWSABLE" />
104                <data android:scheme="tel" />
105            </intent-filter>
106            <intent-filter>
107                <action android:name="android.intent.action.VIEW" />
108                <category android:name="android.intent.category.DEFAULT" />
109                <category android:name="android.intent.category.BROWSABLE" />
110                <data android:mimeType="vnd.android.cursor.dir/calls" />
111            </intent-filter>
112            <intent-filter>
113                <action android:name="android.intent.action.CALL_BUTTON" />
114                <category android:name="android.intent.category.DEFAULT" />
115                <category android:name="android.intent.category.BROWSABLE" />
116            </intent-filter>
117        </activity>
118
119        <!-- Tab container for all tabs -->
120        <activity-alias android:name="DialtactsContactsEntryActivity"
121            android:targetActivity="DialtactsActivity"
122            android:label="@string/contactsList"
123            android:icon="@drawable/ic_launcher_contacts"
124        >
125            <intent-filter>
126                <action android:name="android.intent.action.MAIN" />
127                <category android:name="android.intent.category.DEFAULT" />
128                <category android:name="android.intent.category.LAUNCHER" />
129                <category android:name="android.intent.category.BROWSABLE" />
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" android:host="contacts" />
136                <data android:mimeType="vnd.android.cursor.dir/contact" android:host="com.android.contacts" />
137            </intent-filter>
138
139        </activity-alias>
140
141        <!-- An empty activity that presents the DialtactActivity's Favorites tab -->
142        <activity-alias android:name="DialtactsFavoritesEntryActivity"
143            android:targetActivity="DialtactsActivity"
144        >
145            <intent-filter>
146                <action android:name="android.intent.action.MAIN" />
147                <category android:name="android.intent.category.DEFAULT" />
148            </intent-filter>
149        </activity-alias>
150
151        <!-- The actual list of contacts, usually embedded in ContactsActivity -->
152        <activity android:name="ContactsListActivity"
153            android:label="@string/contactsList"
154            android:clearTaskOnLaunch="true"
155        >
156            <intent-filter>
157                <action android:name="com.android.contacts.action.LIST_DEFAULT" />
158                <category android:name="android.intent.category.DEFAULT" />
159                <category android:name="android.intent.category.TAB" />
160            </intent-filter>
161
162            <intent-filter>
163                <action android:name="com.android.contacts.action.LIST_CONTACTS" />
164                <category android:name="android.intent.category.DEFAULT" />
165                <category android:name="android.intent.category.TAB" />
166            </intent-filter>
167
168            <intent-filter>
169                <action android:name="com.android.contacts.action.LIST_ALL_CONTACTS" />
170                <category android:name="android.intent.category.DEFAULT" />
171                <category android:name="android.intent.category.TAB" />
172            </intent-filter>
173
174            <intent-filter>
175                <action android:name="com.android.contacts.action.LIST_CONTACTS_WITH_PHONES" />
176                <category android:name="android.intent.category.DEFAULT" />
177                <category android:name="android.intent.category.TAB" />
178            </intent-filter>
179
180            <intent-filter android:label="@string/starredList">
181                <action android:name="com.android.contacts.action.LIST_STARRED" />
182                <category android:name="android.intent.category.DEFAULT" />
183                <category android:name="android.intent.category.TAB" />
184            </intent-filter>
185
186            <intent-filter android:label="@string/frequentList">
187                <action android:name="com.android.contacts.action.LIST_FREQUENT" />
188                <category android:name="android.intent.category.DEFAULT" />
189                <category android:name="android.intent.category.TAB" />
190            </intent-filter>
191
192            <intent-filter android:label="@string/strequentList">
193                <action android:name="com.android.contacts.action.LIST_STREQUENT" />
194                <category android:name="android.intent.category.DEFAULT" />
195                <category android:name="android.intent.category.TAB" />
196            </intent-filter>
197
198            <intent-filter>
199                <action android:name="android.intent.action.INSERT_OR_EDIT" />
200                <category android:name="android.intent.category.DEFAULT" />
201                <data android:mimeType="vnd.android.cursor.item/person" />
202                <data android:mimeType="vnd.android.cursor.item/contact" />
203                <data android:mimeType="vnd.android.cursor.item/raw_contact" />
204            </intent-filter>
205
206            <intent-filter>
207                <action android:name="android.intent.action.PICK" />
208                <category android:name="android.intent.category.DEFAULT" />
209                <data android:mimeType="vnd.android.cursor.dir/contact" />
210                <data android:mimeType="vnd.android.cursor.dir/person" />
211                <data android:mimeType="vnd.android.cursor.dir/phone_v2" />
212                <data android:mimeType="vnd.android.cursor.dir/phone" />
213                <data android:mimeType="vnd.android.cursor.dir/postal-address_v2" />
214                <data android:mimeType="vnd.android.cursor.dir/postal-address" />
215            </intent-filter>
216
217            <intent-filter>
218                <action android:name="android.intent.action.GET_CONTENT" />
219                <category android:name="android.intent.category.DEFAULT" />
220                <data android:mimeType="vnd.android.cursor.item/contact" />
221                <data android:mimeType="vnd.android.cursor.item/person" />
222                <data android:mimeType="vnd.android.cursor.item/phone_v2" />
223                <data android:mimeType="vnd.android.cursor.item/phone" />
224                <data android:mimeType="vnd.android.cursor.item/postal-address_v2" />
225                <data android:mimeType="vnd.android.cursor.item/postal-address" />
226            </intent-filter>
227
228        </activity>
229
230        <!-- An activity for joining contacts -->
231        <activity android:name="ContactsListActivity$JoinContactActivity"
232            android:theme="@style/TallTitleBarTheme"
233            android:clearTaskOnLaunch="true"
234        >
235            <intent-filter>
236                <action android:name="com.android.contacts.action.JOIN_AGGREGATE" />
237                <category android:name="android.intent.category.DEFAULT" />
238            </intent-filter>
239        </activity>
240
241        <!-- The contacts search/filter UI -->
242        <activity android:name="ContactsListActivity$ContactsSearchActivity"
243            android:theme="@style/ContactsSearchTheme"
244            android:windowSoftInputMode="stateAlwaysVisible|adjustPan"
245        >
246            <intent-filter>
247                <action android:name="com.android.contacts.action.FILTER_CONTACTS" />
248                <category android:name="android.intent.category.DEFAULT" />
249                <data android:mimeType="vnd.android.cursor.dir/contact" android:host="com.android.contacts" />
250            </intent-filter>
251        </activity>
252
253        <!-- The contacts search/filter UI -->
254        <activity android:name="SearchResultsActivity"
255            android:theme="@style/TallTitleBarTheme"
256            android:label="@string/contactsList"
257        >
258            <intent-filter>
259                <action android:name="android.intent.action.SEARCH" />
260                <category android:name="android.intent.category.DEFAULT" />
261            </intent-filter>
262
263            <meta-data android:name="android.app.searchable"
264                android:resource="@xml/searchable"
265            />
266        </activity>
267
268        <!-- Used to select display and sync groups -->
269        <activity android:name=".ui.ContactsPreferencesActivity" android:label="@string/displayGroups" />
270
271        <activity
272            android:name=".ui.ShowOrCreateActivity"
273            android:theme="@style/FullyTranslucent">
274
275            <intent-filter>
276                <action android:name="com.android.contacts.action.SHOW_OR_CREATE_CONTACT" />
277                <category android:name="android.intent.category.DEFAULT" />
278                <data android:scheme="mailto" />
279                <data android:scheme="tel" />
280            </intent-filter>
281        </activity>
282
283        <!-- Used to show QuickContact window over a translucent activity, which is a
284             temporary hack until we add better framework support. -->
285        <activity
286            android:name=".ui.QuickContactActivity"
287            android:theme="@style/FullyTranslucent.QuickContact"
288            android:launchMode="singleTop"
289            android:excludeFromRecents="true"
290            android:taskAffinity="android.task.quickcontact"
291            android:windowSoftInputMode="stateUnchanged"
292            >
293
294            <intent-filter>
295                <action android:name="com.android.contacts.action.QUICK_CONTACT" />
296                <category android:name="android.intent.category.DEFAULT" />
297                <data android:mimeType="vnd.android.cursor.item/contact" android:host="com.android.contacts" />
298                <data android:mimeType="vnd.android.cursor.item/person" android:host="contacts" />
299            </intent-filter>
300        </activity>
301
302        <activity-alias android:name="ContactShortcut"
303            android:targetActivity="ContactsListActivity"
304            android:label="@string/shortcutContact"
305            android:icon="@drawable/ic_launcher_shortcut_contact">
306
307            <intent-filter>
308                <action android:name="android.intent.action.CREATE_SHORTCUT" />
309                <category android:name="android.intent.category.DEFAULT" />
310            </intent-filter>
311
312        </activity-alias>
313
314        <activity-alias android:name="alias.DialShortcut"
315            android:targetActivity="ContactsListActivity"
316            android:label="@string/shortcutDialContact"
317            android:icon="@drawable/ic_launcher_shortcut_directdial">
318
319            <intent-filter>
320                <action android:name="android.intent.action.CREATE_SHORTCUT" />
321                <category android:name="android.intent.category.DEFAULT" />
322                <category android:name="android.intent.category.CAR_MODE" />
323            </intent-filter>
324
325        </activity-alias>
326
327        <activity-alias android:name="alias.MessageShortcut"
328            android:targetActivity="ContactsListActivity"
329            android:label="@string/shortcutMessageContact"
330            android:icon="@drawable/ic_launcher_shortcut_directmessage">
331
332            <intent-filter>
333                <action android:name="android.intent.action.CREATE_SHORTCUT" />
334                <category android:name="android.intent.category.DEFAULT" />
335            </intent-filter>
336
337        </activity-alias>
338
339        <activity android:name="CallDetailActivity"
340            android:label="@string/callDetailTitle"
341            android:theme="@style/TallTitleBarTheme"
342        >
343            <intent-filter>
344                <action android:name="android.intent.action.VIEW" />
345                <category android:name="android.intent.category.DEFAULT" />
346                <data android:mimeType="vnd.android.cursor.item/calls" />
347            </intent-filter>
348        </activity>
349
350        <!-- Views the details of a single contact -->
351        <activity android:name="ViewContactActivity"
352            android:label="@string/viewContactTitle"
353            android:theme="@style/TallTitleBarTheme">
354
355            <intent-filter android:label="@string/viewContactDesription">
356                <action android:name="android.intent.action.VIEW" />
357                <category android:name="android.intent.category.DEFAULT" />
358                <data android:mimeType="vnd.android.cursor.item/person" android:host="contacts" />
359                <data android:mimeType="vnd.android.cursor.item/contact" android:host="com.android.contacts" />
360                <data android:mimeType="vnd.android.cursor.item/raw_contact" android:host="com.android.contacts" />
361            </intent-filter>
362        </activity>
363
364        <!-- Edit or insert details for a contact -->
365        <activity
366            android:name=".ui.EditContactActivity"
367            android:windowSoftInputMode="stateHidden|adjustResize">
368
369            <intent-filter android:label="@string/editContactDescription">
370                <action android:name="android.intent.action.EDIT" />
371                <category android:name="android.intent.category.DEFAULT" />
372                <data android:mimeType="vnd.android.cursor.item/person" android:host="contacts" />
373                <data android:mimeType="vnd.android.cursor.item/contact" android:host="com.android.contacts" />
374                <data android:mimeType="vnd.android.cursor.item/raw_contact" android:host="com.android.contacts" />
375            </intent-filter>
376
377            <intent-filter android:label="@string/insertContactDescription">
378                <action android:name="android.intent.action.INSERT" />
379                <category android:name="android.intent.category.DEFAULT" />
380                <data android:mimeType="vnd.android.cursor.dir/person" />
381                <data android:mimeType="vnd.android.cursor.dir/contact" />
382                <data android:mimeType="vnd.android.cursor.dir/raw_contact" />
383            </intent-filter>
384
385        </activity>
386
387        <!-- Stub service used to keep our process alive long enough for
388             background threads to finish their operations. -->
389        <service
390            android:name=".util.EmptyService"
391            android:exported="false" />
392
393        <!-- Views the details of a single contact -->
394        <activity android:name="ContactOptionsActivity"
395            android:label="@string/contactOptionsTitle"
396        >
397            <intent-filter>
398                <action android:name="android.intent.action.EDIT" />
399                <category android:name="android.intent.category.DEFAULT" />
400            </intent-filter>
401        </activity>
402
403        <!-- Attaches a photo to a contact. Started from external applications -->
404        <activity android:name="AttachImage"
405            android:label="@string/attachToContact"
406            android:taskAffinity="">
407            <intent-filter>
408                <action android:name="android.intent.action.ATTACH_DATA" />
409                <data android:mimeType="image/*" />
410                <category android:name="android.intent.category.DEFAULT" />
411            </intent-filter>
412            />
413        </activity>
414
415        <!-- Makes .ContactsListActivity the search target for any activity in Contacts -->
416        <meta-data
417            android:name="android.app.default_searchable"
418            android:value=".ContactsListActivity" />
419
420
421        <!-- LIVE FOLDERS -->
422        <activity
423            android:name=".ContactsLiveFolders$AllContacts"
424            android:label="@string/liveFolderAll"
425            android:icon="@drawable/ic_launcher_folder_live_contacts">
426            <intent-filter>
427                <action android:name="android.intent.action.CREATE_LIVE_FOLDER" />
428                <category android:name="android.intent.category.DEFAULT" />
429            </intent-filter>
430        </activity>
431
432        <activity
433            android:name=".ContactsLiveFolders$StarredContacts"
434            android:label="@string/liveFolderFavorites"
435            android:icon="@drawable/ic_launcher_folder_live_contacts_starred">
436            <intent-filter>
437                <action android:name="android.intent.action.CREATE_LIVE_FOLDER" />
438                <category android:name="android.intent.category.DEFAULT" />
439            </intent-filter>
440        </activity>
441
442        <activity
443            android:name=".ContactsLiveFolders$PhoneContacts"
444            android:label="@string/liveFolderPhone"
445            android:icon="@drawable/ic_launcher_folder_live_contacts_phone">
446            <intent-filter>
447                <action android:name="android.intent.action.CREATE_LIVE_FOLDER" />
448                <category android:name="android.intent.category.DEFAULT" />
449            </intent-filter>
450        </activity>
451
452        <activity android:name=".ImportVCardActivity"
453            android:theme="@style/BackgroundOnly">
454            <intent-filter>
455                <action android:name="android.intent.action.VIEW" />
456                <data android:mimeType="text/directory" />
457                <data android:mimeType="text/x-vcard" />
458                <category android:name="android.intent.category.DEFAULT" />
459            </intent-filter>
460        </activity>
461
462        <activity android:name=".ExportVCardActivity"
463            android:theme="@style/BackgroundOnly" />
464    </application>
465</manifest>
466