Android InterFilter的匹配規(guī)則

以Activity為例评姨,Android的Activity的InterFilter一共有三種:action、category萤晴、data吐句。我們用Intent隱式啟動(dòng)時(shí)需要根據(jù)Activity的這三種標(biāo)簽進(jìn)行匹配胁后。Service與BroadcastReceiver同理。

匹配規(guī)則

一.action

action的匹配規(guī)則分為兩種情況:
1.沒有data標(biāo)簽嗦枢,或者說(shuō)只有action和category標(biāo)簽時(shí)择同,action要求Intent的action必須存在且和<intent-fileter>中的其中一個(gè)action相同。
2.有data標(biāo)簽時(shí)净宵,Intent只需要指定data標(biāo)簽(startActivity或startActivityForResult時(shí)系統(tǒng)默認(rèn)加上android.intent.category.DEFAULT標(biāo)簽,相當(dāng)于有category和data兩種標(biāo)簽)即可裹纳,無(wú)需指定action择葡,當(dāng)然指定也沒問(wèn)題。

二.category

1.需要隱式啟動(dòng)的Activity必須在<intent-fileter>中加上android.intent.category.DEFAULT標(biāo)簽剃氧;
2.Intent只加category標(biāo)簽啟動(dòng)Activity會(huì)報(bào)錯(cuò)敏储,必須配合action或者data使用;
3.Intent若未添加category標(biāo)簽朋鞍,startActivity或者startActivityForResult時(shí)會(huì)默認(rèn)加上android.intent.category.DEFAULT標(biāo)簽已添。
4.Intent若含有category,則所有的category都必須與<intent-fileter>中的其中一個(gè)相同滥酥。

三.data

1.Activity若含有data標(biāo)簽更舞,則Intent必須要有與之匹配的data。
2.data的語(yǔ)法:

<data android:scheme="string"
          android:host="string"
          android:port="string"
          android:path="string"
          android:pathPattern="string"
          android:pathPrefix="string"
          android:mimeType="string"/>

Scheme:URI的模式坎吻。
Host:URI主機(jī)名
Port:URI端口號(hào)
Path缆蝉、pathPattern、pathPrefix:表述路徑信息瘦真,path標(biāo)識(shí)完整的路徑信息刊头;pathPattern也表示完整路徑信息,但是它里面可以包含通配符"",""表示0個(gè)或多個(gè)任意字符诸尽;pathPrefix表示路徑的前綴信息原杂。
其中string代表字符串,如android:mimeType="image/*"您机,data標(biāo)簽可以只有android:mimeType穿肄。如:

<data android:mimeType="image/*"/>

此時(shí)雖然沒有指定URI,但是Intent中的URI默認(rèn)是content或者file才能匹配际看。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末被碗,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子仿村,更是在濱河造成了極大的恐慌锐朴,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,591評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蔼囊,死亡現(xiàn)場(chǎng)離奇詭異焚志,居然都是意外死亡衣迷,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門酱酬,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)壶谒,“玉大人,你說(shuō)我怎么就攤上這事膳沽『共耍” “怎么了?”我有些...
    開封第一講書人閱讀 162,823評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵挑社,是天一觀的道長(zhǎng)陨界。 經(jīng)常有香客問(wèn)我,道長(zhǎng)痛阻,這世上最難降的妖魔是什么菌瘪? 我笑而不...
    開封第一講書人閱讀 58,204評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮阱当,結(jié)果婚禮上俏扩,老公的妹妹穿的比我還像新娘。我一直安慰自己弊添,他們只是感情好录淡,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,228評(píng)論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著油坝,像睡著了一般赁咙。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上免钻,一...
    開封第一講書人閱讀 51,190評(píng)論 1 299
  • 那天彼水,我揣著相機(jī)與錄音,去河邊找鬼极舔。 笑死凤覆,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的拆魏。 我是一名探鬼主播盯桦,決...
    沈念sama閱讀 40,078評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼拥峦!你這毒婦竟也來(lái)了磨确?” 一聲冷哼從身側(cè)響起恃泪,我...
    開封第一講書人閱讀 38,923評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤琼了,失蹤者是張志新(化名)和其女友劉穎颊郎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體宫患,經(jīng)...
    沈念sama閱讀 45,334評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,550評(píng)論 2 333
  • 正文 我和宋清朗相戀三年皇帮,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片户矢。...
    茶點(diǎn)故事閱讀 39,727評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖殉疼,靈堂內(nèi)的尸體忽然破棺而出梯浪,到底是詐尸還是另有隱情,我是刑警寧澤瓢娜,帶...
    沈念sama閱讀 35,428評(píng)論 5 343
  • 正文 年R本政府宣布挂洛,位于F島的核電站,受9級(jí)特大地震影響眠砾,放射性物質(zhì)發(fā)生泄漏虏劲。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,022評(píng)論 3 326
  • 文/蒙蒙 一褒颈、第九天 我趴在偏房一處隱蔽的房頂上張望柒巫。 院中可真熱鬧,春花似錦谷丸、人聲如沸堡掏。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)泉唁。三九已至,卻和暖如春揩慕,著一層夾襖步出監(jiān)牢的瞬間亭畜,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工迎卤, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留拴鸵,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,734評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像宝踪,于是被迫代替她去往敵國(guó)和親侨糟。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,619評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • Intent組件雖然不是四大組件瘩燥,但卻是連接四大組件的橋梁秕重,學(xué)習(xí)好這個(gè)知識(shí),也非常的重要厉膀。 一溶耘、什么是Intent...
    困惑困惑困惑閱讀 1,509評(píng)論 0 0
  • ¥開啟¥ 【iAPP實(shí)現(xiàn)進(jìn)入界面執(zhí)行逐一顯】 〖2017-08-25 15:22:14〗 《//首先開一個(gè)線程,因...
    小菜c閱讀 6,402評(píng)論 0 17
  • Intent簡(jiǎn)介Android中提供了Intent機(jī)制來(lái)協(xié)助應(yīng)用間的交互與通訊服鹅,Intent負(fù)責(zé)對(duì)應(yīng)用中一次操作的...
    Android_lml閱讀 957評(píng)論 1 7
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,078評(píng)論 25 707
  • 讀大學(xué)的價(jià)值也許在于凳兵,能認(rèn)識(shí)未來(lái)幾十年最重要的朋友,能分辨哪些人自己一輩子都不會(huì)交往企软,能集中解決很多困惑庐扫,從而形成...
    小小夢(mèng)想日記閱讀 571評(píng)論 0 1