You must use http and https protocols for target filters. Why get this error message?

When I choose to download android android Instant App apk-s to google play developer console I get this error: download failed. You must use http and https protocols for target filters.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      xmlns:tools="http://schemas.android.com/tools"
      package="com.example.feature">

<application>
    <meta-data
        android:name="asset_statements"
        android:resource="@string/asset_statements"/>
    <activity android:name=".ui.MainActivity">
        <tools:validation testUrl="https://com.example/"/>

        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>

            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
        <intent-filter
            android:order="1"
            android:autoVerify="true">
            <action android:name="android.intent.action.VIEW"/>

            <category android:name="android.intent.category.DEFAULT"/>
            <category android:name="android.intent.category.BROWSABLE"/>

            <data
                android:scheme="https"
                android:host="com.example"
                android:pathPattern="/.*"/>
        </intent-filter>

        <meta-data
            android:name="default-url"
            android:value="https://com.example"/>
    </activity>
</application>

      

+3


source to share


2 answers


I had this problem until I changed my AndroidManifest this way



<activity android:name=".MainActivity"> 
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    <intent-filter android:autoVerify="true">
         <action android:name="android.intent.action.VIEW" />

         <category android:name="android.intent.category.DEFAULT" />
         <category android:name="android.intent.category.BROWSABLE" />

         <data android:host="example.com" />
         <data android:scheme="http" />
         <data android:scheme="https" />
         <data android:pathPattern="/InstantApp" />
    </intent-filter>
</activity>

      

+1


source


Make sure yours intent-filter

has at least the following attributes. At the same time, both "http" and "https" schemes must be present:



         <intent-filter
            android:autoVerify="true"
            android:order="1">
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.BROWSABLE" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:host="abc.com" />
            <data android:pathPattern="/def" />
            <data android:scheme="https" />
            <data android:scheme="http" />
        </intent-filter>

      

0


source







All Articles