導航:首頁 > 操作系統 > androidintentfilter

androidintentfilter

發布時間:2022-05-09 13:49:06

A. android中,intentfilter怎麼動態添加屬性

千 鋒扣丁學堂iOS開發為您解答: 1. Android把安裝的包中可獲得的Intent Filter放到一個列表中。 2. 動作和與正在解析的Intent的種類不關聯的Intent Filter會從列表中刪除。 2.1. 動作匹配指Android Intent Filter包含特定的動作或沒有指定的動作。一個Intent Filter有一個或多個定義的動作,如果沒有任何一個能與Intent指定的動作匹配的話,這個Intent Filter在算作是動作匹配檢查失敗。 2.2. 種類匹配更為嚴格。Intent Filter必須包含所有在解析的Intent中定義的種類。一個沒有特定種類的Intent Filter只能與沒有種類的Intent匹配。 3. Intent的數據URI中的部分會與Intent Filter中的data標簽比較。如果Intent Filter定義scheme,host/authority,path或mimetype,這些值都會與Intent的URI比較。任何不匹配都會導致Intent Filter從列表中刪除。 沒有指定data值的Android Intent Filter會和所有的Intent數據匹配。 3.1. mimetype是正在匹配的數據的數據類型。當匹配數據類型時,你可以使用通配符來匹配子類型(例如,earthquakes/*)。如果Intent Filter指定一個數據類型,它必須與Intent匹配;沒有指定數據的話全部匹配。 3.2. scheme是URI部分的協議——例如,http:,mailto:,tel:。 3.3. host-name或「data authority」是介於URI中scheme和path之間的部分。匹配主機名時,Intent Filter的scheme也必須通過匹配。 3.4. 數據path是緊接在「data authority」的後面(例如,/ig)。path只在scheme和host-name部分都匹配的情況下才匹配。 4. 如果這個過程中多於一個組件解析出來的話,它們會以優先度來排序,可以在Android Intent Filter的節點里添加一個可選的標簽。最高等級的組件會返回。 Android本地的應用程序組件和第三方應用程序一樣,都是Intent解析過程中的一部分。它們沒有更高的優先度,可以被新的Activity完全的代替,這些新的Activity宣告自己的Intent Filter能響應相同的動作請求。

B. android應用程序開發中的intentfilter是什麼,怎麼用

在intent中設置action,
data,
categroy之後在對應的intentfilter中設置相同的屬性即可通過過濾被activity調用詳細的過濾規則你上網查查吧~特別是data的過濾規則~

C. android開發的AndroidManifest.xml為何要有 <intent-filter> ,這是什麼作用

意圖過濾器說白了就是在你啟動程序時,最先啟動的是那個activity。所以說<intent-filter>是必須有的。 否則android不知道先啟動誰。

D. 安卓開發的時候在Manifest文件中有一個<intent-filter>裡麵包含<action>和<category>

Android 會根據 manifest.xml 是啟動相應的應用程序。
啟用應用程序的時候,會啟用對應的Activity,啟用的這些Activity也要在manifest.xml中聲明。
你說的這個<intent-filter>在聲明的時候用到的,是在activity下一級,而<action>和<category>又是在<intent-filter>的下一級
<activity...
<intent-filter>...
<action...
<category...
</intent-filter>
</activity>

<intent-filter> 就理解為過濾器,它指定了啟動應用程序的Intent對象的動作和類型

<action android:name="android.intent.action.MAIN" />
--> 表示這個activity是主入口,換句話說, 你只要啟動這個應用程序,就要首先調用這個activity
<category android:name="android.intent.category.LAUNCHER" />
--> 表示這個activity種類,要加到LAUNCHER程序列表裡。

希望對你有用。

E. AndroidManifest.xml里的application,intent-filter,action ,category ,service 代表什麼意思

application 就是表示應用程序啊

activity 就是表示一個界面,Activity

intent-filter 就是意圖過慮器,
action ,category是圖標過過慮器的一些屬性設置
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
這個就是表示在桌面創建一個圖標,同時也是程序的啟動入口
service 就是運行在後面的服務

F. Android IntentFilter問題

IntentFilter實際上相當於Intent的過濾器,一個應用程序開發完成後,需要告訴Android系統自己能夠處理哪些隱形的Intent請求,這就需要聲明IntentFilter。IntentFilter的使用方法實際上非常簡單,僅聲明該應用程序接收什麼樣的Intent請求即可。

IntentFilter過濾Intent時,一般是通過Action、Data及Category三方面進行監測的。接下來分別對這三方面進行介紹。
(1)檢查Action
一個Intent只能設置一種Action,但是一個IntentFilter卻可以設置多個Action過濾。當IntentFilter設置了多個Action時,只需一個滿足即可完成Action驗證。當IntentFilter中沒有說明任何一個Action時,那麼任何的Action都不會與之匹配。而如果Intent中沒有包含任何Action,那麼只要IntentFilter中含有Action時,便會匹配成功。
(2)檢查Data
數據的監測主要包含兩部分,即數據的URI及數據類型,而數據URI又被分成三部分進行匹配(scheme、authority、path),只有這些全部匹配時,Data的驗證才會成功。
(3)檢查Category
IntentFilter同樣可以設置多個Category,當Intent中的Category與IntentFilter中的一個Category完全匹配時,便會通過Category的檢查,而其他的Category並不受影響。但是當IntentFilter沒有設置Category時,只能與沒有設置Category的Intent相匹配。

G. android,,,manifest.xml 怎麼有兩個 <intent-filter >每個作用是什麼啊

首先注意每個intent-filter
是在不同的activity里。
<intent-filter
>
<action
android:name="android.intent.action.MAIN"
/>
<category
android:name="android.intent.category.LAUNCHER"
/>
</intent-filter>
這個是FirstActivity類的,表示這個activity是主頁面,就是app運行時的啟動頁面。
<intent-filter
>
<action
android:name="test_action"
/>
<category
android:name="android.intent.category.DEFAULT"
/>
</intent-filter>
這個是SecondActivity類的,表明想得到一個action為「test_action」的intent,從你的類名猜測,你應該是從FirstActivity跳轉到SecondActivity。那麼在創建intent時,設置action為「test_action」,則可以實現。
簡單的說Intent是請求或者意圖,你可以使用IntentFilter
來過濾出自己想要的intent,詳細了解可在網上搜索intent關鍵字。

H. Android Studio的intent-filter,action,category是什麼

准確來說這仨不屬於Android studio,而是屬於Android系統里的重要的三個屬性。
註:Android系統里一些屬性或者名詞的翻譯總是不能確切表達其真實的含義,僅供理解參考。
Android基本的設計理念是鼓勵減少組件間的耦合,因此Android提供了Intent (意圖) ,Intent提供了一種通用的消息系統,它允許在你的應用程序與其它的應用程序間傳遞Intent來執行動作和產生事件。使用Intent可以激活Android應用的三個核心組件:活動、服務和廣播接收器。
提起intent-filter(意圖過濾器),首先得知道Intent(意圖),Intent Filter(意圖過濾器)其實就是用來匹配隱式Intent的,當一個意圖對象被一個意圖過濾器進行匹配測試時,只有三個方面會被參考到:動作、數據(URI以及數據類型)和類別。這其中就包含action和category.
action表示你接下來的行為,比如你要打開一個新的activity,這個行為就成為一個動作。
category表示這個動作的類型。
我們來舉個例子:
<activity android:name=".SplashActivity" android:theme="@style/LaunchScreenTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
用一句通俗的話描述就是:當intent-filter收到帶有action為"android.intent.action.MAIN"de intent時,就會執行category里的「android.intent.category.LAUNCHER」對SplashActivity進行操作。

I. android 大神新手求助啊。。。在AndroidManifest.xml中多個intent-filter屬性,怎麼區分哪個是主入口啊。

一個應用程序可以有多個Activity,每個Activity是同級別的,那麼在啟動程序時,最先啟動哪個Activity呢?有些程序可能需要顯示在程序列表裡,有些不需要。怎麼定義呢?android.intent.action.MAIN決定應用程序最先啟動的Activity
,android.intent.category.LAUNCHER決定應用程序是否顯示在程序列表裡。Main和LAUNCHER同時設定才有意義,

如果有多個同級的Activity都有過濾器

<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>

則只有最前面的Activity的 <action
android:name="android.intent.action.MAIN"
/> 有效,啟動該程序時,執行的是該Activity。且在程序列表中有多個圖標,這些Activity都在程序列表中顯示,該Application有多個入口,執行不同的Activity,但是整個程序的主入口(整個程序最先運行的那個activity)只有最先定義的那個Activity。

如 果一個應用沒有LAUNCHER則該apk仍能安裝到設備上,但是在主程序圖中看不到。如果給那個Activity
設定了LAUNCHER,且同時設定了Main,則這個Activity就可出現在程序圖中;如果沒有Main,則不知啟動哪個Activity,故也不會有圖標出現。

閱讀全文

與androidintentfilter相關的資料

熱點內容
c語言中的排序演算法 瀏覽:596
php原生鏈接資料庫 瀏覽:44
web前端後端程序員 瀏覽:24
萬能zip的壓縮包怎麼解壓 瀏覽:40
國內動漫用什麼app看 瀏覽:353
樹莓派高級編程 瀏覽:928
30歲學編程晚嗎 瀏覽:68
解壓專家怎麼打開 瀏覽:86
php開源留言板 瀏覽:49
新鄉市區疫情怎麼查詢app 瀏覽:158
我的世界伺服器怎麼弄圖 瀏覽:999
vc6的編譯框 瀏覽:198
程序員寫照 瀏覽:539
怎麼退出github伺服器版本 瀏覽:797
雲伺服器sip 瀏覽:910
對稱平衡型壓縮機 瀏覽:953
rust連接什麼伺服器 瀏覽:382
php刪除數組的空元素 瀏覽:74
有什麼古今翻譯的app 瀏覽:54
華為平板里的app熱門推薦怎麼關閉 瀏覽:731