2015-11-09 13 views
5

benim app bu şemalara yanıt yapmaya çalışıyorum:Amaç filtresinde boş sunucu için belirtici nedir?

my-app: // ürün/XXX

ve

my-app: //

Aşağıdaki kod çalışıyor, ancak şu uyarıyı alıyorum: android: host boş olamaz. Hala çalışıyor, ama - boş ana bilgisayarı belirtmenin doğru bir yolu var mı?

Farklı eylemleri ele alan başka etkinlikler olduğu için, "*" yi android-host olarak belirtmek istemiyorum ve doğrudan açılmazlar; etkinlik açılmalıdır.

Çok teşekkürler!

cevap

1

Ev sahibi (veya daha resmi bir şekilde yetkilendirmesi) URI ist kesinlikle iyi durumda. Bir hostless, hiyerarşik URI opak (gibi mailto:[email protected]) değil, ama bir yol olduğunu ama yaygın olarak kullanılan file:///tmp/example.file

Not düşünün. Dosya-URI'sinde olduğu gibi, ana makine adı tek bir / ile değiştirilir.

URI'nız my-app:///product/XXX formunda olmalıdır. Niyet Filtre bu gibi görünebilir:

<intent-filter> 
    <category android:name="android.intent.category.DEFAULT"/> 

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

    <data android:host=""/> 
    <data android:scheme="my-app"/> 
    <data android:pathPrefix="/product"/> 
    <data android:pathPattern=".+"/> 
</intent-filter> 

Hala kesinlikle ok boş hostname hakkında uyarı alırsınız. Bu uyarı, sadece bir web sitesinin varlığında mantıklı olduğunu düşündüğüm Firebase App Indexing için bir kontrolün sonucudur (bundan sonra ana bilgisayar adını alacağınız, yani tüm URI'lar). Daha fazla ayrıntı için

<!-- no app indexing without a hostname --> 
<issue id="GoogleAppIndexingUrlError" severity="ignore"/> 

, URI spec ve Wikipedia entry on file-URIs bakar:

yine indeksleme kullanmaz olduğundan, proje en lint.xml aşağıdaki ekleyerek uyarıyı kaldırabilirsiniz.

İlgili konular