webentwicklung-frage-antwort-db.com.de

Android - Hinzufügen von mindestens einer Aktivität mit einem ACTION-VIEW-Absichtsfilter nach dem Aktualisieren von SDK-Version 23

Ich erhalte in AndroidManifest.xml den folgenden Tooltipp:

Die App kann von der Google-Suche nicht indiziert werden. Erwägen Sie, mindestens eine Aktivität mit einem ACTION-VIEW-Intent-Filler hinzuzufügen. Weitere Informationen finden Sie in der Problembeschreibung.

Fügt Deep-Links hinzu, um Ihre App in den Google-Index aufzunehmen und Installationen sowie Zugriffe von der Google-Suche auf Ihre App zu erhalten.

enter image description here

Kann jemand erklären, warum es so ist?

Aus amtlichen Unterlagen:

Damit Google Ihren App-Inhalt crawlen und Nutzern die Eingabe Ihrer App aus den Suchergebnissen ermöglichen kann, müssen Sie Absichtsfilter für die relevanten Aktivitäten in Ihrem App-Manifest hinzufügen. Diese Absichtsfilter ermöglichen eine tiefe Verknüpfung mit dem Inhalt in einer Ihrer Aktivitäten. Beispielsweise kann der Benutzer auf einen Deep Link klicken, um eine Seite in einer Einkaufs-App anzuzeigen, die ein Produktangebot beschreibt, nach dem der Benutzer sucht.

Über diesen Link Aktivieren von Deep Links für App-Inhalte erfahren Sie, wie Sie ihn verwenden.

Und mit diesem Testen Sie Ihre App-Indizierungsimplementierung wie man es testet.

Das folgende XML-Snippet zeigt, wie Sie in Ihrem Manifest einen Absichtsfilter für die Tiefenverknüpfung angeben können.

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

Zum Testen über 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
187
Mk.Sl.

Sie können die Warnung entfernen, indem Sie den folgenden Code in <intent-filter> in <activity> einfügen.

<action Android:name="Android.intent.action.VIEW" />
135
Bibin Johny
<manifest xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
package="com.example.app"
tools:ignore="GoogleAppIndexingWarning">

Sie können die Warnung entfernen, indem Sie xmlns:tools="http://schemas.Android.com/tools" zum Tag <manifest> und tools:ignore="GoogleAppIndexingWarning" zum Tag <application> hinzufügen.

101
Pat Lee

Das Hinzufügen dieses Absichtsfilters zu einer der im App-Manifest deklarierten Aktivitäten hat dies für mich behoben.

<activity
    Android:name=".MyActivity"
    Android:screenOrientation="portrait"
    Android:label="@string/app_name">

    <intent-filter>

       <action Android:name="Android.intent.action.VIEW" />

    </intent-filter>

</activity>
11
Oladipo Olasemo