Firebase Uygulama Dizine Ekleme (android lint) için eksik destek


149

Android stüdyolarında kodumu analiz ederken (Analiz Et> Kodları İncele) bu tiftik uyarısını alıyorum.

Uygulama Google Arama tarafından dizine eklenemez; bir ACTION-VIEW niyet dolgusu olan en az bir Etkinlik eklemeyi düşünebilirsiniz. Daha fazla ayrıntı için sorun açıklamasına bakın.

Bu uyarı nedir ve uygulamamı Google Arama tarafından nasıl dizine ekleyebilirim? SEO için önemli görünüyor, ancak Google'da herhangi bir ayrıntı bulamıyorum.

Ayrıca android stüdyo "Sorun Açıklama" erişmek için bilmek istiyorum.

resim açıklamasını buraya girin

Düzenle:

"Uygulama Google Arama tarafından dizine eklenemez" eski uyarısı oldu. Yeni uyarı, "Firebase Uygulama Dizine Ekleme için eksik destek"

Yanıtlar:


106

"Sorun Açıklaması" na nasıl erişeceğimizi öğrendim. Tam sorun açıklaması satır içi (ve Ctrl-F1 tuşlarına basarak) görüntülemek için bir denetim hatasının üzerine gelmem gerekiyor

resim açıklamasını buraya girin

bu yüzden eksik anahtar kelime "derin bağlantılar" dir!

Aşağıda, Google'ın uygulama içeriğinizi taramasını ve kullanıcıların uygulamanızı arama sonuçlarından girmesine izin vermesini sağlamak için " derin bağlantılar yapmak için android geliştirici sayfasıdır.

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

derin bir bağlantının nasıl yapılacağıyla ilgili kod snippet'i aşağıdadır. Google'ın sadece ekleyerek uygulamamı nasıl tarayabileceği hakkında hiçbir fikrim yok ...

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

ayrıca bir not var

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

2
Bu, uygulamanızdaki derin bağlantıları yapılandırmak içindir. Örnek: Bir kullanıcı mobil aramada web / uygulamanızla eşleşen belirli bir anahtar kelimeyi ararsa, doğrudan uygulamanızın içindeki belirli bir etkinliği / görünümü açabilecek amacınıza bağlanabilir. Kısacası, arama doğrudan kullanıcıların uygulamaların içinde açılmasına izin verecektir.
Nagesh Susarla

@NageshSusarla, yukarıdaki örnekte, anahtar kelime "gizmos" mu?
Angel Koh

6
developers.google.com/app-indexing/android/app bu konuda ayrıntılı bilgiye sahiptir. Bu durumda, sayfanızla sonuçlanan herhangi bir anahtar kelime arama sonuçlarında example.com/gizmos diyelim bu amacı gösterir.
Nagesh Susarla

3
Anlamıyorum, ne koymalıyım ??
busuu

6
Eklemek için kendi web siteniz mi var?
Azurespot

28

Aslında 'app google tarafından endekslenemez' sorunu ile başa çıkmak için 2 yol vardır.

  1. Yukarıda açıklandığı gibi uygulamaya derin bağlantı ekleyin.
  2. Tiftik uyarısını devre dışı bırakmanız yeterlidir. Bazen uygulama Google Play'de yayınlanmaz, bu nedenle derin bağlantılara ihtiyaç duyulmaz, vb:

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

19

<intent-filter>İçeride aşağıdaki kodu ekleyerek uyarıyı kaldırabilirsiniz<activity>

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

7

Uygulama geliştirme işleminiz tamamlanıncaya kadar bu uyarıyı devre dışı bırakmak istiyorsanız veya eklemek için web URL'niz yoksa bu satırı AndroidManifest.xmldosyanıza ekleyin .

<?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>
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.