<?xml version="1.0" encoding="utf-8"?>
<!--
  Copyright 2012 The Chromium Authors
  Use of this source code is governed by a BSD-style license that can be
  found in the LICENSE file.
-->

<!--
Note: This is a jinja2 template, processed at build time into the final manifest.

Blocks denoted with { % block some_name % }foo{ % endblock % } can be overridden
by a child template that "extends" this file.
-->

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    package="{{manifest_package|default('com.android.webview')}}"
    android:isolatedSplits="true"
    tools:ignore="MissingLeanbackLauncher">

    <uses-feature android:name="android.hardware.touchscreen"
                  android:required="false" />
    <uses-feature android:name="android.software.leanback"
                  android:required="false" />

    <uses-feature android:glEsVersion="0x00030000" />

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

    <!-- Required by WebView Developer UI only -->
    <uses-permission android:name="android.permission.FOREGROUND_SERVICE" />

    <uses-permission android:name="android.permission.FOREGROUND_SERVICE_SPECIAL_USE"/>
    <!-- Required to run the foreground service-->
    <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />

    <application android:label="{{ application_label|default('Android System WebView') }}"
                 android:icon="@{{manifest_package|default('com.android.webview')}}:drawable/icon_webview"
                 android:name="{{ application_name|default('org.chromium.android_webview.nonembedded.WebViewApkApplication') }}"
                 android:multiArch="true"
                 {% if force_32_bit is defined and force_32_bit == 'true' %}
                 android:use32bitAbi="true"
                 {% endif %}>
        {# This part is shared between stand-alone WebView and Monochrome #}
        {% macro common(manifest_package, webview_lib) %}
            <meta-data android:name="com.android.webview.WebViewLibrary"
                       android:value="{{ webview_lib }}" />
            <!-- Service used to hold androidx.webkit startup feature metadata
                 that can be read from other apps via PackageManager. -->
            <service
              android:name="org.chromium.android_webview.services.StartupFeatureMetadataHolder"
              android:enabled="false"
              android:exported="true"
              tools:ignore="ExportedService">
              <meta-data
                  android:name="STARTUP_FEATURE_SET_DATA_DIRECTORY_SUFFIX"
                  android:value="true"/>
              <meta-data
                  android:name="STARTUP_FEATURE_SET_DIRECTORY_BASE_PATH"
                  android:value="true"/>
              <meta-data
                  android:name="STARTUP_FEATURE_CONFIGURE_PARTITIONED_COOKIES"
                  android:value="true"/>
            <meta-data
                  android:name="STARTUP_FEATURE_SET_UI_THREAD_STARTUP_MODE"
                  android:value="true"/>
            <meta-data
                  android:name="STARTUP_FEATURE_SET_UI_THREAD_STARTUP_MODE_V2"
                  android:value="true"/>
            <meta-data
                  android:name="STARTUP_FEATURE_SET_PROFILES_TO_LOAD"
                  android:value="true"/>
            </service>
            <!-- WebView Developer UI Activities. If you change these Activities, please update
                 android_webview/test/shell/AndroidManifest.xml as well. -->
            <!--suppress HardcodedText -->
            <activity android:name="org.chromium.android_webview.devui.MainActivity"
                      android:windowSoftInputMode="adjustPan"
                      android:visibleToInstantApps="true"
                      android:label="WebView DevTools"
                      android:icon="@drawable/icon_webview"
                      android:theme="@style/Theme.DevUi.DayNight"
                      android:launchMode="singleTask"
                      android:taskAffinity="{{ manifest_package }}.org.chromium.android_webview.devui" {# Explicit taskAffinity for WebView Activities. #}
                      android:process=":webview_apk"  {# Explicit process required for WebView. #}
                      android:exported="true">
                <intent-filter>
                    <action android:name="com.android.webview.SHOW_DEV_UI" />
                    <category android:name="android.intent.category.DEFAULT" />
                </intent-filter>
            </activity>
            <!-- Don't actually try to launch with this alias: it only exists so we can query its enabled state. -->
            <!-- If you change this component make sure to update the corresponding copy in
                 test/shell/AndroidManifest.xml -->
            <activity-alias android:name="org.chromium.android_webview.devui.DeveloperModeState"
                      android:targetActivity="org.chromium.android_webview.devui.MainActivity"
                      android:enabled="false" />
            <!-- End of WebView Developer UI Activities -->

            <!-- Don't actually try to launch with this alias: it only exists so we can query its enabled state. -->
            <!-- If you change this component make sure to update the corresponding copy in
                 test/shell/AndroidManifest.xml -->
            <activity-alias android:name="org.chromium.android_webview.SafeModeState"
                      android:targetActivity="org.chromium.android_webview.devui.MainActivity"
                      android:enabled="false" />

            <activity android:name="org.chromium.android_webview.nonembedded.LicenseActivity"
                      android:label="@string/license_activity_title"
                      android:process=":webview_apk"  {# Explicit process required for WebView. #}
                      android:exported="true">
                <intent-filter>
                    <action android:name="android.settings.WEBVIEW_LICENSE" />
                    <category android:name="android.intent.category.DEFAULT" />
                </intent-filter>
                <meta-data android:name="com.android.settings.PRIMARY_PROFILE_CONTROLLED"
                           android:value="true" />
            </activity>
            <provider android:name="org.chromium.android_webview.nonembedded.LicenseContentProvider"
                      android:exported="true"
                      android:authorities="{{ manifest_package }}.LicenseContentProvider"
                      android:grantUriPermissions="true"
                      android:process=":webview_apk"  {# Explicit process required for WebView. #}
                      tools:ignore="ExportedContentProvider"/>
            <!-- Disabled by default, enabled at runtime by Developer UI. -->
            <!-- If you change this component make sure to update the corresponding copy in
                 test/shell/AndroidManifest.xml-->
            <provider android:name="org.chromium.android_webview.services.DeveloperModeContentProvider"
                      android:visibleToInstantApps="true"
                      android:exported="true"
                      android:authorities="{{ manifest_package }}.DeveloperModeContentProvider"
                      android:process=":webview_service"  {# Explicit process required for WebView. #}
                      tools:ignore="ExportedContentProvider" />
            <provider android:name="androidx.core.content.FileProvider"
                      android:visibleToInstantApps="true"
                      android:exported="false"
                      android:authorities="{{ manifest_package }}.net_logs_provider"
                      android:process=":webview_service"  {# Explicit process required for WebView. #}
                      android:grantUriPermissions="true"
                      tools:ignore="ExportedContentProvider">
                      <meta-data android:name="android.support.FILE_PROVIDER_PATHS"
                          android:resource="@xml/provider_paths" />
            </provider>
            <!-- If you change this component make sure to update the corresponding copy in
                 test/shell/AndroidManifest.xml-->
            <provider android:name="org.chromium.android_webview.services.SafeModeVariationsSeedContentProvider"
                      android:visibleToInstantApps="true"
                      android:exported="true"
                      android:authorities="{{ manifest_package }}.SafeModeVariationsSeedContentProvider"
                      android:process=":webview_service"  {# Explicit process required for WebView. #}
                      tools:ignore="ExportedContentProvider" />
            <provider android:name="org.chromium.android_webview.services.SafeModeContentProvider"
                      android:visibleToInstantApps="true"
                      android:exported="true"
                      android:authorities="{{ manifest_package }}.SafeModeContentProvider"
                      android:process=":webview_service"  {# Explicit process required for WebView. #}
                      tools:ignore="ExportedContentProvider" />
            <!-- Disables at startup init of Emoji2. See http://crbug.com/1205141 -->
            <provider
                android:name="androidx.startup.InitializationProvider"
                tools:node="remove">
            </provider>
            <!-- If you change the variations services, also see
                 android_webview/test/shell/AndroidManifest.xml. -->
            <!-- All WebView components need an android:process attribute. See //android_webview/nonembedded/README.md. -->
            <service android:name="org.chromium.android_webview.services.VariationsSeedServer"
                     android:exported="true"
                     android:process=":webview_service"  {# Explicit process required for WebView. #}
                     tools:ignore="ExportedService" />
            <service android:name="org.chromium.android_webview.services.AwVariationsSeedFetcher"
                     android:permission="android.permission.BIND_JOB_SERVICE"
                     android:exported="false"
                     android:process=":webview_service" />  {# Explicit process required for WebView. #}
            <service android:name="org.chromium.android_webview.services.CrashReceiverService"
                     android:exported="true"
                     android:process=":webview_service"  {# Explicit process required for WebView. #}
                     tools:ignore="ExportedService" />
            <service android:name="org.chromium.android_webview.services.AwMinidumpUploadJobService"
                     android:permission="android.permission.BIND_JOB_SERVICE"
                     android:exported="true"
                     android:process=":webview_service" />  {# Explicit process required for WebView. #}
            <service android:name="org.chromium.android_webview.services.DeveloperUiService"
                     android:foregroundServiceType="specialUse"
                     android:exported="true"
                     android:process=":webview_service"  {# Explicit process required for WebView. #}
                     tools:ignore="ExportedService" >
                      <property
                        android:name="android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE"
                        android:value="debugging"
                      />
            </service>
            <service android:name="org.chromium.android_webview.services.SafeModeService"
                     android:exported="true"
                     android:process=":webview_service"  {# Explicit process required for WebView. #}
                     tools:ignore="ExportedService" />
            <service android:name="org.chromium.android_webview.services.AwNetLogService"
                     android:exported="true"
                     android:process=":webview_service"  {# Explicit process required for WebView. #}
                     tools:ignore="ExportedService" />
            <service android:name="org.chromium.android_webview.services.MetricsBridgeService"
                     android:exported="true"
                     android:visibleToInstantApps="true"
                     android:process=":webview_service"  {# Explicit process required for WebView. #}
                     tools:ignore="ExportedService" />
            <service android:name="org.chromium.android_webview.services.MetricsUploadService"
                     android:exported="true"
                     android:visibleToInstantApps="true"
                     android:process=":webview_service"  {# Explicit process required for WebView. #}
                     tools:ignore="ExportedService" />
            <!-- This service runs inside webview_apk process because it loads native -->
            <service android:name="org.chromium.android_webview.nonembedded.AwComponentUpdateService"
                     android:permission="android.permission.BIND_JOB_SERVICE"
                     android:exported="false"
                     android:process=":webview_apk"/>  {# Explicit process required for WebView. #}
            <service android:name="org.chromium.android_webview.services.ComponentsProviderService"
                     android:exported="true"
                     android:visibleToInstantApps="true"
                     android:process=":webview_service"  {# Explicit process required for WebView. #}
                     tools:ignore="ExportedService" />
            <!-- JS Execution Sandbox -->
            <service android:name="org.chromium.android_webview.js_sandbox.service.JsSandboxService0"
                android:process=":js_sandboxed_process0"
                android:isolatedProcess="true"
                android:exported="true"
                android:externalService="true"
                tools:ignore="ExportedService"
                android:visibleToInstantApps="true" />
            {% block extra_application_definitions %}
            {% endblock %}
        {% endmacro %}
        {{ common(manifest_package|default('com.android.webview'), library|default('libwebviewchromium.so')) }}
        {% set num_sandboxed_services = 40 %}
        <meta-data android:name="org.chromium.content.browser.NUM_SANDBOXED_SERVICES"
                   android:value="{{ num_sandboxed_services }}" />
        {% for i in range(num_sandboxed_services) %}
            <service android:name="org.chromium.content.app.SandboxedProcessService{{ i }}"
                     android:process=":sandboxed_process{{ i }}"
                     android:isolatedProcess="true"
                     android:exported="true"
                     android:externalService="true"
                     tools:ignore="ExportedService"
                     android:visibleToInstantApps="true" />
        {% endfor %}
        <meta-data android:name="org.chromium.content.browser.NUM_PRIVILEGED_SERVICES"
                   android:value="0" />
        {% if trichrome_library is defined %}
        <uses-static-library
            android:name="{{ trichrome_library }}"
            android:version="{{ trichrome_version }}"
            android:certDigest="{{ trichrome_certdigest }}" />
        {% endif %}
    </application>
</manifest>
