Home | History | Annotate | Download | only in java
      1 <?xml version="1.0" encoding="utf-8"?>
      2 
      3 <!-- Copyright (c) 2012 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.testshell">
     11 
     12     <uses-sdk android:minSdkVersion="14" android:targetSdkVersion="19" />
     13     <permission android:name="org.chromium.chrome.testshell.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.CAMERA" />
     18     <uses-permission android:name="android.permission.GET_ACCOUNTS"/>
     19     <uses-permission android:name="android.permission.INTERNET"/>
     20     <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
     21     <uses-permission android:name="android.permission.RECORD_AUDIO"/>
     22     <uses-permission android:name="android.permission.VIBRATE"/>
     23     <uses-permission android:name="android.permission.WAKE_LOCK"/>
     24     <uses-permission android:name="android.permission.READ_SYNC_SETTINGS"/>
     25     <uses-permission android:name="android.permission.WRITE_SYNC_SETTINGS" />
     26     <uses-permission android:name="android.permission.USE_CREDENTIALS" />
     27     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
     28     <!-- Only Chrome can receive the messages and registration result for GCM -->
     29     <permission android:name="org.chromium.chrome.testshell.permission.C2D_MESSAGE"
     30                 android:protectionLevel="signature" />
     31     <uses-permission android:name="org.chromium.chrome.testshell.permission.C2D_MESSAGE" />
     32     <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
     33 
     34     <application android:name="org.chromium.chrome.testshell.ChromiumTestShellApplication"
     35             android:icon="@mipmap/app_icon"
     36             android:label="Chrome Shell">
     37         <activity android:name="org.chromium.chrome.testshell.ChromiumTestShellActivity"
     38                   android:launchMode="singleTask"
     39                   android:theme="@android:style/Theme.Holo.Light.NoActionBar"
     40                   android:configChanges="orientation|keyboardHidden|keyboard|screenSize"
     41                   android:hardwareAccelerated="true">
     42               <intent-filter>
     43                   <action android:name="android.intent.action.MAIN" />
     44                   <category android:name="android.intent.category.LAUNCHER" />
     45               </intent-filter>
     46          </activity>
     47         <activity android:name="org.chromium.sync.test.util.MockGrantCredentialsPermissionActivity"
     48                   android:exported="true">
     49             <intent-filter>
     50                 <action android:name="android.intent.action.VIEW" />
     51                 <category android:name="android.intent.category.DEFAULT" />
     52             </intent-filter>
     53         </activity>
     54         <!-- The following service entries exist in order to allow us to
     55              start more than one sandboxed process. -->
     56 
     57         <!-- NOTE: If you change the values of "android:process" for any of the below services,
     58              you also need to update kHelperProcessExecutableName in chrome_constants.cc. -->
     59         <service android:name="org.chromium.content.app.SandboxedProcessService0"
     60                  android:process=":sandboxed_process0"
     61                  android:permission="org.chromium.content_shell.permission.SANDBOX"
     62                  android:isolatedProcess="true"
     63                  android:exported="false" />
     64         <service android:name="org.chromium.content.app.SandboxedProcessService1"
     65                  android:process=":sandboxed_process1"
     66                  android:permission="org.chromium.content_shell.permission.SANDBOX"
     67                  android:isolatedProcess="true"
     68                  android:exported="false" />
     69         <service android:name="org.chromium.content.app.SandboxedProcessService2"
     70                  android:process=":sandboxed_process2"
     71                  android:permission="org.chromium.content_shell.permission.SANDBOX"
     72                  android:isolatedProcess="true"
     73                  android:exported="false" />
     74         <service android:name="org.chromium.content.app.SandboxedProcessService3"
     75                  android:process=":sandboxed_process3"
     76                  android:permission="org.chromium.content_shell.permission.SANDBOX"
     77                  android:isolatedProcess="true"
     78                  android:exported="false" />
     79         <service android:name="org.chromium.content.app.SandboxedProcessService4"
     80                  android:process=":sandboxed_process4"
     81                  android:permission="org.chromium.content_shell.permission.SANDBOX"
     82                  android:isolatedProcess="true"
     83                  android:exported="false" />
     84         <service android:name="org.chromium.content.app.SandboxedProcessService5"
     85                  android:process=":sandboxed_process5"
     86                  android:permission="org.chromium.content_shell.permission.SANDBOX"
     87                  android:isolatedProcess="true"
     88                  android:exported="false" />
     89         <service android:name="org.chromium.content.app.SandboxedProcessService6"
     90                  android:process=":sandboxed_process6"
     91                  android:permission="org.chromium.content_shell.permission.SANDBOX"
     92                  android:isolatedProcess="true"
     93                  android:exported="false" />
     94         <service android:name="org.chromium.content.app.SandboxedProcessService7"
     95                  android:process=":sandboxed_process7"
     96                  android:permission="org.chromium.content_shell.permission.SANDBOX"
     97                  android:isolatedProcess="true"
     98                  android:exported="false" />
     99         <service android:name="org.chromium.content.app.SandboxedProcessService8"
    100                  android:process=":sandboxed_process8"
    101                  android:permission="org.chromium.content_shell.permission.SANDBOX"
    102                  android:isolatedProcess="true"
    103                  android:exported="false" />
    104         <service android:name="org.chromium.content.app.SandboxedProcessService9"
    105                  android:process=":sandboxed_process9"
    106                  android:permission="org.chromium.content_shell.permission.SANDBOX"
    107                  android:isolatedProcess="true"
    108                  android:exported="false" />
    109         <service android:name="org.chromium.content.app.SandboxedProcessService10"
    110                  android:process=":sandboxed_process10"
    111                  android:permission="org.chromium.content_shell.permission.SANDBOX"
    112                  android:isolatedProcess="true"
    113                  android:exported="false" />
    114         <service android:name="org.chromium.content.app.SandboxedProcessService11"
    115                  android:process=":sandboxed_process11"
    116                  android:permission="org.chromium.content_shell.permission.SANDBOX"
    117                  android:isolatedProcess="true"
    118                  android:exported="false" />
    119         <service android:name="org.chromium.content.app.SandboxedProcessService12"
    120                  android:process=":sandboxed_process12"
    121                  android:permission="org.chromium.content_shell.permission.SANDBOX"
    122                  android:isolatedProcess="true"
    123                  android:exported="false" />
    124 
    125         <!-- Receiver for GCM messages. Rebroadcasts them locally for sync. -->
    126         <receiver android:exported="true"
    127                   android:name="com.google.ipc.invalidation.external.client.contrib.MultiplexingGcmListener$GCMReceiver"
    128                   android:permission="com.google.android.c2dm.permission.SEND">
    129             <intent-filter>
    130                 <action android:name="com.google.android.c2dm.intent.RECEIVE" />
    131                 <action android:name="com.google.android.c2dm.intent.REGISTRATION" />
    132                 <category android:name="org.chromium.chrome.testshell"/>
    133             </intent-filter>
    134         </receiver>
    135         <service android:exported="false"
    136                  android:name="com.google.ipc.invalidation.external.client.contrib.MultiplexingGcmListener">
    137             <meta-data android:name="sender_ids"
    138                        android:value="cloudprint.c2dm (a] gmail.com,ipc.invalidation (a] gmail.com"/>
    139         </service>
    140 
    141         <!-- Notification service for sync. -->
    142         <meta-data android:name="ipc.invalidation.ticl.listener_service_class"
    143                    android:value="org.chromium.sync.notifier.InvalidationService"/>
    144         <service android:name="org.chromium.sync.notifier.InvalidationService"
    145                  android:exported="false">
    146             <intent-filter>
    147                 <action android:name="com.google.ipc.invalidation.AUTH_TOKEN_REQUEST"/>
    148             </intent-filter>
    149         </service>
    150         <service android:exported="false"
    151                  android:name="com.google.ipc.invalidation.ticl.android2.TiclService"/>
    152         <service android:exported="false"
    153                  android:name="com.google.ipc.invalidation.ticl.android2.channel.AndroidMessageSenderService"/>
    154         <receiver android:exported="false"
    155                   android:name="com.google.ipc.invalidation.ticl.android2.AndroidInternalScheduler$AlarmReceiver"/>
    156         <receiver android:exported="false"
    157                   android:name="com.google.ipc.invalidation.external.client.contrib.AndroidListener$AlarmReceiver"/>
    158 
    159         <!-- Notification service multiplexed GCM receiver -->
    160         <service android:exported="false"
    161                  android:name="com.google.ipc.invalidation.ticl.android2.channel.AndroidMessageReceiverService"
    162                  android:enabled="true"/>
    163         <receiver android:exported="false"
    164                   android:name="com.google.ipc.invalidation.ticl.android2.channel.AndroidMessageReceiverService$Receiver">
    165             <intent-filter>
    166                 <action android:name="com.google.ipc.invalidation.gcmmplex.EVENT" />
    167             </intent-filter>
    168         </receiver>
    169 
    170         <provider android:name="org.chromium.chrome.browser.ChromeBrowserProvider"
    171                   android:authorities="org.chromium.chrome.testshell"
    172                   android:exported="true" />
    173 
    174         <!-- Sync adapter for browser sync. -->
    175         <service android:exported="false"
    176                  android:name="org.chromium.chrome.testshell.sync.ChromiumTestShellSyncAdapterService">
    177             <intent-filter>
    178                 <action android:name="android.content.SyncAdapter" />
    179             </intent-filter>
    180             <meta-data android:name="android.content.SyncAdapter"
    181                        android:resource="@xml/syncadapter" />
    182         </service>
    183 
    184         <!-- Broadcast receiver that will be notified of account changes. -->
    185         <receiver android:name="org.chromium.chrome.testshell.signin.AccountsChangedReceiver">
    186             <intent-filter>
    187                 <action android:name="android.accounts.LOGIN_ACCOUNTS_CHANGED" />
    188             </intent-filter>
    189         </receiver>
    190     </application>
    191 </manifest>
    192