mobile/android/base/AndroidManifest.xml.in

Wed, 31 Dec 2014 07:22:50 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 07:22:50 +0100
branch
TOR_BUG_3246
changeset 4
fc2d59ddac77
permissions
-rw-r--r--

Correct previous dual key logic pending first delivery installment.

     1 #filter substitution
     2 <?xml version="1.0" encoding="utf-8"?>
     3 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     4       package="@ANDROID_PACKAGE_NAME@"
     5       android:installLocation="auto"
     6       android:versionCode="@ANDROID_VERSION_CODE@"
     7       android:versionName="@MOZ_APP_VERSION@"
     8 #ifdef MOZ_ANDROID_SHARED_ID
     9       android:sharedUserId="@MOZ_ANDROID_SHARED_ID@"
    10 #endif
    11       >
    12     <uses-sdk android:minSdkVersion="8"
    13               android:targetSdkVersion="@ANDROID_TARGET_SDK@"/>
    15 #include ../services/manifests/AnnouncementsAndroidManifest_permissions.xml.in
    16 #include ../services/manifests/FxAccountAndroidManifest_permissions.xml.in
    17 #include ../services/manifests/HealthReportAndroidManifest_permissions.xml.in
    18 #include ../services/manifests/SyncAndroidManifest_permissions.xml.in
    20 #ifndef RELEASE_BUILD
    21     <uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
    22     <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    23 #endif
    24     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    25     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    26     <uses-permission android:name="android.permission.INTERNET"/>
    27     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    28     <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/>
    29     <uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT"/>
    30     <uses-permission android:name="com.android.browser.permission.READ_HISTORY_BOOKMARKS"/>
    32     <uses-permission android:name="android.permission.WAKE_LOCK"/>
    33     <uses-permission android:name="android.permission.VIBRATE"/>
    34     <uses-permission android:name="@ANDROID_PACKAGE_NAME@.permissions.PASSWORD_PROVIDER"/>
    35     <uses-permission android:name="@ANDROID_PACKAGE_NAME@.permissions.BROWSER_PROVIDER"/>
    36     <uses-permission android:name="@ANDROID_PACKAGE_NAME@.permissions.FORMHISTORY_PROVIDER"/>
    38 #ifdef MOZ_WEBSMS_BACKEND
    39     <!-- WebSMS -->
    40     <uses-permission android:name="android.permission.SEND_SMS"/>
    41     <uses-permission android:name="android.permission.RECEIVE_SMS"/>
    42     <uses-permission android:name="android.permission.WRITE_SMS"/>
    43     <uses-permission android:name="android.permission.READ_SMS"/>
    44 #endif
    46     <uses-feature android:name="android.hardware.location" android:required="false"/>
    47     <uses-feature android:name="android.hardware.location.gps" android:required="false"/>
    48     <uses-feature android:name="android.hardware.touchscreen"/>
    50 #ifdef NIGHTLY_BUILD
    51     <!-- Contacts API -->
    52     <uses-permission android:name="android.permission.READ_CONTACTS"/>
    53     <uses-permission android:name="android.permission.WRITE_CONTACTS"/>
    54     <uses-permission android:name="android.permission.GET_ACCOUNTS"/>
    55 #endif
    57 #ifdef MOZ_ANDROID_BEAM
    58     <!-- Android Beam support -->
    59     <uses-permission android:name="android.permission.NFC"/>
    60     <uses-feature android:name="android.hardware.nfc" android:required="false"/>
    61 #endif
    63 #ifdef MOZ_WEBRTC
    64     <uses-permission android:name="android.permission.RECORD_AUDIO"/>
    65     <uses-feature android:name="android.hardware.audio.low_latency" android:required="false"/>
    66     <uses-feature android:name="android.hardware.camera.any" android:required="false"/>
    67     <uses-feature android:name="android.hardware.microphone" android:required="false"/>
    68 #endif
    69     <uses-permission android:name="android.permission.CAMERA" />
    70     <uses-feature android:name="android.hardware.camera" android:required="false"/>
    71     <uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
    73     <!-- App requires OpenGL ES 2.0 -->
    74     <uses-feature android:glEsVersion="0x00020000" android:required="true" />
    76     <application android:label="@string/moz_app_displayname"
    77 		 android:icon="@drawable/icon"
    78                  android:name="org.mozilla.gecko.GeckoApplication"
    79 		 android:hardwareAccelerated="true"
    80 #if MOZILLA_OFFICIAL
    81 		 android:debuggable="false">
    82 #else
    83 		 android:debuggable="true">
    84 #endif
    86         <!-- If the windowSoftInputMode adjust* flag changes below, the
    87              setSoftInputMode call in BrowserSearch#onStop must also be updated. -->
    88         <activity android:name=".App"
    89                   android:label="@string/moz_app_displayname"
    90                   android:taskAffinity="@ANDROID_PACKAGE_NAME@.BROWSER"
    91                   android:alwaysRetainTaskState="true"
    92                   android:configChanges="keyboard|keyboardHidden|mcc|mnc|orientation|screenSize"
    93                   android:windowSoftInputMode="stateUnspecified|adjustResize"
    94                   android:launchMode="singleTask"
    95                   android:theme="@style/Gecko.App">
    96             <intent-filter>
    97                 <action android:name="android.intent.action.MAIN" />
    98                 <category android:name="android.intent.category.LAUNCHER" />
    99             </intent-filter>
   100             <intent-filter>
   101                 <action android:name="org.mozilla.gecko.ACTION_ALERT_CALLBACK" />
   102             </intent-filter>
   104             <intent-filter>
   105                 <action android:name="org.mozilla.gecko.UPDATE"/>
   106                 <category android:name="android.intent.category.DEFAULT" />
   107             </intent-filter>
   109             <!-- Default browser intents -->
   110             <intent-filter>
   111                 <action android:name="android.intent.action.VIEW" />
   112                 <category android:name="android.intent.category.DEFAULT" />
   113                 <category android:name="android.intent.category.BROWSABLE" />
   114                 <data android:scheme="http" />
   115                 <data android:scheme="https" />
   116                 <data android:scheme="about" />
   117                 <data android:scheme="javascript" />
   118             </intent-filter>
   119             <intent-filter>
   120                 <action android:name="android.intent.action.VIEW" />
   121                 <category android:name="android.intent.category.BROWSABLE" />
   122                 <category android:name="android.intent.category.DEFAULT" />
   123                 <data android:scheme="file" />
   124                 <data android:scheme="http" />
   125                 <data android:scheme="https" />
   126                 <data android:mimeType="text/html"/>
   127                 <data android:mimeType="text/plain"/>
   128                 <data android:mimeType="application/xhtml+xml"/>
   129             </intent-filter>
   131             <intent-filter>
   132                 <action android:name="android.intent.action.WEB_SEARCH" />
   133                 <category android:name="android.intent.category.DEFAULT" />
   134                 <category android:name="android.intent.category.BROWSABLE" />
   135                 <data android:scheme="" />
   136                 <data android:scheme="http" />
   137                 <data android:scheme="https" />
   138             </intent-filter>
   140             <intent-filter>
   141                 <action android:name="android.intent.action.SEARCH" />
   142             </intent-filter>
   144             <!-- For XPI installs from websites and the download manager. -->
   145             <intent-filter>
   146                 <action android:name="android.intent.action.VIEW" />
   147                 <category android:name="android.intent.category.DEFAULT" />
   148                 <data android:scheme="file" />
   149                 <data android:scheme="http" />
   150                 <data android:scheme="https" />
   151                 <data android:mimeType="application/x-xpinstall" />
   152             </intent-filter>
   154             <!-- For XPI installs from file: URLs. -->
   155             <intent-filter>
   156                 <action android:name="android.intent.action.VIEW" />
   157                 <category android:name="android.intent.category.DEFAULT" />
   158                 <data android:host="" />
   159                 <data android:scheme="file" />
   160                 <data android:pathPattern=".*\\.xpi" />
   161             </intent-filter>
   163 #ifdef MOZ_ANDROID_BEAM
   164             <intent-filter>
   165                 <action android:name="android.nfc.action.NDEF_DISCOVERED"/>
   166                 <category android:name="android.intent.category.DEFAULT" />
   167                 <data android:scheme="http" />
   168                 <data android:scheme="https" />
   169             </intent-filter>
   170 #endif
   172             <meta-data android:name="android.app.searchable"
   173                        android:resource="@xml/searchable" />
   175             <!-- For debugging -->
   176             <intent-filter>
   177                 <action android:name="org.mozilla.gecko.DEBUG" />
   178                 <category android:name="android.intent.category.DEFAULT" />
   179             </intent-filter>
   180         </activity>
   182 #ifdef MOZ_ANDROID_SYNTHAPKS
   183         <activity android:name="org.mozilla.gecko.webapp.Dispatcher"
   184             android:noHistory="true" >
   185             <intent-filter>
   186                 <!-- catch links from synthetic apks -->
   187                 <action android:name="android.intent.action.VIEW" />
   188                 <category android:name="android.intent.category.DEFAULT" />
   189                 <data android:mimeType="application/webapp" />
   190             </intent-filter>
   191         </activity>
   193         <receiver android:name="org.mozilla.gecko.webapp.UninstallListener" >
   194           <intent-filter>
   195              <action android:name="android.intent.action.PACKAGE_REMOVED" />
   196              <data android:scheme="package" />
   197           </intent-filter>
   198         </receiver>
   200         <receiver android:name="org.mozilla.gecko.webapp.TaskKiller">
   201           <intent-filter>
   202              <action android:name="org.mozilla.webapp.TASK_REMOVED" />
   203              <category android:name="android.intent.category.DEFAULT" />
   204           </intent-filter>
   205         </receiver>
   206 #endif
   208         <activity android:name=".Webapp"
   209                   android:label="@string/webapp_generic_name"
   210                   android:configChanges="keyboard|keyboardHidden|mcc|mnc|orientation|screenSize"
   211                   android:windowSoftInputMode="stateUnspecified|adjustResize"
   212                   android:launchMode="singleTask"
   213                   android:taskAffinity="org.mozilla.gecko.WEBAPP"
   214                   android:process=":@ANDROID_PACKAGE_NAME@.Webapp"
   215                   android:excludeFromRecents="true"
   216                   android:theme="@style/Gecko.App">
   217             <intent-filter>
   218                 <action android:name="org.mozilla.gecko.WEBAPP" />
   219             </intent-filter>
   220             <intent-filter>
   221                 <action android:name="org.mozilla.gecko.ACTION_ALERT_CALLBACK" />
   222             </intent-filter>
   223         </activity>
   225         <!-- Declare a predefined number of Webapp<num> activities. These are
   226              used so that each web app can launch in its own process. Keep
   227              this number in sync with the total number of web apps handled in
   228              WebappAllocator. -->
   230 #define FRAGMENT WebappManifestFragment.xml.frag.in
   231 #include WebappFragmentRepeater.inc
   233         <!-- Masquerade as the Resolver so that we can be opened from the Marketplace. -->
   234         <activity-alias
   235             android:name="com.android.internal.app.ResolverActivity"
   236             android:targetActivity=".App"
   237             android:exported="true" />
   239         <receiver android:name="org.mozilla.gecko.GeckoUpdateReceiver">
   240             <intent-filter>
   241                 <action android:name="@ANDROID_PACKAGE_NAME@.CHECK_UPDATE_RESULT" />
   242             </intent-filter>
   243         </receiver>
   245         <receiver android:name="org.mozilla.gecko.GeckoMessageReceiver"
   246                   android:permission="@ANDROID_PACKAGE_NAME@.permissions.PASSWORD_PROVIDER">
   247             <intent-filter>
   248                   <action android:name="org.mozilla.gecko.INIT_PW"></action>
   249             </intent-filter>
   250         </receiver>
   252         <receiver android:name="org.mozilla.gecko.ReferrerReceiver" android:exported="true">
   253             <intent-filter>
   254                 <action android:name="com.android.vending.INSTALL_REFERRER" />
   255             </intent-filter>
   256         </receiver>
   258         <activity android:name="org.mozilla.gecko.Restarter"
   259                   android:process="@ANDROID_PACKAGE_NAME@Restarter"
   260                   android:noHistory="true"
   261                   android:theme="@style/Gecko">
   262           <intent-filter>
   263             <action android:name="org.mozilla.gecko.restart"/>
   264             <action android:name="org.mozilla.gecko.restart_update"/>
   265           </intent-filter>
   266         </activity>
   268 #include ../services/manifests/AnnouncementsAndroidManifest_activities.xml.in
   269 #include ../services/manifests/FxAccountAndroidManifest_activities.xml.in
   270 #include ../services/manifests/HealthReportAndroidManifest_activities.xml.in
   271 #include ../services/manifests/SyncAndroidManifest_activities.xml.in
   273 #if MOZ_CRASHREPORTER
   274   <activity android:name="org.mozilla.gecko.CrashReporter"
   275             android:label="@string/crash_reporter_title"
   276             android:icon="@drawable/crash_reporter"
   277             android:theme="@style/Gecko"
   278             android:exported="false"
   279             android:excludeFromRecents="true">
   280           <intent-filter>
   281             <action android:name="org.mozilla.gecko.reportCrash" />
   282           </intent-filter>
   283 	</activity>
   284 #endif
   286         <activity android:name="org.mozilla.gecko.VideoPlayer"
   287                   android:configChanges="keyboard|keyboardHidden|mcc|mnc|orientation"
   288                   android:theme="@android:style/Theme.NoTitleBar">
   289             <intent-filter>
   290                 <action android:name="org.mozilla.gecko.PLAY_VIDEO" />
   291             </intent-filter>
   292         </activity>
   294         <activity android:name="org.mozilla.gecko.preferences.GeckoPreferences"
   295                   android:theme="@style/Gecko.Preferences"
   296                   android:label="@string/settings_title"
   297                   android:configChanges="orientation|screenSize"
   298                   android:excludeFromRecents="true"/>
   300         <activity android:name="org.mozilla.gecko.home.HomePanelPicker"
   301                   android:theme="@style/Gecko.TitleDialog"
   302                   android:label="@string/home_add_panel_title"
   303                   android:excludeFromRecents="true" />
   305         <provider android:name="org.mozilla.gecko.db.BrowserProvider"
   306                   android:authorities="@ANDROID_PACKAGE_NAME@.db.browser"
   307                   android:permission="@ANDROID_PACKAGE_NAME@.permissions.BROWSER_PROVIDER">
   309             <path-permission android:pathPrefix="/search_suggest_query"
   310                              android:readPermission="android.permission.GLOBAL_SEARCH" />
   312         </provider>
   314         <!--
   315           Ensure that passwords provider runs in its own process. (Bug 718760.)
   316           Process name is per-application to avoid loading CPs from multiple
   317           Fennec versions into the same process. (Bug 749727.)
   318           Process name is a mangled version to avoid a Talos bug. (Bug 750548.)
   319           -->
   320         <provider android:name="org.mozilla.gecko.db.PasswordsProvider"
   321                   android:label="@string/sync_configure_engines_title_passwords"
   322                   android:authorities="@ANDROID_PACKAGE_NAME@.db.passwords"
   323                   android:permission="@ANDROID_PACKAGE_NAME@.permissions.PASSWORD_PROVIDER"
   324                   android:process="@MANGLED_ANDROID_PACKAGE_NAME@.PasswordsProvider"/>
   326         <provider android:name="org.mozilla.gecko.db.FormHistoryProvider"
   327                   android:label="@string/sync_configure_engines_title_history"
   328                   android:authorities="@ANDROID_PACKAGE_NAME@.db.formhistory"
   329                   android:permission="@ANDROID_PACKAGE_NAME@.permissions.FORMHISTORY_PROVIDER"
   330                   android:protectionLevel="signature"/>
   332         <provider android:name="org.mozilla.gecko.GeckoProfilesProvider"
   333                   android:authorities="@ANDROID_PACKAGE_NAME@.profiles"/>
   335         <provider android:name="org.mozilla.gecko.db.TabsProvider"
   336                   android:label="@string/sync_configure_engines_title_tabs"
   337                   android:authorities="@ANDROID_PACKAGE_NAME@.db.tabs"
   338                   android:permission="@ANDROID_PACKAGE_NAME@.permissions.BROWSER_PROVIDER"/>
   340         <provider android:name="org.mozilla.gecko.db.HomeProvider"
   341                   android:authorities="@ANDROID_PACKAGE_NAME@.db.home"
   342                   android:permission="@ANDROID_PACKAGE_NAME@.permissions.BROWSER_PROVIDER"/>
   344         <provider android:name="org.mozilla.gecko.db.ReadingListProvider"
   345                   android:authorities="@ANDROID_PACKAGE_NAME@.db.readinglist"
   346                   android:permission="@ANDROID_PACKAGE_NAME@.permissions.BROWSER_PROVIDER"/>
   348         <service
   349             android:exported="false"
   350             android:name="org.mozilla.gecko.updater.UpdateService"
   351             android:process="@MANGLED_ANDROID_PACKAGE_NAME@.UpdateService">
   352         </service>
   354         <service
   355             android:exported="false"
   356             android:name="org.mozilla.gecko.NotificationService">
   357         </service>
   360 #include ../services/manifests/AnnouncementsAndroidManifest_services.xml.in
   361 #include ../services/manifests/FxAccountAndroidManifest_services.xml.in
   362 #include ../services/manifests/HealthReportAndroidManifest_services.xml.in
   363 #include ../services/manifests/SyncAndroidManifest_services.xml.in
   365     </application>
   367     <permission android:name="@ANDROID_PACKAGE_NAME@.permissions.BROWSER_PROVIDER"
   368                 android:protectionLevel="signature"/>
   370     <permission android:name="@ANDROID_PACKAGE_NAME@.permissions.PASSWORD_PROVIDER"
   371                 android:protectionLevel="signature"/>
   373     <permission android:name="@ANDROID_PACKAGE_NAME@.permissions.FORMHISTORY_PROVIDER"
   374                 android:protectionLevel="signature"/>
   376 </manifest>

mercurial