Android安全笔记-Intent和PendingIntent基本概念
Intent
Intent:應用傳遞消息的結構體;
? ? ·通知瀏覽器打開一個網頁;
? ? ·同志通話撥打某個號碼;
? ? ·啟動activity;
? ? ·啟動service;
? ? ·發出broadcast。
Intent包含幾個屬性:
| 屬性 | 說明 | 描述 |
| ComponentName | 啟動的組件名稱 | explicit/implicit |
| Action | 執行的動作,系統定義或者應用定義動作 | |
| Data | 傳遞的數據和數據類型 | |
| Category | 組件類型 | |
| Extras | 額外的信息,key-value對 | |
| Flags | 標志位 |
這里的explicit/implicit為顯示調用和隱式調用。
顯示調用:指明了用什么應用,比如美圖付款,點支付寶,他就只會去調用支付寶;
隱式調用:比如微信傳文本,點擊打開,他很模糊的要你選,用哪個應用去打開。
Intent Filter
組件聲明其接受的Intent類型;
系統匹配Intent策略:
? ? ·如果是Explicit,運行指定的組件;
? ? ·如果是Implicit:
? ? ? ? ·Action匹配:fiter中某一個action需要和Intent的action匹配:
? ? ? ? ? ? ·filter為空,無匹配;
? ? ? ? ? ? ·intent為空,filter至少需要一個action,則匹配;
? ??? ??·Category匹配:intetn為空,則匹配任意filter;
? ? ? ? ·Data匹配:<scheme>://<host>:<port>/<path>
PendingIntent
PendingIntent用于包裹Intent,授權其他應用使用Intent。
? ? ·聲明一個Intent,當用戶點擊通知欄的時候執行;
? ? ·聲明一個Intent,當用戶操作App Widget執行;
? ? ·聲明一個Intent,當某個特定時候執行,比如AlarmManger。
不是立即執行Intent,在為了某個指定的行為下才觸發執行。
總結
以上是生活随笔為你收集整理的Android安全笔记-Intent和PendingIntent基本概念的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信息安全工程师笔记-10种端口扫描技术概
- 下一篇: C++工作笔记-在项目中解决编码问题小技