缺少对 Firebase 应用索引的支持(​​android lint)

Missing support for Firebase App Indexing (android lint)

我在 Android 工作室分析我的代码(分析 > 检查代码)时收到此 lint 警告。

App is not indexable by Google Search; consider adding at least one Activity with an ACTION-VIEW intent-filler. See issue explanation for more details.

此警告是什么,如何使 Google 搜索可索引我的应用程序? 这听起来对 SEO 很重要,但我在 Google.

上找不到任何详细信息

我也想知道如何从 android 工作室访问 "Issue Explanation"。

编辑:

"App is not indexable by Google Search" 是旧警告。新的警告是 "Missing support for Firebase App Indexing"

我找到了如何访问 "Issue Explanation"。 我需要将鼠标悬停在检查错误上以内联显示完整的问题解释(并按 Ctrl-F1)

所以我缺少的关键字是 "deep links"!

下面是android开发者页面做的很深links"To enable Google to crawl your app content and allow users to enter your app from search results"

http://developer.android.com/training/app-indexing/deep-linking.html

以下是有关如何进行深度 link 的代码片段。 我不知道 Google 如何通过添加它来抓取我的应用程序...

<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>

还有一张便条说

Note: Intent filters may only contain a single data element for a URI pattern. 
Create separate intent filters to capture additional URI patterns.

实际上有两种方法可以解决'app is not indexable by google'问题。

  1. 如上所述将深层 link 添加到应用中。
  2. 简单地禁用 lint 警告。有时应用程序未发布到 Google 玩这么深 link 不需要等:

    android {
    defaultConfig {
    // something
    }
    lintOptions {
    disable 'GoogleAppIndexingWarning'
    baseline file("lint-baseline.xml")
    }
    }
    

您可以通过在 <activity>

中的 <intent-filter> 中添加以下代码来消除警告
        <action android:name="android.intent.action.VIEW" />

如果您想在应用程序开发完成之前禁用此警告,或者如果您没有要添加的任何网站 URL,请将此行添加到您的 AndroidManifest.xml 文件中。

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools"
          package="com.example.yourappname">

   <application
       ...
       ...
       tools:ignore="GoogleAppIndexingWarning">

          ....

   </application>

</manifest>