Bug 1840210 - Rename mozac_ic_shield to mozac_ic_shield_24
[gecko.git] / mobile / android / focus-android / app / src / main / AndroidManifest.xml
blob8d7dd08bd2a372bd65b82862698034b3de99b9b5
1 <?xml version="1.0" encoding="utf-8"?>
2 <!-- This Source Code Form is subject to the terms of the Mozilla Public
3    - License, v. 2.0. If a copy of the MPL was not distributed with this
4    - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
5 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
6     xmlns:tools="http://schemas.android.com/tools">
8     <uses-permission android:name="android.permission.INTERNET" />
9     <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
10     <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
11     <uses-permission android:name="android.permission.READ_PHONE_STATE" tools:node="remove" />
12     <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- Used by sentry. -->
13     <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
14     <uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
15     <!-- Needed to prompt the user to give permission for camera access -->
16     <uses-permission android:name="android.permission.CAMERA" />
17     <!-- Needed to prompt the user to give permission to install a downloaded apk -->
18     <uses-permission-sdk-23 android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
20     <uses-feature android:name="android.hardware.fingerprint" android:required="false"/>
21     <uses-permission-sdk-23 android:name="android.permission.USE_FINGERPRINT"/>
23     <!-- Permission needed to publish the app on Samsung AppStore -->
24     <uses-permission android:name="com.samsung.android.providers.context.permission.WRITE_USE_APP_FEATURE_SURVEY"/>
26     <!-- Needed to interact with all apps installed on a device -->
27     <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"
28         tools:ignore="QueryAllPackagesPermission" />
30     <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
31     <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
32     <uses-permission android:name="android.permission.RECORD_AUDIO" />
34     <!-- Needed for Google Play policy https://support.google.com/googleplay/android-developer/answer/6048248 -->
35     <uses-permission android:name="com.google.android.gms.permission.AD_ID"/>
37     <!-- Needed to post notifications on devices with Android 13 and later-->
38     <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
40     <!-- Needed for uploading media files on devices with Android 13 and later. -->
41     <uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
42     <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
43     <uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />
45     <application
46         android:allowBackup="false"
47         android:extractNativeLibs="true"
48         android:icon="@mipmap/ic_launcher"
49         android:label="@string/app_name"
50         android:supportsRtl="true"
51         android:theme="@style/Theme.App.Starting"
52         android:name=".FocusApplication"
53         android:usesCleartextTraffic="true">
55         <activity
56             android:name=".activity.IntentReceiverActivity"
57             android:exported="true">
58             <intent-filter>
59                 <action android:name="android.intent.action.VIEW" />
60                 <category android:name="android.intent.category.DEFAULT" />
61                 <category android:name="android.intent.category.BROWSABLE" />
62                 <data android:scheme="http" />
63                 <data android:scheme="https" />
64             </intent-filter>
66             <intent-filter>
67                 <action android:name="android.intent.action.VIEW" />
68                 <category android:name="android.intent.category.BROWSABLE" />
69                 <category android:name="android.intent.category.DEFAULT" />
70                 <data android:scheme="http" />
71                 <data android:scheme="https" />
72                 <data android:mimeType="text/html"/>
73                 <data android:mimeType="text/plain"/>
74                 <data android:mimeType="application/xhtml+xml"/>
75             </intent-filter>
77             <intent-filter>
78                 <action android:name="android.intent.action.SEND" />
79                 <category android:name="android.intent.category.DEFAULT" />
80                 <data android:mimeType="text/plain" />
81             </intent-filter>
83             <intent-filter>
84                 <action android:name="android.intent.action.ASSIST" />
85                 <category android:name="android.intent.category.DEFAULT" />
86             </intent-filter>
87         </activity>
89         <activity android:name=".activity.MainActivity"
90             android:launchMode="singleTask"
91             android:exported="true"
92             android:windowSoftInputMode="adjustResize|stateAlwaysHidden"
93             android:configChanges="orientation|screenSize|screenLayout|smallestScreenSize"
94             android:resizeableActivity="true"
95             android:supportsPictureInPicture="true"
96             android:label="@string/app_name"
97             tools:targetApi="n">
98             <intent-filter>
99                 <action android:name="android.intent.action.MAIN" />
101                 <category android:name="android.intent.category.LAUNCHER" />
102             </intent-filter>
104             <meta-data android:name="android.app.shortcuts" android:resource="@xml/shortcuts" />
105         </activity>
107         <activity
108             android:name=".activity.CrashListActivity"
109             android:exported="false"
110             android:theme="@style/Theme.AppCompat.NoActionBar"/>
112         <activity android:name=".activity.CustomTabActivity"
113             android:windowSoftInputMode="adjustResize|stateAlwaysHidden"
114             android:exported="false"
115             android:taskAffinity=""
116             android:persistableMode="persistNever"
117             android:autoRemoveFromRecents="false"
118             android:configChanges="orientation|screenSize|screenLayout|smallestScreenSize"
119             android:resizeableActivity="true"
120             android:supportsPictureInPicture="true"
121             android:label="@string/app_name"
122             android:theme="@style/AppTheme"
123             tools:targetApi="n" />
125         <activity android:name=".activity.TextActionActivity"
126             android:label="${textSelectionSearchAction}"
127             android:exported="true">
128             <intent-filter>
129                 <action android:name="android.intent.action.PROCESS_TEXT" />
130                 <category android:name="android.intent.category.DEFAULT" />
131                 <data android:mimeType="text/plain" />
132             </intent-filter>
133         </activity>
135         <activity android:name=".activity.InstallFirefoxActivity"
136             android:theme="@style/Theme.AppCompat.NoActionBar" />
138         <activity android:name=".activity.EraseShortcutActivity"
139             android:theme="@android:style/Theme.Translucent" />
141         <activity android:name=".activity.EraseAndOpenShortcutActivity"
142             android:theme="@android:style/Theme.Translucent" />
144         <activity
145             android:name=".searchwidget.VoiceSearchActivity"
146             android:excludeFromRecents="true"
147             android:taskAffinity=""
148             android:theme="@style/Theme.AppCompat.Translucent" />
150         <provider
151             android:authorities="${applicationId}.fileprovider"
152             android:name="androidx.core.content.FileProvider"
153             android:exported="false"
154             android:grantUriPermissions="true">
155             <meta-data
156                 android:name="android.support.FILE_PROVIDER_PATHS"
157                 android:resource="@xml/provider_paths"/>
158         </provider>
160         <service
161             android:name=".customtabs.CustomTabsService"
162             android:exported="true"
163             tools:ignore="ExportedService">
164             <intent-filter>
165                 <action android:name="android.support.customtabs.action.CustomTabsService" />
166             </intent-filter>
167         </service>
169         <service android:name=".downloads.DownloadService"
170             android:exported="false" />
172         <service android:name=".media.MediaSessionService"
173             android:foregroundServiceType="mediaPlayback"
174             android:exported="false" />
176         <service android:name=".session.SessionNotificationService"
177             android:exported="false" />
179         <meta-data android:name="android.webkit.WebView.MetricsOptOut"
180                    android:value="true" />
182         <receiver
183             android:name=".searchwidget.SearchWidgetProvider"
184             android:exported="true">
185             <intent-filter>
186                 <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
187             </intent-filter>
188             <meta-data
189                 android:name="android.appwidget.provider"
190                 android:resource="@xml/search_widget_info" />
191         </receiver>
193         <!-- Removes the default Workmanager initialization so that we can use on-demand initializer. -->
194         <provider
195             android:name="androidx.startup.InitializationProvider"
196             android:authorities="${applicationId}.androidx-startup"
197             android:exported="false"
198             tools:node="merge" >
199             <meta-data
200                 android:name="androidx.work.WorkManagerInitializer"
201                 android:value="androidx.startup"
202                 tools:node="remove" />
203         </provider>
205     </application>
207 </manifest>