Upstream version 10.38.208.0
[platform/framework/web/crosswalk.git] / src / chrome / android / shell / java / AndroidManifest.xml
1 <?xml version="1.0" encoding="utf-8"?>
2
3 <!-- Copyright 2014 The Chromium Authors. All rights reserved.
4
5      Use of this source code is governed by a BSD-style license that can be
6      found in the LICENSE file.
7  -->
8
9 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
10     package="org.chromium.chrome.shell">
11
12     <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="20" />
13     <permission android:name="org.chromium.chrome.shell.permission.SANDBOX"
14             android:protectionLevel="signature" />
15     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
16     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
17     <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
18     <uses-permission android:name="android.permission.CAMERA" />
19     <uses-permission android:name="android.permission.GET_ACCOUNTS"/>
20     <uses-permission android:name="android.permission.INTERNET"/>
21     <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
22     <uses-permission android:name="android.permission.RECORD_AUDIO"/>
23     <uses-permission android:name="android.permission.VIBRATE"/>
24     <uses-permission android:name="android.permission.WAKE_LOCK"/>
25     <uses-permission android:name="android.permission.READ_SYNC_SETTINGS"/>
26     <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
27     <uses-permission android:name="android.permission.USE_CREDENTIALS" />
28     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
29     <!-- Only Chrome can receive the messages and registration result for GCM -->
30     <permission android:name="org.chromium.chrome.shell.permission.C2D_MESSAGE"
31                 android:protectionLevel="signature" />
32     <uses-permission android:name="org.chromium.chrome.shell.permission.C2D_MESSAGE" />
33     <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
34
35     <application android:name="org.chromium.chrome.shell.ChromeShellApplication"
36             android:icon="@mipmap/app_icon"
37             android:label="Chrome Shell">
38         <activity android:name="org.chromium.chrome.shell.ChromeShellActivity"
39                   android:launchMode="singleTask"
40                   android:theme="@android:style/Theme.Holo.Light.NoActionBar"
41                   android:configChanges="orientation|keyboardHidden|keyboard|screenSize"
42                   android:hardwareAccelerated="true">
43               <intent-filter>
44                   <action android:name="android.intent.action.MAIN" />
45                   <category android:name="android.intent.category.LAUNCHER" />
46               </intent-filter>
47          </activity>
48         <activity android:name="org.chromium.sync.test.util.MockGrantCredentialsPermissionActivity"
49                   android:exported="true">
50             <intent-filter>
51                 <action android:name="android.intent.action.VIEW" />
52                 <category android:name="android.intent.category.DEFAULT" />
53             </intent-filter>
54         </activity>
55         <!-- The following service entries exist in order to allow us to
56              start more than one sandboxed process. -->
57
58         <!-- NOTE: If you change the values of "android:process" for any of the below services,
59              you also need to update kHelperProcessExecutableName in chrome_constants.cc. -->
60         <service android:name="org.chromium.content.app.SandboxedProcessService0"
61                  android:process=":sandboxed_process0"
62                  android:permission="org.chromium.content_shell.permission.SANDBOX"
63                  android:isolatedProcess="true"
64                  android:exported="false" />
65         <service android:name="org.chromium.content.app.SandboxedProcessService1"
66                  android:process=":sandboxed_process1"
67                  android:permission="org.chromium.content_shell.permission.SANDBOX"
68                  android:isolatedProcess="true"
69                  android:exported="false" />
70         <service android:name="org.chromium.content.app.SandboxedProcessService2"
71                  android:process=":sandboxed_process2"
72                  android:permission="org.chromium.content_shell.permission.SANDBOX"
73                  android:isolatedProcess="true"
74                  android:exported="false" />
75         <service android:name="org.chromium.content.app.SandboxedProcessService3"
76                  android:process=":sandboxed_process3"
77                  android:permission="org.chromium.content_shell.permission.SANDBOX"
78                  android:isolatedProcess="true"
79                  android:exported="false" />
80         <service android:name="org.chromium.content.app.SandboxedProcessService4"
81                  android:process=":sandboxed_process4"
82                  android:permission="org.chromium.content_shell.permission.SANDBOX"
83                  android:isolatedProcess="true"
84                  android:exported="false" />
85         <service android:name="org.chromium.content.app.SandboxedProcessService5"
86                  android:process=":sandboxed_process5"
87                  android:permission="org.chromium.content_shell.permission.SANDBOX"
88                  android:isolatedProcess="true"
89                  android:exported="false" />
90         <service android:name="org.chromium.content.app.SandboxedProcessService6"
91                  android:process=":sandboxed_process6"
92                  android:permission="org.chromium.content_shell.permission.SANDBOX"
93                  android:isolatedProcess="true"
94                  android:exported="false" />
95         <service android:name="org.chromium.content.app.SandboxedProcessService7"
96                  android:process=":sandboxed_process7"
97                  android:permission="org.chromium.content_shell.permission.SANDBOX"
98                  android:isolatedProcess="true"
99                  android:exported="false" />
100         <service android:name="org.chromium.content.app.SandboxedProcessService8"
101                  android:process=":sandboxed_process8"
102                  android:permission="org.chromium.content_shell.permission.SANDBOX"
103                  android:isolatedProcess="true"
104                  android:exported="false" />
105         <service android:name="org.chromium.content.app.SandboxedProcessService9"
106                  android:process=":sandboxed_process9"
107                  android:permission="org.chromium.content_shell.permission.SANDBOX"
108                  android:isolatedProcess="true"
109                  android:exported="false" />
110         <service android:name="org.chromium.content.app.SandboxedProcessService10"
111                  android:process=":sandboxed_process10"
112                  android:permission="org.chromium.content_shell.permission.SANDBOX"
113                  android:isolatedProcess="true"
114                  android:exported="false" />
115         <service android:name="org.chromium.content.app.SandboxedProcessService11"
116                  android:process=":sandboxed_process11"
117                  android:permission="org.chromium.content_shell.permission.SANDBOX"
118                  android:isolatedProcess="true"
119                  android:exported="false" />
120         <service android:name="org.chromium.content.app.SandboxedProcessService12"
121                  android:process=":sandboxed_process12"
122                  android:permission="org.chromium.content_shell.permission.SANDBOX"
123                  android:isolatedProcess="true"
124                  android:exported="false" />
125         <service android:name="org.chromium.content.app.SandboxedProcessService13"
126                  android:process=":sandboxed_process13"
127                  android:permission="org.chromium.content_shell.permission.SANDBOX"
128                  android:isolatedProcess="true"
129                  android:exported="false" />
130         <service android:name="org.chromium.content.app.SandboxedProcessService14"
131                  android:process=":sandboxed_process14"
132                  android:permission="org.chromium.content_shell.permission.SANDBOX"
133                  android:isolatedProcess="true"
134                  android:exported="false" />
135         <service android:name="org.chromium.content.app.SandboxedProcessService15"
136                  android:process=":sandboxed_process15"
137                  android:permission="org.chromium.content_shell.permission.SANDBOX"
138                  android:isolatedProcess="true"
139                  android:exported="false" />
140         <service android:name="org.chromium.content.app.SandboxedProcessService16"
141                  android:process=":sandboxed_process16"
142                  android:permission="org.chromium.content_shell.permission.SANDBOX"
143                  android:isolatedProcess="true"
144                  android:exported="false" />
145         <service android:name="org.chromium.content.app.SandboxedProcessService17"
146                  android:process=":sandboxed_process17"
147                  android:permission="org.chromium.content_shell.permission.SANDBOX"
148                  android:isolatedProcess="true"
149                  android:exported="false" />
150         <service android:name="org.chromium.content.app.SandboxedProcessService18"
151                  android:process=":sandboxed_process18"
152                  android:permission="org.chromium.content_shell.permission.SANDBOX"
153                  android:isolatedProcess="true"
154                  android:exported="false" />
155         <service android:name="org.chromium.content.app.SandboxedProcessService19"
156                  android:process=":sandboxed_process19"
157                  android:permission="org.chromium.content_shell.permission.SANDBOX"
158                  android:isolatedProcess="true"
159                  android:exported="false" />
160
161         <!-- Receiver for GCM messages. Rebroadcasts them locally for sync. -->
162         <receiver android:exported="true"
163                   android:name="com.google.ipc.invalidation.external.client.contrib.MultiplexingGcmListener$GCMReceiver"
164                   android:permission="com.google.android.c2dm.permission.SEND">
165             <intent-filter>
166                 <action android:name="com.google.android.c2dm.intent.RECEIVE" />
167                 <action android:name="com.google.android.c2dm.intent.REGISTRATION" />
168                 <category android:name="org.chromium.chrome.shell"/>
169             </intent-filter>
170         </receiver>
171         <service android:exported="false"
172                  android:name="com.google.ipc.invalidation.external.client.contrib.MultiplexingGcmListener">
173             <meta-data android:name="sender_ids"
174                        android:value="cloudprint.c2dm@gmail.com,ipc.invalidation@gmail.com"/>
175         </service>
176
177         <!-- Notification service for sync. -->
178         <meta-data android:name="ipc.invalidation.ticl.listener_service_class"
179                    android:value="org.chromium.sync.notifier.InvalidationService"/>
180         <service android:name="org.chromium.sync.notifier.InvalidationService"
181                  android:exported="false">
182             <intent-filter>
183                 <action android:name="com.google.ipc.invalidation.AUTH_TOKEN_REQUEST"/>
184             </intent-filter>
185         </service>
186         <service android:exported="false"
187                  android:name="com.google.ipc.invalidation.ticl.android2.TiclService"/>
188         <service android:exported="false"
189                  android:name="com.google.ipc.invalidation.ticl.android2.channel.AndroidMessageSenderService"/>
190         <receiver android:exported="false"
191                   android:name="com.google.ipc.invalidation.ticl.android2.AndroidInternalScheduler$AlarmReceiver"/>
192         <receiver android:exported="false"
193                   android:name="com.google.ipc.invalidation.external.client.contrib.AndroidListener$AlarmReceiver"/>
194
195         <!-- Notification service multiplexed GCM receiver -->
196         <service android:exported="false"
197                  android:name="com.google.ipc.invalidation.ticl.android2.channel.AndroidMessageReceiverService"
198                  android:enabled="true"/>
199         <receiver android:exported="false"
200                   android:name="com.google.ipc.invalidation.ticl.android2.channel.AndroidMessageReceiverService$Receiver">
201             <intent-filter>
202                 <action android:name="com.google.ipc.invalidation.gcmmplex.EVENT" />
203             </intent-filter>
204         </receiver>
205
206         <!-- GCMDriver multiplexed GCM receiver -->
207         <service android:exported="false"
208                  android:name="org.chromium.components.gcm_driver.GCMListener"/>
209         <receiver android:exported="false"
210                   android:name="org.chromium.components.gcm_driver.GCMListener$Receiver">
211             <intent-filter>
212                 <action android:name="com.google.ipc.invalidation.gcmmplex.EVENT" />
213             </intent-filter>
214         </receiver>
215
216         <provider android:name="org.chromium.chrome.browser.ChromeBrowserProvider"
217                   android:authorities="org.chromium.chrome.shell"
218                   android:exported="true" />
219
220         <!-- Provider for FileProvider. -->
221         <provider android:name="android.support.v4.content.FileProvider"
222             android:authorities="org.chromium.chrome.shell.FileProvider"
223             android:exported="false"
224             android:grantUriPermissions="true">
225             <meta-data android:name="android.support.FILE_PROVIDER_PATHS"
226                 android:resource="@xml/file_paths" />
227         </provider>
228
229         <!-- Sync adapter for browser sync. -->
230         <service android:exported="false"
231                  android:name="org.chromium.chrome.shell.sync.ChromeShellSyncAdapterService">
232             <intent-filter>
233                 <action android:name="android.content.SyncAdapter" />
234             </intent-filter>
235             <meta-data android:name="android.content.SyncAdapter"
236                        android:resource="@xml/syncadapter" />
237         </service>
238
239         <!-- Broadcast receiver that will be notified of account changes. -->
240         <receiver android:name="org.chromium.chrome.shell.signin.AccountsChangedReceiver">
241             <intent-filter>
242                 <action android:name="android.accounts.LOGIN_ACCOUNTS_CHANGED" />
243             </intent-filter>
244         </receiver>
245         <meta-data android:name="org.chromium.content.browser.SMART_CLIP_PROVIDER"
246                    android:value="org.chromium.content.browser.SmartClipProvider" />
247
248     </application>
249 </manifest>