AndroidManifest.xml (35277B)
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 6 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 7 xmlns:tools="http://schemas.android.com/tools"> 8 9 <uses-permission android:name="android.permission.INTERNET" /> 10 11 <!-- Allows for storing and retrieving screenshots --> 12 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" 13 android:maxSdkVersion="32" /> 14 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" 15 android:maxSdkVersion="28" /> 16 17 <uses-permission android:name="android.permission.CAMERA" /> 18 19 <!-- This is needed because the android.permission.CAMERA above automatically 20 adds a requirements for camera hardware and we don't want add those restrictions --> 21 <uses-feature 22 android:name="android.hardware.camera" 23 android:required="false" /> 24 <uses-feature 25 android:name="android.hardware.camera.autofocus" 26 android:required="false" /> 27 28 <uses-permission android:name="android.permission.RECORD_AUDIO" /> 29 <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" /> 30 <uses-permission android:name="android.permission.VIBRATE" /> 31 <uses-permission android:name="android.permission.USE_BIOMETRIC" /> 32 33 <!-- tor-browser#43729: Disable access to the advertising ID --> 34 <uses-permission android:name="com.google.android.gms.permission.AD_ID" tools:node="remove" /> 35 36 <!-- Needed to prompt the user to give permission to install a downloaded apk --> 37 <uses-permission-sdk-23 android:name="android.permission.REQUEST_INSTALL_PACKAGES" /> 38 39 <!-- Needed to interact with all apps installed on a device --> 40 <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" 41 tools:ignore="QueryAllPackagesPermission" /> 42 43 <!-- Needed to post notifications on devices with Android 13 and later--> 44 <uses-permission android:name="android.permission.POST_NOTIFICATIONS" /> 45 46 <!-- Needed for uploading media files on devices with Android 13 and later. --> 47 <uses-permission android:name="android.permission.READ_MEDIA_AUDIO" /> 48 49 <!-- Needed to support Credential Manager with Android 14 and later. --> 50 <uses-permission android:name="android.permission.CREDENTIAL_MANAGER_SET_ORIGIN" /> 51 <uses-permission android:name="android.permission.CREDENTIAL_MANAGER_QUERY_CANDIDATE_CREDENTIALS" /> 52 53 <!-- Needed to get distribution information from partners. 54 This is NOT required for the adjust plugin. --> 55 <uses-permission android:name="com.adjust.preinstall.READ_PERMISSION"/> 56 57 <uses-permission android:name="${applicationId}.permission.PROFILER_INTERNAL" /> 58 59 <permission 60 android:name="${applicationId}.permission.PROFILER_INTERNAL" 61 android:protectionLevel="signature" /> 62 63 <application 64 android:name=".FenixApplication" 65 android:allowBackup="false" 66 android:icon="@mipmap/ic_launcher" 67 android:label="@string/app_name" 68 android:roundIcon="@mipmap/ic_launcher" 69 android:supportsRtl="true" 70 android:theme="@style/NormalTheme" 71 android:usesCleartextTraffic="false" 72 android:enableOnBackInvokedCallback="@bool/enableOnBackInvokedCallback" 73 tools:ignore="UnusedAttribute"> 74 75 <profileable 76 android:shell="true" 77 tools:targetApi="29" /> 78 79 <!-- 80 We inherited this entry (${applicationId}.App) from Fennec. We need to keep this as our 81 main launcher to avoid launcher icons on the home screen disappearing for all our users. 82 83 Note that `fennec*` build types override the targetActivity property in the Manifest 84 inside their source set. 85 --> 86 <activity-alias 87 android:name="${applicationId}.App" 88 android:exported="true" 89 android:targetActivity="HomeActivity"> 90 <intent-filter> 91 <action android:name="android.intent.action.MAIN" /> 92 93 <category android:name="android.intent.category.LAUNCHER" /> 94 </intent-filter> 95 96 <meta-data 97 android:name="android.app.shortcuts" 98 android:resource="@xml/shortcuts" /> 99 </activity-alias> 100 101 <activity-alias 102 android:name="${applicationId}.AlternativeApp" 103 android:enabled="false" 104 android:exported="true" 105 android:icon="@mipmap/ic_launcher_alternative" 106 android:roundIcon="@mipmap/ic_launcher_round_alternative" 107 android:targetActivity="HomeActivity"> 108 <intent-filter> 109 <action android:name="android.intent.action.MAIN" /> 110 <category android:name="android.intent.category.LAUNCHER" /> 111 </intent-filter> 112 <meta-data 113 android:name="android.app.shortcuts" 114 android:resource="@xml/shortcuts" /> 115 </activity-alias> 116 117 <!-- 118 Activity-alias entries used by the app icon selection feature. 119 Only one is enabled at a time to switch the launcher icon dynamically. 120 --> 121 <!-- Solid color icons --> 122 <!-- Alternative icons with different solid background colors. --> 123 <activity-alias 124 android:name="${applicationId}.AppSolidLight" 125 android:enabled="false" 126 android:exported="true" 127 android:icon="@mipmap/ic_launcher_solid_light" 128 android:roundIcon="@mipmap/ic_launcher_solid_light" 129 android:targetActivity="HomeActivity"> 130 <intent-filter> 131 <action android:name="android.intent.action.MAIN" /> 132 <category android:name="android.intent.category.LAUNCHER" /> 133 </intent-filter> 134 <meta-data 135 android:name="android.app.shortcuts" 136 android:resource="@xml/shortcuts" /> 137 </activity-alias> 138 139 <activity-alias 140 android:name="${applicationId}.AppSolidDark" 141 android:enabled="false" 142 android:exported="true" 143 android:icon="@mipmap/ic_launcher_solid_dark" 144 android:roundIcon="@mipmap/ic_launcher_solid_dark" 145 android:targetActivity="HomeActivity"> 146 <intent-filter> 147 <action android:name="android.intent.action.MAIN" /> 148 <category android:name="android.intent.category.LAUNCHER" /> 149 </intent-filter> 150 <meta-data 151 android:name="android.app.shortcuts" 152 android:resource="@xml/shortcuts" /> 153 </activity-alias> 154 155 <activity-alias 156 android:name="${applicationId}.AppSolidRed" 157 android:enabled="false" 158 android:exported="true" 159 android:icon="@mipmap/ic_launcher_solid_red" 160 android:roundIcon="@mipmap/ic_launcher_solid_red" 161 android:targetActivity="HomeActivity"> 162 <intent-filter> 163 <action android:name="android.intent.action.MAIN" /> 164 <category android:name="android.intent.category.LAUNCHER" /> 165 </intent-filter> 166 <meta-data 167 android:name="android.app.shortcuts" 168 android:resource="@xml/shortcuts" /> 169 </activity-alias> 170 171 <activity-alias 172 android:name="${applicationId}.AppSolidGreen" 173 android:enabled="false" 174 android:exported="true" 175 android:icon="@mipmap/ic_launcher_solid_green" 176 android:roundIcon="@mipmap/ic_launcher_solid_green" 177 android:targetActivity="HomeActivity"> 178 <intent-filter> 179 <action android:name="android.intent.action.MAIN" /> 180 <category android:name="android.intent.category.LAUNCHER" /> 181 </intent-filter> 182 <meta-data 183 android:name="android.app.shortcuts" 184 android:resource="@xml/shortcuts" /> 185 </activity-alias> 186 187 <activity-alias 188 android:name="${applicationId}.AppSolidBlue" 189 android:enabled="false" 190 android:exported="true" 191 android:icon="@mipmap/ic_launcher_solid_blue" 192 android:roundIcon="@mipmap/ic_launcher_solid_blue" 193 android:targetActivity="HomeActivity"> 194 <intent-filter> 195 <action android:name="android.intent.action.MAIN" /> 196 <category android:name="android.intent.category.LAUNCHER" /> 197 </intent-filter> 198 <meta-data 199 android:name="android.app.shortcuts" 200 android:resource="@xml/shortcuts" /> 201 </activity-alias> 202 203 <activity-alias 204 android:name="${applicationId}.AppSolidPurple" 205 android:enabled="false" 206 android:exported="true" 207 android:icon="@mipmap/ic_launcher_solid_purple" 208 android:roundIcon="@mipmap/ic_launcher_solid_purple" 209 android:targetActivity="HomeActivity"> 210 <intent-filter> 211 <action android:name="android.intent.action.MAIN" /> 212 <category android:name="android.intent.category.LAUNCHER" /> 213 </intent-filter> 214 <meta-data 215 android:name="android.app.shortcuts" 216 android:resource="@xml/shortcuts" /> 217 </activity-alias> 218 219 <activity-alias 220 android:name="${applicationId}.AppSolidPurpleDark" 221 android:enabled="false" 222 android:exported="true" 223 android:icon="@mipmap/ic_launcher_solid_purple_dark" 224 android:roundIcon="@mipmap/ic_launcher_solid_purple_dark" 225 android:targetActivity="HomeActivity"> 226 <intent-filter> 227 <action android:name="android.intent.action.MAIN" /> 228 <category android:name="android.intent.category.LAUNCHER" /> 229 </intent-filter> 230 <meta-data 231 android:name="android.app.shortcuts" 232 android:resource="@xml/shortcuts" /> 233 </activity-alias> 234 235 <!-- Gradient icons --> 236 <!-- Alternative icons with gradient-style background colors. --> 237 <activity-alias 238 android:name="${applicationId}.AppGradientSunrise" 239 android:enabled="false" 240 android:exported="true" 241 android:icon="@mipmap/ic_launcher_gradient_sunrise" 242 android:roundIcon="@mipmap/ic_launcher_gradient_sunrise" 243 android:targetActivity="HomeActivity"> 244 <intent-filter> 245 <action android:name="android.intent.action.MAIN" /> 246 <category android:name="android.intent.category.LAUNCHER" /> 247 </intent-filter> 248 <meta-data 249 android:name="android.app.shortcuts" 250 android:resource="@xml/shortcuts" /> 251 </activity-alias> 252 253 <activity-alias 254 android:name="${applicationId}.AppGradientGoldenHour" 255 android:enabled="false" 256 android:exported="true" 257 android:icon="@mipmap/ic_launcher_gradient_golden_hour" 258 android:roundIcon="@mipmap/ic_launcher_gradient_golden_hour" 259 android:targetActivity="HomeActivity"> 260 <intent-filter> 261 <action android:name="android.intent.action.MAIN" /> 262 <category android:name="android.intent.category.LAUNCHER" /> 263 </intent-filter> 264 <meta-data 265 android:name="android.app.shortcuts" 266 android:resource="@xml/shortcuts" /> 267 </activity-alias> 268 269 <activity-alias 270 android:name="${applicationId}.AppGradientSunset" 271 android:enabled="false" 272 android:exported="true" 273 android:icon="@mipmap/ic_launcher_gradient_sunset" 274 android:roundIcon="@mipmap/ic_launcher_gradient_sunset" 275 android:targetActivity="HomeActivity"> 276 <intent-filter> 277 <action android:name="android.intent.action.MAIN" /> 278 <category android:name="android.intent.category.LAUNCHER" /> 279 </intent-filter> 280 <meta-data 281 android:name="android.app.shortcuts" 282 android:resource="@xml/shortcuts" /> 283 </activity-alias> 284 285 <activity-alias 286 android:name="${applicationId}.AppGradientBlueHour" 287 android:enabled="false" 288 android:exported="true" 289 android:icon="@mipmap/ic_launcher_gradient_blue_hour" 290 android:roundIcon="@mipmap/ic_launcher_gradient_blue_hour" 291 android:targetActivity="HomeActivity"> 292 <intent-filter> 293 <action android:name="android.intent.action.MAIN" /> 294 <category android:name="android.intent.category.LAUNCHER" /> 295 </intent-filter> 296 <meta-data 297 android:name="android.app.shortcuts" 298 android:resource="@xml/shortcuts" /> 299 </activity-alias> 300 301 <activity-alias 302 android:name="${applicationId}.AppGradientTwilight" 303 android:enabled="false" 304 android:exported="true" 305 android:icon="@mipmap/ic_launcher_gradient_twilight" 306 android:roundIcon="@mipmap/ic_launcher_gradient_twilight" 307 android:targetActivity="HomeActivity"> 308 <intent-filter> 309 <action android:name="android.intent.action.MAIN" /> 310 <category android:name="android.intent.category.LAUNCHER" /> 311 </intent-filter> 312 <meta-data 313 android:name="android.app.shortcuts" 314 android:resource="@xml/shortcuts" /> 315 </activity-alias> 316 317 <activity-alias 318 android:name="${applicationId}.AppGradientMidnight" 319 android:enabled="false" 320 android:exported="true" 321 android:icon="@mipmap/ic_launcher_gradient_midnight" 322 android:roundIcon="@mipmap/ic_launcher_gradient_midnight" 323 android:targetActivity="HomeActivity"> 324 <intent-filter> 325 <action android:name="android.intent.action.MAIN" /> 326 <category android:name="android.intent.category.LAUNCHER" /> 327 </intent-filter> 328 <meta-data 329 android:name="android.app.shortcuts" 330 android:resource="@xml/shortcuts" /> 331 </activity-alias> 332 333 <activity-alias 334 android:name="${applicationId}.AppGradientNorthernLights" 335 android:enabled="false" 336 android:exported="true" 337 android:icon="@mipmap/ic_launcher_gradient_northern_lights" 338 android:roundIcon="@mipmap/ic_launcher_gradient_northern_lights" 339 android:targetActivity="HomeActivity"> 340 <intent-filter> 341 <action android:name="android.intent.action.MAIN" /> 342 <category android:name="android.intent.category.LAUNCHER" /> 343 </intent-filter> 344 <meta-data 345 android:name="android.app.shortcuts" 346 android:resource="@xml/shortcuts" /> 347 </activity-alias> 348 349 <!-- Themed/alternative icons --> 350 <!-- Icons with unique designs or special themes (e.g. retro, pixelated, Pride). --> 351 <activity-alias 352 android:name="${applicationId}.AppRetro2004" 353 android:enabled="false" 354 android:exported="true" 355 android:icon="@mipmap/ic_launcher_retro_2004" 356 android:roundIcon="@mipmap/ic_launcher_retro_2004" 357 android:targetActivity="HomeActivity"> 358 <intent-filter> 359 <action android:name="android.intent.action.MAIN" /> 360 <category android:name="android.intent.category.LAUNCHER" /> 361 </intent-filter> 362 <meta-data 363 android:name="android.app.shortcuts" 364 android:resource="@xml/shortcuts" /> 365 </activity-alias> 366 367 <activity-alias 368 android:name="${applicationId}.AppPixelated" 369 android:enabled="false" 370 android:exported="true" 371 android:icon="@mipmap/ic_launcher_pixelated" 372 android:roundIcon="@mipmap/ic_launcher_pixelated" 373 android:targetActivity="HomeActivity"> 374 <intent-filter> 375 <action android:name="android.intent.action.MAIN" /> 376 <category android:name="android.intent.category.LAUNCHER" /> 377 </intent-filter> 378 <meta-data 379 android:name="android.app.shortcuts" 380 android:resource="@xml/shortcuts" /> 381 </activity-alias> 382 383 <activity-alias 384 android:name="${applicationId}.AppCuddling" 385 android:enabled="false" 386 android:exported="true" 387 android:icon="@mipmap/ic_launcher_cuddling" 388 android:roundIcon="@mipmap/ic_launcher_cuddling" 389 android:targetActivity="HomeActivity"> 390 <intent-filter> 391 <action android:name="android.intent.action.MAIN" /> 392 <category android:name="android.intent.category.LAUNCHER" /> 393 </intent-filter> 394 <meta-data 395 android:name="android.app.shortcuts" 396 android:resource="@xml/shortcuts" /> 397 </activity-alias> 398 399 <activity-alias 400 android:name="${applicationId}.AppPride" 401 android:enabled="false" 402 android:exported="true" 403 android:icon="@mipmap/ic_launcher_pride" 404 android:roundIcon="@mipmap/ic_launcher_pride" 405 android:targetActivity="HomeActivity"> 406 <intent-filter> 407 <action android:name="android.intent.action.MAIN" /> 408 <category android:name="android.intent.category.LAUNCHER" /> 409 </intent-filter> 410 <meta-data 411 android:name="android.app.shortcuts" 412 android:resource="@xml/shortcuts" /> 413 </activity-alias> 414 415 <activity-alias 416 android:name="${applicationId}.AppFlaming" 417 android:enabled="false" 418 android:exported="true" 419 android:icon="@mipmap/ic_launcher_flaming" 420 android:roundIcon="@mipmap/ic_launcher_flaming" 421 android:targetActivity="HomeActivity"> 422 <intent-filter> 423 <action android:name="android.intent.action.MAIN" /> 424 <category android:name="android.intent.category.LAUNCHER" /> 425 </intent-filter> 426 <meta-data 427 android:name="android.app.shortcuts" 428 android:resource="@xml/shortcuts" /> 429 </activity-alias> 430 431 <activity-alias 432 android:name="${applicationId}.AppMinimal" 433 android:enabled="false" 434 android:exported="true" 435 android:icon="@mipmap/ic_launcher_minimal" 436 android:roundIcon="@mipmap/ic_launcher_minimal" 437 android:targetActivity="HomeActivity"> 438 <intent-filter> 439 <action android:name="android.intent.action.MAIN" /> 440 <category android:name="android.intent.category.LAUNCHER" /> 441 </intent-filter> 442 <meta-data 443 android:name="android.app.shortcuts" 444 android:resource="@xml/shortcuts" /> 445 </activity-alias> 446 447 <activity-alias 448 android:name="${applicationId}.AppMomo" 449 android:enabled="false" 450 android:exported="true" 451 android:icon="@mipmap/ic_launcher_momo" 452 android:roundIcon="@mipmap/ic_launcher_momo" 453 android:targetActivity="HomeActivity"> 454 <intent-filter> 455 <action android:name="android.intent.action.MAIN" /> 456 <category android:name="android.intent.category.LAUNCHER" /> 457 </intent-filter> 458 <meta-data 459 android:name="android.app.shortcuts" 460 android:resource="@xml/shortcuts" /> 461 </activity-alias> 462 <activity-alias 463 android:name="${applicationId}.AppCool" 464 android:enabled="false" 465 android:exported="true" 466 android:icon="@mipmap/ic_launcher_cool" 467 android:roundIcon="@mipmap/ic_launcher_cool" 468 android:targetActivity="HomeActivity"> 469 <intent-filter> 470 <action android:name="android.intent.action.MAIN" /> 471 <category android:name="android.intent.category.LAUNCHER" /> 472 </intent-filter> 473 <meta-data 474 android:name="android.app.shortcuts" 475 android:resource="@xml/shortcuts" /> 476 </activity-alias> 477 478 <!-- 479 Fennec declared entry for homescreen pinned shortcuts. 480 --> 481 <activity-alias 482 android:name="org.mozilla.gecko.BrowserApp" 483 android:targetActivity=".IntentReceiverActivity" 484 android:exported="true"> 485 </activity-alias> 486 487 <!-- Activity alias from Fennec used by PWA launchers on the home screen --> 488 <activity-alias 489 android:name="org.mozilla.gecko.LauncherActivity" 490 android:exported="true" 491 android:targetActivity=".IntentReceiverActivity"> 492 <intent-filter> 493 <action android:name="org.mozilla.gecko.WEBAPP" /> 494 </intent-filter> 495 </activity-alias> 496 497 <activity 498 android:name=".startupCrash.StartupCrashActivity" 499 android:exported="false" 500 android:process=":StartupCrashActivityProcess" 501 > 502 </activity> 503 504 <activity 505 android:name=".HomeActivity" 506 android:theme="@style/SplashScreenThemeBase" 507 android:exported="true" 508 android:configChanges="keyboard|keyboardHidden|mcc|mnc|orientation|screenSize|layoutDirection|smallestScreenSize|screenLayout" 509 android:launchMode="singleTask" 510 android:taskAffinity="" 511 android:resizeableActivity="true" 512 android:supportsPictureInPicture="true" 513 android:windowSoftInputMode="adjustResize"> 514 <intent-filter> 515 <action android:name="android.intent.action.VIEW" /> 516 <category android:name="android.intent.category.BROWSABLE" /> 517 <category android:name="android.intent.category.DEFAULT" /> 518 <data android:scheme="${deepLinkScheme}"/> 519 <data android:host="enable_private_browsing"/> 520 <data android:host="home"/> 521 <data android:host="home_collections"/> 522 <data android:host="install_search_widget"/> 523 <data android:host="make_default_browser"/> 524 <data android:host="open"/> 525 <data android:host="settings"/> 526 <data android:host="settings_accessibility"/> 527 <data android:host="settings_addon_manager"/> 528 <data android:host="settings_delete_browsing_data"/> 529 <data android:host="settings_logins"/> 530 <data android:host="settings_notifications"/> 531 <data android:host="settings_privacy"/> 532 <data android:host="settings_search_engine"/> 533 <data android:host="settings_tracking_protection"/> 534 <data android:host="settings_app_icon"/> 535 <data android:host="share_sheet"/> 536 <data android:host="turn_on_sync"/> 537 <data android:host="urls_bookmarks"/> 538 <data android:host="urls_history"/> 539 <data android:host="settings_private_browsing"/> 540 </intent-filter> 541 </activity> 542 543 <activity 544 android:name=".customtabs.ExternalAppBrowserActivity" 545 android:autoRemoveFromRecents="false" 546 android:configChanges="keyboard|keyboardHidden|mcc|mnc|orientation|screenSize|layoutDirection|smallestScreenSize|screenLayout" 547 android:exported="false" 548 android:persistableMode="persistNever" 549 android:taskAffinity="" 550 android:resizeableActivity="true" 551 android:supportsPictureInPicture="true" 552 android:windowSoftInputMode="adjustResize|stateAlwaysHidden" /> 553 554 <activity 555 android:name=".IntentReceiverActivity" 556 android:theme="@style/Theme.Transparent" 557 android:relinquishTaskIdentity="true" 558 android:taskAffinity="" 559 android:exported="true" 560 android:excludeFromRecents="true" > 561 562 <!-- 563 Respond to `Intent.makeMainSelectorActivity(Intent.ACTION_MAIN, Intent.CATEGORY_APP_BROWSER)` 564 --> 565 <intent-filter> 566 <action android:name="android.intent.action.MAIN" /> 567 <category android:name="android.intent.category.APP_BROWSER"/> 568 <category android:name="android.intent.category.DEFAULT"/> 569 </intent-filter> 570 571 <intent-filter> 572 <action android:name="android.intent.action.VIEW" /> 573 574 <category android:name="android.intent.category.DEFAULT" /> 575 <category android:name="android.intent.category.BROWSABLE" /> 576 <category android:name="mozilla.components.pwa.category.SHORTCUT" /> 577 <data android:scheme="http" /> 578 <data android:scheme="https" /> 579 </intent-filter> 580 581 <!--Exposed specific deep links for third-party apps to open wallpaper settings.--> 582 <intent-filter> 583 <action android:name="android.intent.action.VIEW" /> 584 <category android:name="android.intent.category.BROWSABLE" /> 585 <category android:name="android.intent.category.DEFAULT" /> 586 <data android:scheme="${deepLinkScheme}" 587 android:host="settings_wallpapers"/> 588 </intent-filter> 589 590 <intent-filter> 591 <action android:name="android.intent.action.VIEW" /> 592 593 <category android:name="android.intent.category.BROWSABLE" /> 594 <category android:name="android.intent.category.DEFAULT" /> 595 596 <data android:scheme="http" /> 597 <data android:scheme="https" /> 598 <data android:mimeType="text/html" /> 599 <data android:mimeType="text/plain" /> 600 <data android:mimeType="application/xhtml+xml" /> 601 </intent-filter> 602 603 <!-- 604 <intent-filter> 605 <action android:name="android.intent.action.SEND" /> 606 <category android:name="android.intent.category.DEFAULT" /> 607 <data android:mimeType="text/plain" /> 608 </intent-filter> 609 --> 610 611 <intent-filter> 612 <action android:name="android.intent.action.SEARCH" /> 613 <category android:name="android.intent.category.DEFAULT" /> 614 </intent-filter> 615 <meta-data android:name="android.app.searchable" 616 android:resource="@xml/searchable"/> 617 618 <intent-filter> 619 <action android:name="android.intent.action.WEB_SEARCH" /> 620 <category android:name="android.intent.category.DEFAULT" /> 621 </intent-filter> 622 623 <intent-filter> 624 <action android:name="mozilla.components.feature.pwa.VIEW_PWA" /> 625 <category android:name="android.intent.category.DEFAULT" /> 626 <data android:scheme="https" /> 627 </intent-filter> 628 629 <intent-filter> 630 <action android:name="android.intent.action.ASSIST" /> 631 <category android:name="android.intent.category.DEFAULT" /> 632 </intent-filter> 633 634 <intent-filter> 635 <action android:name="android.nfc.action.NDEF_DISCOVERED"/> 636 <category android:name="android.intent.category.DEFAULT" /> 637 <data android:scheme="http" /> 638 <data android:scheme="https" /> 639 </intent-filter> 640 641 <intent-filter> 642 <action android:name="android.intent.action.VIEW" /> 643 <category android:name="android.intent.category.BROWSABLE" /> 644 <category android:name="android.intent.category.DEFAULT" /> 645 <data android:mimeType="application/pdf" /> 646 <data android:scheme="content" /> 647 </intent-filter> 648 649 <meta-data 650 android:name="com.android.systemui.action_assist_icon" 651 android:resource="@mipmap/ic_launcher" /> 652 653 </activity> 654 655 <activity android:name=".widget.VoiceSearchActivity" 656 android:theme="@style/Theme.AppCompat.Translucent" 657 android:taskAffinity="" 658 android:excludeFromRecents="true" 659 /> 660 661 <activity android:name="mozilla.components.feature.qr.QrScanActivity" 662 android:theme="@style/Theme.AppCompat.Translucent" 663 android:exported="false" 664 android:taskAffinity="" 665 /> 666 667 <activity 668 android:name=".settings.account.AuthCustomTabActivity" 669 android:autoRemoveFromRecents="false" 670 android:configChanges="keyboard|keyboardHidden|mcc|mnc|orientation|screenSize|layoutDirection|smallestScreenSize|screenLayout" 671 android:exported="false" 672 android:taskAffinity="" 673 android:windowSoftInputMode="adjustResize|stateAlwaysHidden" /> 674 675 <activity android:name=".settings.account.AuthIntentReceiverActivity" 676 android:exported="false" /> 677 678 <activity android:name=".autofill.AutofillUnlockActivity" 679 android:exported="false" 680 android:theme="@style/Theme.AppCompat.Translucent" /> 681 682 <activity android:name=".autofill.AutofillConfirmActivity" 683 android:exported="false" 684 android:theme="@style/Theme.AppCompat.Translucent" /> 685 686 <activity android:name=".autofill.AutofillSearchActivity" 687 android:exported="false" 688 android:theme="@style/DialogActivityTheme" /> 689 690 <activity 691 android:name=".messaging.NotificationClickedReceiverActivity" 692 android:exported="false" /> 693 694 <activity 695 android:name=".perf.StopProfilerActivity" 696 android:theme="@style/StopProfilerTransparentTheme" 697 android:taskAffinity="" 698 android:excludeFromRecents="true" 699 android:exported="false" 700 android:launchMode="singleTask" /> 701 702 <service android:name=".media.MediaSessionService" 703 android:foregroundServiceType="mediaPlayback" 704 android:exported="false" /> 705 706 <service 707 android:name=".customtabs.CustomTabsService" 708 android:exported="true" 709 tools:ignore="ExportedService"> 710 <intent-filter> 711 <action android:name="android.support.customtabs.action.CustomTabsService" /> 712 </intent-filter> 713 </service> 714 715 <service 716 android:name=".downloads.DownloadService" 717 android:foregroundServiceType="dataSync" 718 android:exported="false" /> 719 720 <receiver 721 android:name="org.mozilla.gecko.search.SearchWidgetProvider" 722 android:exported="true"> 723 <intent-filter> 724 <action android:name="android.appwidget.action.APPWIDGET_UPDATE" /> 725 </intent-filter> 726 <meta-data 727 android:name="android.appwidget.provider" 728 android:resource="@xml/search_widget_info" /> 729 </receiver> 730 731 <receiver android:name=".onboarding.WidgetPinnedReceiver" 732 android:exported="true"> 733 <intent-filter> 734 <action android:name="org.mozilla.fenix.onboarding.WidgetPinnedReceiver.widgetPinned"/> 735 </intent-filter> 736 </receiver> 737 738 <service 739 android:name=".session.PrivateNotificationService" 740 android:exported="false" 741 android:foregroundServiceType="specialUse"> 742 <property 743 android:name="android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE" 744 android:value="This foreground service allows users to easily remove private tabs from the notification" /> 745 </service> 746 747 <service 748 android:name=".messaging.NotificationDismissedService" 749 android:exported="false" /> 750 751 <service 752 android:name=".push.FirebasePushService" 753 android:enabled="false" 754 android:exported="false"> 755 <intent-filter> 756 <action android:name="com.google.firebase.MESSAGING_EVENT" /> 757 </intent-filter> 758 </service> 759 760 <service 761 android:name=".perf.ProfilerService" 762 android:foregroundServiceType="specialUse" 763 android:exported="false"> 764 <property android:name="android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE" 765 android:value="Developer tool: Shows notification during performance profiling" /> 766 </service> 767 768 <provider 769 android:name=".perf.ProfilerProvider" 770 android:authorities="${applicationId}.profiler" 771 android:exported="false" 772 android:enabled="false" 773 android:readPermission="android.permission.DUMP" 774 android:grantUriPermissions="false" /> 775 776 <meta-data 777 android:name="firebase_messaging_auto_init_enabled" 778 android:value="false" /> 779 <meta-data 780 android:name="firebase_analytics_collection_enabled" 781 android:value="false" /> 782 <meta-data 783 android:name="firebase_analytics_collection_deactivated" 784 android:value="true" /> 785 <meta-data 786 android:name="google_analytics_adid_collection_enabled" 787 android:value="false" /> 788 <meta-data 789 android:name="google_analytics_default_allow_ad_personalization_signals" 790 android:value="false" /> 791 <!-- Removes the default Workmanager initialization so that we can use on-demand initializer. --> 792 <provider 793 android:name="androidx.startup.InitializationProvider" 794 android:authorities="${applicationId}.androidx-startup" 795 android:exported="false" 796 tools:node="merge" > 797 <meta-data 798 android:name="androidx.work.WorkManagerInitializer" 799 android:value="androidx.startup" 800 tools:node="remove" /> 801 </provider> 802 803 <!-- For adjust pre-installs --> 804 <!-- https://dev.adjust.com/en/sdk/android/setup/preinstalled#system-installer-receiver--> 805 <receiver 806 android:name="com.adjust.sdk.AdjustPreinstallReferrerReceiver" 807 android:exported="true" 808 tools:ignore="ExportedReceiver"> 809 <intent-filter> 810 <action android:name="com.attribution.SYSTEM_INSTALLER_REFERRER" /> 811 </intent-filter> 812 </receiver> 813 </application> 814 815 </manifest>