? ? ? ?1、要執行的操作
? ? ? ?通常以Intent類中的常量來表示。例如,要訪問查看某個URL,可以使用Intent.ACTION_VIEW;要發送郵件,可以使用Intent.ACTION_SEND。
? ? ? ?2、要訪問數據的位置
? ? ? ?這可能是設備以外的資源,如某個網頁的URL,也可能是指向某個文件的URI,或者是指向ContentProvider中某條記錄的某個內容URI(content URI)。
? ? ? ?3、操作涉及的數據類型
? ? ? ?這指的是MIME形式的數據類型,如text/html或audio/mpeg3。如果一個intent包含數據位置,那么通常可以從中推測出數據的類型。
? ? ? ?4、可選類別
? ? ? ?如果操作用于描述具體要做什么,那么類別通常用來描述我們是何時、何地或者如何使用某個activity的。例如,Android的android.intent.category.LAUNCHER類別表明,activity應該顯示在頂級應用啟動器中;而android.intent.category.INFO類別表明,雖然activity向用戶顯示了包信息,但它不應該顯示在啟動器中。
? ? ? ?一個用來查看某個網址的簡單隱式intent會包括一個Intent.ACTION_VIEW操作,以及某個具體URL網址的Uri數據。
? ? ? ?基于以上信息,操作系統將啟動適用的activity。
? ? ? ?通過配置文件中的intent過濾器設置,activity會對外宣稱自己是適合處理ACTION_VIEW的activity。例如,如果想開發一款瀏覽器應用,為響應ACTION_VIEW操作,需要在activity聲明中包含以下intent過濾器,如下圖:
? ? ? ?和顯式intent一樣,隱式intent也可以包含extra信息。不過,操作系統在尋找適用的activity時,不會使用附加在隱式intent上的任何extra。
? ? ? ?注意,顯式intent也可以使用隱式intent的操作和數據部分。這相當于要求特定activity去處理特定任務。
? ? ? ?以上就是小編為大家介紹的關于Android開發中隱式intent的主要組成部分,希望能夠幫到大家。如果還有哪些不明白的地方,歡迎來電咨詢。此外,本公司專業從事南昌APP開發、網站建設等服務。如有需要,我們隨時為您效勞。