Intent分爲兩大類,顯性的(Explicit )的和隱性的(Implicit)

文件管理圖標不見了
-- vendor/mediatek/proprietary/packages/apps/FileManager/AndroidManifest.xml --
index 13899bf..018d4e9 100644
@@ -26,7 +26,7 @@
             android:uiOptions="splitActionBarWhenNarrow" >

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

Intent分爲兩大類,顯性的(Explicit )的和隱性的(Implicit)

在前面的例子中,我們在兩個Activity之間跳轉時初步使用了Intent類,當時是用setClass來設置 Intent的發起方與接收方,它被稱爲顯性的Intent,而隱性的Intent則不需要用setClass或setComponent來指
定事件處理器,利用AndroidMenifest.xml中的配置就可以由平臺定位事件的消費者。

一般來說,intent要定位事件的目的地,無外乎需要以下幾個信息:
1.種類(category),比如我們常見的 LAUNCHER_CATEGORY 就是表示這是一類應用程序。
2**.類型(type),**在前面的例子中沒用過,表示數據的類型,這是隱性Intent定位目標的重要依據。
3.組件(component),前面的例子中用的是setClass,不過也可以用setComponent來設置intent跳轉的前後兩個類實例。
4**.附加數據(extras)**,在ContentURI之外還可以附加一些信息,它是Bundle類型的對象

隱式Intent和顯式Intent什麼時候使用。
1**.顯式意圖:用於軟件內部通信**
2**.隱式意圖:用於軟件之間通信(如調用撥號器打電話)**

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章