AndroidManifest.xmlで次のツールヒントを取得しています。
アプリはGoogle検索でインデックスに登録できません。ACTION-VIEWインテントフィラーを含むアクティビティを少なくとも1つ追加することを検討してください。詳細については、問題の説明を参照してください。
アプリをGoogleインデックスに追加し、Google検索からアプリへのインストールとトラフィックを取得するためのディープリンクを追加します。
なぜそうなのか誰でも説明できますか?
AndroidManifest.xmlで次のツールヒントを取得しています。
アプリはGoogle検索でインデックスに登録できません。ACTION-VIEWインテントフィラーを含むアクティビティを少なくとも1つ追加することを検討してください。詳細については、問題の説明を参照してください。
アプリをGoogleインデックスに追加し、Google検索からアプリへのインストールとトラフィックを取得するためのディープリンクを追加します。
なぜそうなのか誰でも説明できますか?
回答:
公式ドキュメントから:
Googleがアプリのコンテンツをクロールできるようにして、ユーザーが検索結果からアプリを入力できるようにするには、アプリマニフェストで関連するアクティビティのインテントフィルターを追加する必要があります。これらのインテントフィルターを使用すると、任意のアクティビティのコンテンツにディープリンクできます。たとえば、ユーザーがディープリンクをクリックして、ユーザーが検索している商品を説明するショッピングアプリ内のページを表示する場合があります。
このリンクの使用アプリコンテンツのディープリンクを有効にすると、その使用方法がわかります。
そして、このApp Indexing実装のテストを使用して、テストする方法を説明します。
次の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
ACTION-VIEW
インテントフィルターが必要であると警告していることに興味がありますが、解決策にはが含まれaction.VIEW
ます。同様に、Android Studioのリンクをたどると、ACTION-VIEW
が表示されていないウェブページに移動します。彼らが邪魔な警告でできることは少なくとも、あなたに正確なメッセージとヘルプページを与えることです。
xmlns:tools="http://schemas.android.com/tools"
から、manifest
タグに追加するtools:ignore...
必要がありapplication
ます。
<intent-filter>
内部に以下のコードを追加することで警告を削除できます<activity>
<action android:name="android.intent.action.VIEW" />
tools:ignore="GoogleAppIndexingWarning"
。<action android:name="android.intent.action.MAIN" />
メインのアクティビティに兄弟として追加しました。
tools:ignore="GoogleAppIndexingWarning"
、あなたは空のACTION_VIEWを追加することはありませんので、代わりに。それは問題を引き起こさないかもしれませんが、あなたは常に安全になりたいです。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.example.app"
tools:ignore="GoogleAppIndexingWarning">
タグにxmlns:tools="http://schemas.android.com/tools"
およびtools:ignore="GoogleAppIndexingWarning"
を追加すると、警告を削除でき<manifest>
ます。
アプリのマニフェストで宣言されているアクティビティの1つにこのインテントフィルターを追加すると、これが修正されました。
<activity
android:name=".MyActivity"
android:screenOrientation="portrait"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.VIEW" />
</intent-filter>
</activity>