1

每当我将我的基础和功能 APK 上传到 Play 商店时,我都会收到以下错误:

  • 您必须为您的免安装应用 APK 提供默认 URL。学到更多
  • 您的网站“www.example.com”尚未通过数字资产链接协议链接到您的应用程序。请通过数字资产链接协议将您的网站链接到您的应用程序。
  • 您应该至少有一个通过网络“intent-filter”映射到站点“www.example.com”的活动 APK。

这是我的清单文件:(已编辑

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

      <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
      <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
      <uses-permission android:name="android.permission.INTERNET"/>
      <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
      <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
      <uses-permission android:name="android.permission.WAKE_LOCK"/>


      <application>

    <activity
        android:name=".activity.ProductDetail"
        android:configChanges="orientation|screenSize"
        android:screenOrientation="portrait">
      <meta-data
          android:name="default-url"
          android:value="https://www.example.com/product/12345" />

      <meta-data android:name="asset_statements" android:resource="@string/asset_statements"/>

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

        <data android:scheme="http" android:host="www.example.com"/>
        <data android:scheme="https" android:host="www.example.com"/>
        <data android:pathPattern="/product/12345"/>
      </intent-filter>

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

    </activity>

    <meta-data
        android:name="com.facebook.sdk.ApplicationId"
        android:value="@string/facebook_app_id"/>
  </application>
    </manifest>

我将assetlinks.json 文件放到我的网站上,当我继续测试链接文件时,它会成功。我在做什么错任何想法?感谢您在高级方面的帮助

4

3 回答 3

4

https://www.example.com这是因为Instant App ( ) 中的意图过滤器不支持您指定的默认 URL ( https://www.example.com/product/productId)。

您将需要更新默认 URL 以使其指向受支持的 URL,或者添加支持默认 URL 的新意图过滤器。

于 2017-06-19T14:19:02.413 回答
1

您必须在清单中指定您的域的主机,您不能使用 www.example.com

> <data android:scheme="http" android:host="www.yuorwebsite.com"/>
> <data android:scheme="https" android:host="www.yuorwebsite.com"/>

,也在清单中的意图过滤器之前,指定

<meta-data
 Android: name = "default-url"
 Android: value = "https://yourwebsite.com/main" />
于 2017-06-19T11:55:08.520 回答
0

我同意@KitKat 和 AdamK。基于此文档。要允许 Google Play 和 Android 启动器发现您的应用,您必须提供至少一个 Activity 作为应用的入口点。在您的应用程序清单中,入口点活动必须具有<intent-filter>包含CATEGORY_LAUNCHERACTION_MAIN意图的元素。

您的应用还必须为您的应用定义一个默认 URL。在与您的入口点 Activity 相同的 Android 清单中,您可以通过添加一个<meta-data>具有 value 属性的元素来定义应用程序的默认 URL,该属性提供 Activity 可以处理的有效 HTTPS URL。此外,此默认 url 还必须是CATEGORY_LAUNCHER已安装应用程序中活动的意图过滤器的一部分。

于 2017-06-19T15:30:32.190 回答