Brak obsługi indeksowania aplikacji Firebase (Android Lint)

149

Otrzymuję to ostrzeżenie o kłaczkach podczas analizy mojego kodu (Analiza> Sprawdź kody) w studiach Android.

Aplikacja nie jest indeksowana przez wyszukiwarkę Google; rozważ dodanie co najmniej jednego działania z wypełniaczem intencji ACTION-VIEW. Więcej informacji można znaleźć w wyjaśnieniu problemu.

Co to za ostrzeżenie i jak umożliwić indeksowanie mojej aplikacji przez wyszukiwarkę Google? brzmi to ważne dla SEO, ale nie mogę znaleźć żadnych szczegółów w Google.

Chciałbym również wiedzieć, jak uzyskać dostęp do „Wyjaśnienia problemu” ze studia Android.

wprowadź opis obrazu tutaj

Edytować:

„Aplikacja nie jest indeksowana przez wyszukiwarkę Google” było starym ostrzeżeniem. Nowe ostrzeżenie to „Brak obsługi indeksowania aplikacji Firebase”

Angel Koh
źródło

Odpowiedzi:

106

Dowiedziałem się, jak uzyskać dostęp do „Wyjaśnienia problemu”. Muszę najechać kursorem na błąd inspekcji, aby wyświetlić pełne wyjaśnienie problemu w tekście (i nacisnąć Ctrl-F1)

wprowadź opis obrazu tutaj

więc brakuje mi słowa kluczowego „precyzyjne linki”!

Poniżej znajduje się strona dla programistów Androida, na której można tworzyć precyzyjne linki „Aby umożliwić Google indeksowanie treści aplikacji i zezwolenie użytkownikom na przechodzenie do Twojej aplikacji z wyników wyszukiwania”

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

poniżej znajduje się fragment kodu pokazujący, jak utworzyć precyzyjny link. Nie mam pojęcia, jak Google może zindeksować moją aplikację, tylko ją dodając ...

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

jest też notatka, która mówi

Note: Intent filters may only contain a single data element for a URI pattern. 
Create separate intent filters to capture additional URI patterns.
Angel Koh
źródło
2
Służy do konfigurowania precyzyjnych linków do Twojej aplikacji. Przykład: jeśli użytkownik wyszukuje w wyszukiwarce mobilnej określone słowo kluczowe, które pasuje do Twojej witryny / aplikacji, może bezpośrednio prowadzić do Twojego zamiaru, który może otworzyć określoną aktywność / widok w Twojej aplikacji. Krótko mówiąc, wyszukiwanie pozwoli użytkownikom bezpośrednio otwierać aplikacje.
Nagesh Susarla,
@NageshSusarla, więc czy w powyższym przykładzie słowem kluczowym jest „gadżety”?
Angel Koh
6
developers.google.com/app-indexing/android/app zawiera szczegółowe informacje na ten temat. W takim przypadku każde słowo kluczowe, które powoduje wyświetlenie Twojej strony, np. Example.com/gizmos w wynikach wyszukiwania, będzie wskazywać na ten cel.
Nagesh Susarla
3
Nie rozumiem, co mam umieścić?
busuu
6
Czy musisz mieć własną witrynę do dodania?
Azurespot
28

W rzeczywistości istnieją 2 sposoby radzenia sobie z problemem „aplikacja nie jest indeksowana przez Google”.

  1. Dodaj precyzyjny link do aplikacji, jak opisano powyżej.
  2. Po prostu wyłącz ostrzeżenie o kłaczkach. Czasami aplikacja nie jest publikowana w Google Play, więc precyzyjne linki nie będą potrzebne itp.

    android {
    defaultConfig {
    // something
    }
    lintOptions {
    disable 'GoogleAppIndexingWarning'
    baseline file("lint-baseline.xml")
    }
    }
    
zkvarz
źródło
19

Możesz usunąć ostrzeżenie, dodając poniższy kod w <intent-filter>środku<activity>

        <action android:name="android.intent.action.VIEW" />
Bibin Johny
źródło
7

Jeśli chcesz wyłączyć to ostrzeżenie do czasu zakończenia tworzenia aplikacji lub jeśli nie masz żadnego internetowego adresu URL do dodania, dodaj ten wiersz do AndroidManifest.xmlpliku.

<?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>
Shashanth
źródło