- söz dizimi:
<data android:scheme="string" android:host="string" android:port="string" android:path="string" android:pathPattern="string" android:pathPrefix="string" android:pathSuffix="string" android:pathAdvancedPattern="string" android:mimeType="string" />
- bulunduğu yer:
<intent-filter>
- description:
- Amaç filtresine veri spesifikasyonu ekler. Spesifikasyon
mimeType
kullanarak bir veri türü özelliği, URI ya da hem veri türü hem de URI olabilir. URI, ayrı bir özellikleri:<scheme>://<host>:<port>[<path>|<pathPrefix>|<pathPattern>|<pathAdvancedPattern>|<pathSuffix>]
URI biçimini belirten bu özellikler isteğe bağlı olmakla birlikte karşılıklı olarak da bağımlıdır:
scheme
intent filtresi için belirtilmediğinde, diğer tüm URI özellikleri yoksayılır.host
belirtilmezseport
özelliği ve tüm yol özellikleri yoksayılır.
Aynı
<data>
<intent-filter>
öğesi aynı filtre yer alır. Bu nedenle, örneğin aşağıdaki filtre spesifikasyonu:<intent-filter . . . > <data android:scheme="something" android:host="project.example.com" /> ... </intent-filter>
şuna eşdeğerdir:
<intent-filter . . . > <data android:scheme="something" /> <data android:host="project.example.com" /> ... </intent-filter>
Bir
<data>
Birden çok veri vermek için<intent-filter>
seçenekleri vardır. Özelliklerinin hiçbirinde varsayılan değer yok.Amaç nesnelerinin nasıl çalıştığına ilişkin kurallar da dahil olmak üzere intent filtrelerinin işleyiş şekli hakkında bilgi için filtreyle eşleştirildiğinden emin olmak için Amaçlar ve Amaç Filtreleri ve Amaç filtreleri bölümünü inceleyebilirsiniz.
- özellikler:
android:scheme
- URI'ın şema kısmıdır. Bu, bir yöneticinin kullandığı
belirtir. En az bir
scheme
özelliği ayarlanmalıdır veya diğer URI özelliklerinin hiçbiri anlamlı değildir.Sonunda iki nokta üst üste olmadan şu gibi bir şema belirtilir:
http:
yerinehttp
.Filtrede bir veri türü grubu varsa (
mimeType
özelliği) içerir ancak şema bulunmazsacontent:
vefile:
şemaları varsayılır.Not: Android çerçevesinde şema eşleştirme büyük/küçük harfe duyarlıdır. Sonuç olarak, şemaları daima küçük harf kullanın.
android:host
- .
URI yetkilisinin ana makine kısmıdır. Bu özellik anlamsız
ancak
scheme
özelliği değeri de belirtilir. Birden çok alt alan adını eşleştirmek için yıldız işareti (*
) kullanın: ana makinede sıfır veya daha fazla karakteri eşleştirir. Örneğin, ana makine*.google.com
ile eşleşirwww.google.com
,.google.com
vedeveloper.google.com
.Yıldız işareti, barındırıcı özelliğinin ilk karakteri olmalıdır. Örneğin, sunucu Yıldız işareti joker karakteri ilk karakter olmadığı için
google.co.*
geçersiz.Not: Android çerçevesinde ana makine adı eşleştirme resmi RFC'nin aksine büyük/küçük harfe duyarlıdır. Bu nedenle her zaman ana makine adlarını küçük harfle yazın.
android:port
- URI yetkilisinin bağlantı noktası kısmı. Bu özellik yalnızca anlamlıdır
scheme
ve Şunun için dehost
özellikleri belirtildi: seçin. android:path
android:pathPrefix
android:pathSuffix
android:pathPattern
android:pathAdvancedPattern
- URI'ın
/
ile başlaması gereken yol kısmı.path
özelliği,Intent
nesnesindeki tam yolla eşleşen yol. İlgili içeriği oluşturmak için kullanılanpathPrefix
özelliği, eşleşen kısmi bir yolu belirtirIntent
nesnesindeki yolun yalnızca ilk kısmı.İlgili içeriği oluşturmak için kullanılan
pathSuffix
özelliği,Intent
nesnesini tanımlayın ve bu özelliğin/
karakteriyle başlaması gerekmez. İlgili içeriği oluşturmak için kullanılanpathPattern
özelliği, tamamlanmayla eşleşen tam yolu belirtir yolununIntent
olduğunu fark eder, ancak şu joker karakterleri içerebilir:- Yıldız işareti (
*
), sıfır ila çok sayıda olan bir diziyle eşleşir karakteri ekleyin. - ve ardından yıldız işareti (
.*
) gelen nokta, çok fazla karakter kullanabilirsiniz.
pathAdvancedPattern
özelliği,Intent
nesnesinin tam yolunu belirtir ve aşağıdaki normal ifade benzeri kalıpları destekler:-
Nokta (
.
) herhangi bir karakterle eşleşir. -
Bir grup (
[...]
), karakter aralıklarıyla eşleşir. Örneğin ,[0-5]
0 ile 5 arasındaki tek bir rakamla eşleşir, ancak 6 ile 9 arasında eşleşmez.[a-zA-Z]
. büyük/küçük harf kullanımı fark etmeksizin herhangi bir harfle eşleşir. Setler "not" özelliğini de destekler^
değiştiricisi. -
Yıldız işareti (
*
) değiştiricisi, önceki kalıpla sıfır veya daha fazla kez eşleşir. -
Artı (
+
) değiştiricisi önceki kalıpla bir veya daha fazla kez eşleşir. -
Aralık (
{...}
) değiştiricisi, bir kalıbın kaç kez gösterileceğini belirtir eşleşebilir.
pathAdvancedPattern
eşleştiricisi, eşleştirme ve ölçümde eşleşmenin , geri izleme desteği olmadan gerçek zamanlı olarak kalıba göre yapılır.Çünkü dize okunurken çıkış karakteri olarak
\
kullanılır kalıbı olarak ayrıştırılmadan önce iki kez kod dışına almanız gerekir. Örneğin, bir*
harfi\\*
olarak yazılır ve\
değişmez değeri\\\
olarak yazılır. Örneğin, Google Haberler'de dizeyi Java kodunda oluşturma.Bu beş kalıp türü hakkında daha fazla bilgi için
PATTERN_LITERAL
,PATTERN_PREFIX
,PATTERN_SIMPLE_GLOB
,PATTERN_SUFFIX
vePATTERN_ADVANCED_GLOB
PatternMatcher
sınıfı.Bu özelliklerin anlamlı olması için
scheme
host
özellikleri de belirtilir.pathSuffix
vepathAdvancedPattern
, API düzeyi 31'de kullanıma sunuldu. - Yıldız işareti (
android:mimeType
image/jpeg
veyaaudio/mpeg4-generic
gibi bir MIME medya türü. Alt tür,*
alt tür eşleşiyor.Amaç filtrelerinin, aşağıdakileri içeren bir
<data>
öğesi bildirmesi yaygın bir durumdur. yalnızcaandroid:mimeType
özelliği kullanılabilir.Not: Android çerçevesinde MIME türü eşleşmesi resmi RFC MIME türlerinin aksine büyük/küçük harfe duyarlıdır. Sonuç olarak her zaman küçük harfler kullanarak MIME türlerini belirtme
- tanıtıldığı yer:
- API düzeyi 1
- ayrıca bkz.:
<action>
<category>
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2024-08-20 UTC.
[]
[]
{
"last_modified": "Son güncelleme tarihi: 2024-08-20 UTC.",
"state": ""
}