- söz dizimi:
- Veri etiketi bir
<intent-filter>
öğesinin doğrudan alt öğesiyse:
<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" />
Veri etiketi bir<uri-relative-filter-group>
öğesinin doğrudan alt öğesiyse:
<data android:path="string" android:pathPattern="string" android:pathPrefix="string" android:pathSuffix="string" android:pathAdvancedPattern="string" android:fragment="string" android:fragmentPattern="string" android:fragmentPrefix="string" android:fragmentSuffix="string" android:fragmentAdvancedPattern="string" android:query="string" android:queryPattern="string" android:queryPrefix="string" android:querySuffix="string" android:queryAdvancedPattern="string" />
- Şunlarda bulunur:
-
<intent-filter>
<uri-relative-filter-group>
- description:
- Intent filtresine veri spesifikasyonu ekler. Spesifikasyon,
mimeType
özelliğini, bir URI'yi veya hem veri türünü hem de URI'yi kullanan bir veri türüdür. URI, her bir parçası için ayrı özelliklerle belirtilir:<scheme>://<host>:<port>[<path>|<pathPrefix>|<pathPattern>|<pathAdvancedPattern>|<pathSuffix>]
URI biçimini belirten bu özellikler isteğe bağlıdır ancak birbirine bağlıdır:
- Intent filtresi için
scheme
belirtilmezse diğer tüm URI özellikleri yoksayılır. - Filtre için bir
host
belirtilmezseport
özelliği ve tüm yol özellikleri yok sayılır.
Aynı
<intent-filter>
öğesinde bulunan tüm<data>
öğeleri aynı filtreye katkıda bulunur. Örneğin, aşağıdaki filtre spesifikasyonu:<intent-filter . . . > <data android:scheme="something" android:host="project.example.com" /> ... </intent-filter>
şu ifadeye eşdeğerdir:
<intent-filter . . . > <data android:scheme="something" /> <data android:host="project.example.com" /> ... </intent-filter>
Bir
<intent-filter>
içine birden fazla veri seçeneği sunmak için istediğiniz sayıda<data>
öğesi yerleştirebilirsiniz. Özelliklerinin hiçbirinde varsayılan değer yok.Intent nesnelerinin filtrelerle eşleşme kuralları da dahil olmak üzere intent filtrelerinin işleyiş şekliyle ilgili bilgi edinmek için Intent'ler ve Intent Filtreleri bölümüne ve manifest dosyasına genel bakıştaki Intent filtreleri bölümüne bakın.
- Intent filtresi için
- özellikleri:
android:scheme
- URI'nin şema bölümü. Bu, bir URI belirtmek için gereken minimum temel özelliktir. Filtre için en az bir
scheme
özelliği ayarlanmalıdır. Aksi takdirde diğer URI özelliklerinin hiçbiri anlamlı olmaz.Şemalar, sonundaki iki nokta işareti olmadan belirtilir (ör.
http:
yerinehttp
).Filtrede veri türü ayarlanmışsa (
mimeType
özelliği kullanılarak) ancak şema yoksacontent:
vefile:
şemalarının kullanıldığı varsayılır.Not: Android çerçevesindeki şema eşleştirme, RFC'den farklı olarak büyük/küçük harfe duyarlıdır. Bu nedenle, şemaları her zaman küçük harf kullanarak belirtin.
android:host
-
Bir URI yetkilisinin ana makine bölümü. Filtre için bir
scheme
özelliği de belirtilmediği sürece bu özellik anlamsızdır. Birden fazla alt alan adını eşleştirmek için ana makinedeki sıfır veya daha fazla karakteri eşleştirmek üzere yıldız işareti (*
) kullanın. Örneğin,*.google.com
ana makinesiwww.google.com
,.google.com
vedeveloper.google.com
ile eşleşir.Yıldız işareti, ana makine özelliğinin ilk karakteri olmalıdır. Örneğin, yıldız işareti joker karakteri ilk karakter olmadığı için
google.co.*
ana makinesi geçersizdir.Not: Android çerçevesindeki ana makine adı eşleştirme, resmi RFC'den farklı olarak büyük/küçük harflere duyarlıdır. Bu nedenle, ana makine adlarını her zaman küçük harflerle belirtin.
android:port
- URI yetkilisinin bağlantı noktası kısmı. Bu özellik yalnızca filtre için
scheme
vehost
özellikleri de belirtilmişse anlamlı olur. android:path
android:pathPrefix
android:pathSuffix
android:pathPattern
android:pathAdvancedPattern
- URI'nin yol bölümü.
/
ile başlamalıdır.path
özelliği, birIntent
nesnesinde tam yola göre eşleşen bir tam yol belirtir.pathPrefix
özelliği,Intent
nesnesinde yolun yalnızca ilk kısmıyla eşleşen bir kısmi yol belirtir.pathSuffix
özelliği,Intent
nesnesinde yolun bitiş kısmıyla tam olarak eşleştirilir ve bu özelliğin/
karakteriyle başlaması gerekmez.pathPattern
özelliği,Intent
nesnesinde tam yola eşleşen bir tam yol belirtir ancak aşağıdaki joker karakterleri içerebilir:- Yıldız işareti (
*
), hemen önceki karakterin sıfır ila çok sayıda tekrarından oluşan bir diziyle eşleşir. - Nokta ve ardından yıldız işareti (
.*
), sıfır ila çok sayıda karakterden oluşan herhangi bir diziyle eşleşir.
pathAdvancedPattern
özelliği,Intent
nesnesinin tam yoluyla eşleşen bir tam yol belirtir ve aşağıdaki normal ifade benzeri kalıpları destekler:-
Nokta (
.
) herhangi bir karakterle eşleşir. -
Küme (
[...]
), karakter aralıkları ile eşleşir. Örneğin ,[0-5]
0 ile 5 arasındaki tek bir rakamla eşleşir ancak 6 ile 9 arasındaki rakamlarla eşleşmez.[a-zA-Z]
büyük/küçük harf fark etmeksizin herhangi bir harfle eşleşir. Kümeler, "değil"^
değiştiricisini de destekler. -
Yıldız işareti (
*
) değiştiricisi, önceki kalıpla sıfır veya daha fazla kez eşleşir. -
Artı (
+
) değiştirici, önceki kalıpla bir veya daha fazla kez eşleşir. -
Aralık (
{...}
) değiştirici, bir kalıbın eşleşebileceği sayıyı belirtir.
pathAdvancedPattern
eşleştirici, geri izleme desteği olmadan eşleştirmenin gerçek zamanlı olarak kalıpla yapıldığı bir değerlendirme uygulamasıdır.Dize XML'den okunduğunda
\
bir kaçış karakteri olarak kullanıldığı için desen olarak ayrıştırılmadan önce iki kez kaçış karakteri eklemeniz gerekir. Örneğin,*
değişmezi\\*
olarak,\
değişmezi ise\\\
olarak yazılır. Bu, Java kodunda dize oluştururken yazdığınıza benzer.Bu beş kalıp türü hakkında daha fazla bilgi için
PatternMatcher
sınıfındakiPATTERN_LITERAL
,PATTERN_PREFIX
,PATTERN_SIMPLE_GLOB
,PATTERN_SUFFIX
vePATTERN_ADVANCED_GLOB
özelliklerinin açıklamalarını inceleyin.Bu özellikler yalnızca filtre için
scheme
vehost
özellikleri de belirtilmişse anlamlıdır.pathSuffix
vepathAdvancedPattern
, API düzeyi 31'de kullanıma sunulmuştur. - Yıldız işareti (
android:fragment
android:fragmentPrefix
android:fragmentSuffix
android:fragmentPattern
android:fragmentAdvancedPattern
-
URI parçası için eşleştirici.
#
ön ekini dahil etmeyin. Her bir özelliğin anlamı ve izin verilen kalıplar için yukarıdakiGenellikle URI kodlaması yapılan karakterleri eşleştirmek için özellik değerine ham (kodlanmamış) biçimi ekleyin. Örneğin,
<data android:fragment="test!" />
,#test!
ve#test%21
ile eşleşir.API düzeyi 35'te kullanıma sunulmuştur.
android:query
android:queryPrefix
android:querySuffix
android:queryPattern
android:queryAdvancedPattern
-
URI sorgu parametresi (ve isteğe bağlı olarak bir değer) için eşleştirici. Örneğin,
?param=value
ile biten URI'leri<data android:query="param=value" />
ile eşleştirebilirsiniz.?
ön ekini dahil etmeyin. Her bir özelliğin anlamı ve izin verilen kalıplar için yukarıdakiGenellikle URI olarak kodlanan karakterleri eşleştirmek için özellik değerine ham (kodlanmamış) biçimi ekleyin. Örneğin,
<data android:query="test!" />
,?test!
ve?test%21
ile eşleşir.API düzeyi 35'te kullanıma sunulmuştur.
android:mimeType
image/jpeg
veyaaudio/mpeg4-generic
gibi bir MIME medya türü. Alt tür, herhangi bir alt türün eşleştiğini belirtmek için yıldız joker karakteri (*
) olabilir.Bir intent filtresinin yalnızca
android:mimeType
özelliğini içeren bir<data>
öğesi tanımlaması yaygındır.Not: Android çerçevesindeki MIME türü eşleştirme, resmi RFC MIME türlerinden farklı olarak büyük/küçük harflere duyarlıdır. Bu nedenle, MIME türlerini her zaman küçük harf kullanarak belirtin.
- kullanıma sunulduğu sürüm:
- API düzeyi 1
- Ayrıca:
<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-12-21 UTC.
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2024-12-21 UTC."],[],[]]