1<?xml version="1.0" encoding="utf-8"?>
2<!--
3     Copyright (C) 2012 The Android Open Source Project
4
5     Licensed under the Apache License, Version 2.0 (the "License");
6     you may not use this file except in compliance with the License.
7     You may obtain a copy of the License at
8
9          http://www.apache.org/licenses/LICENSE-2.0
10
11     Unless required by applicable law or agreed to in writing, software
12     distributed under the License is distributed on an "AS IS" BASIS,
13     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14     See the License for the specific language governing permissions and
15     limitations under the License.
16-->
17<manifest xmlns:android="http://schemas.android.com/apk/res/android"
18    package="com.android.mail"
19    android:versionCode="1"
20    android:versionName="1.0" >
21
22    <!-- Allows mail to access the user's contacts, for email address auto-completion -->
23    <uses-permission android:name="android.permission.READ_CONTACTS"/>
24    <!-- Allows access to EmailProvider (EAS/IMAP/POP3) -->
25    <uses-permission android:name="com.android.email.permission.ACCESS_PROVIDER"/>
26    <uses-permission android:name="com.android.email.permission.READ_ATTACHMENT"/>
27    <uses-permission android:name="android.permission.NFC" />
28
29    <!-- This needs to be present when we are doing unbundled releases. -->
30    <uses-sdk android:targetSdkVersion="21" android:minSdkVersion="14" />
31
32    <application
33        android:icon="@mipmap/ic_launcher_mail"
34        android:label="@string/app_name"
35        android:theme="@style/UnifiedEmailTheme"
36        android:supportsRtl="false" >
37        <!-- Enable search in all activities -->
38        <meta-data android:name="android.app.default_searchable"
39            android:value=".ui.MailActivity" />
40        <!-- TODO: add a permission on this -->
41        <activity
42            android:label="@string/app_name"
43            android:name=".ui.MailActivity"
44            android:launchMode="singleTop"
45            android:theme="@style/MailActivityTheme"
46            android:windowSoftInputMode="stateAlwaysHidden|adjustPan">
47            <intent-filter >
48                <action android:name="android.intent.action.MAIN" />
49                <category android:name="android.intent.category.LAUNCHER" />
50            </intent-filter>
51            <intent-filter>
52                <action android:name="android.intent.action.VIEW" />
53                <category android:name="android.intent.category.DEFAULT" />
54                <data android:scheme="content"/>
55                <data android:mimeType="application/mail-ls" />
56            </intent-filter>
57            <intent-filter>
58                <action android:name="android.intent.action.SEARCH" />
59                <category android:name="android.intent.category.DEFAULT" />
60            </intent-filter>
61        </activity>
62        <activity android:name=".compose.ComposeActivity"
63            android:theme="@style/ComposeTheme">
64            <intent-filter>
65                <action android:name="android.intent.action.VIEW" />
66                <action android:name="android.intent.action.SENDTO" />
67                <category android:name="android.intent.category.DEFAULT" />
68                <category android:name="android.intent.category.BROWSABLE" />
69                <data android:scheme="mailto" />
70            </intent-filter>
71
72            <intent-filter>
73                <action android:name="android.nfc.action.NDEF_DISCOVERED" />
74                <category android:name="android.intent.category.DEFAULT" />
75                <data android:scheme="mailto" />
76           </intent-filter>
77
78            <intent-filter android:label="@string/compose">
79                <action android:name="android.intent.action.SEND" />
80                <category android:name="android.intent.category.DEFAULT" />
81                <data android:mimeType="*/*" />
82            </intent-filter>
83
84            <intent-filter android:label="@string/compose">
85                <action android:name="android.intent.action.SEND_MULTIPLE" />
86                <category android:name="android.intent.category.DEFAULT" />
87                <data android:mimeType="*/*" />
88            </intent-filter>
89        </activity>
90
91        <activity android:name=".ui.CreateShortcutActivity"
92            android:theme="@style/ShortcutWidgetTheme"
93            android:label="@string/activity_folder_selection" />
94
95        <activity android:name=".ui.FolderSelectionActivity"
96            android:theme="@style/ShortcutWidgetTheme"
97            android:label="@string/activity_folder_selection" />
98
99        <activity android:name=".ui.MailboxSelectionActivity"
100            android:theme="@style/InvisibleShortcutWidgetTheme"
101            android:label="@string/app_name" >
102            <intent-filter>
103                <action android:name="android.appwidget.action.APPWIDGET_CONFIGURE" />
104            </intent-filter>
105        </activity>
106
107        <activity
108            android:name=".photo.MailPhotoViewActivity"
109            android:label="@string/app_name"
110            android:theme="@style/MailPhotoViewTheme" >
111        </activity>
112        <activity
113                android:name=".browse.EmlViewerActivity"
114                android:label="@string/app_name"
115                android:theme="@style/UnifiedEmailTheme" >
116            <intent-filter>
117                <action android:name="android.intent.action.VIEW" />
118                <category android:name="android.intent.category.DEFAULT" />
119                <data android:mimeType="message/rfc822" />
120                <data android:mimeType="application/eml" />
121            </intent-filter>
122        </activity>
123
124        <activity android:name=".ui.settings.MailPreferenceActivity"
125                  android:label="@string/activity_preferences"
126                  android:exported="false">
127        </activity>
128
129        <provider
130                android:authorities="com.android.mail.accountcache"
131                android:label="@string/account_cache_provider"
132                android:multiprocess="false"
133                android:name=".providers.UnifiedAccountCacheProvider" >
134            <grant-uri-permission android:pathPattern=".*" />
135        </provider>
136
137        <provider
138            android:authorities="com.android.mail.mockprovider"
139            android:label="@string/mock_content_provider"
140            android:multiprocess="false"
141            android:name=".providers.protos.mock.MockUiProvider" >
142            <grant-uri-permission android:pathPattern=".*" />
143        </provider>
144
145        <provider
146            android:authorities="com.android.mail.conversation.provider"
147            android:label="@string/conversation_content_provider"
148            android:multiprocess="false"
149            android:name=".browse.UnifiedConversationProvider" >
150            <grant-uri-permission android:pathPattern=".*" />
151        </provider>
152
153        <provider
154                android:authorities="@string/eml_attachment_provider"
155                android:multiprocess="false"
156                android:exported="false"
157                android:name="com.android.mail.providers.EmlAttachmentProvider" >
158            <grant-uri-permission android:pathPattern=".*" />
159        </provider>
160
161        <service android:name=".compose.EmptyService"/>
162
163        <!-- Widget -->
164        <receiver android:name=".widget.WidgetProvider" android:label="@string/app_name">
165            <intent-filter>
166                <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
167            </intent-filter>
168            <intent-filter>
169                <action android:name="com.android.mail.ACTION_NOTIFY_DATASET_CHANGED" />
170            </intent-filter>
171            <meta-data android:name="android.appwidget.provider"
172                       android:resource="@xml/widget_info" />
173        </receiver>
174        <service android:name=".widget.WidgetService"
175                 android:permission="android.permission.BIND_REMOTEVIEWS"
176                 android:exported="false" />
177        <service android:name=".MailLogService"/>
178        <service android:name=".browse.EmlTempFileDeletionService" />
179
180    </application>
181
182</manifest>
183