小编典典

Android - 在更新 SDK 版本 23 后添加至少一个带有 ACTION-VIEW 意图过滤器的 Activity

all

我在 AndroidManifest.xml 中得到以下工具提示:

应用无法被 Google 搜索索引;考虑添加至少一个带有 ACTION-VIEW 意图填充的 Activity。有关更多详细信息,请参阅问题说明。

添加深层链接以使您的应用进入 Google 索引,从而从 Google 搜索中获取应用的安装量和流量。

在此处输入图像描述

谁能解释为什么会这样?


阅读 80

收藏
2022-04-18

共1个答案

小编典典

来自官方文档:

要使 Google
能够抓取您的应用内容并允许用户从搜索结果中输入您的应用,您必须在应用清单中为相关活动添加意图过滤器。这些意图过滤器允许深度链接到您的任何活动中的内容。例如,用户可能会单击深层链接以查看购物应用程序中描述用户正在搜索的产品的页面。

使用此链接为应用内容启用深层链接,您将了解如何使用它。

并使用这个Test Your App Indexing
Implementation
如何对其进行测试。

以下 XML 片段显示了如何在清单中指定意图过滤器以进行深度链接。

<activity
    android:name="com.example.android.GizmosActivity"
    android:label="@string/title_gizmos" >
    <intent-filter android:label="@string/filter_title_viewgizmos">
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <!-- Accepts URIs that begin with "http://www.example.com/gizmos鈥� -->
        <data android:scheme="http"
              android:host="www.example.com"
              android:pathPrefix="/gizmos" />
        <!-- note that the leading "/" is required for pathPrefix-->
        <!-- Accepts URIs that begin with "example://gizmos鈥� -->
        <data android:scheme="example"
              android:host="gizmos" />

    </intent-filter>
</activity>

通过 Android Debug Bridge 进行测试

$ adb shell am start
        -W -a android.intent.action.VIEW
        -d <URI> <PACKAGE>

$ adb shell am start
        -W -a android.intent.action.VIEW
        -d "example://gizmos" com.example.android
2022-04-18