自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

深度剖析Android應用領(lǐng)域說明

移動開發(fā) Android
Android會同一個核心應用程序包一起發(fā)布,Android應用主要是由四種組件組成的,這四種組件可參考“Android應用的構(gòu)成 ”。

在每一個Android應用程序都可能會在自己的進程中運行,都擁有一個獨立的Dalvik虛擬機實例,Android是一個有數(shù)百兆大小的較大系統(tǒng),各部分之間是有機聯(lián)系的,僅供大家學習思考。

Intent負責對應用中一次操作的動作、動作涉及數(shù)據(jù) 、附加數(shù)據(jù)進行描述,Android則根據(jù)此Intent的描述,負責找到對應的組件,將 Intent傳遞給調(diào)用的組件,并完成組件的調(diào)用。因此,Intent在這里起著一個媒體中介的作用,專門提供組件互相調(diào)用的相關(guān)信息,實現(xiàn)調(diào)用者與被調(diào)用者之間的解耦。

例如,在一個聯(lián)系人 維護的應用中,當我們在一個聯(lián)系人列表屏幕(假設(shè)對應的Activity為listActivity)上,點擊某個聯(lián)系人后,希望能夠跳出此聯(lián)系人的詳細信息屏幕(假設(shè)對應的Activity為detailActivity)

為了實現(xiàn)這個目的,listActivity需要構(gòu)造一個 Intent,這個Intent用于告訴系統(tǒng),我們要做“查看”動作,此動作對應的查看對象是“某聯(lián)系人”,然后調(diào)用startActivity (Intent intent),

將構(gòu)造的Intent傳入,系統(tǒng)會根據(jù)此Intent中的描述,到ManiFest中找到滿足此Intent要求的Activity,系統(tǒng)會調(diào)用找到的 Activity,即為detailActivity,最終傳入Intent,detailActivity則會根據(jù)此Intent中的描述,執(zhí)行相應的操作。

在Android參考文檔中,對Intent的定義是執(zhí)行某操作的一個抽象描述(確實很抽象)。我們先來看看這里的抽象描述,到底描述了什么。首先, 是要執(zhí)行的動作(action)的一個簡要描述,如VIEW_ACTION(查看)、EDIT_ACTION(修改)等,Android為我們定義了一套標準動作:

  1. MAIN_ACTION  
  2. VIEW_ACTION  
  3. EDIT_ACTION  
  4. PICK_ACTION  
  5. GET_CONTENT_ACTION  
  6. DIAL_ACTION  
  7. CALL_ACTION  
  8. SENDTO_ACTION  
  9. ANSWER_ACTION  
  10. INSERT_ACTION  
  11. DELETE_ACTION  
  12. RUN_ACTION  
  13. LOGIN_ACTION  
  14. CLEAR_CREDENTIALS_ACTION  
  15. SYNC_ACTION  
  16. PICK_ACTIVITY_ACTION  
  17. WEB_SEARCH_ACTION  

此外,我們還可以根據(jù)應用的需要,定義我們自己的動作,并可定義相應的Android應用來處理我們的自定義動作,其次, 是執(zhí)行動作要操作的數(shù)據(jù)(data)。Android中采用指向數(shù)據(jù)的一個URI來表示,如在聯(lián)系人應用中,一個指向某聯(lián)系人的URI可能為:

  1. <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
  2.        package="com.android.notepad  
  3. "> 
  4.      <application android:icon="@drawable/app_notes" 
  5.              android:label="@string/app_name"> 
  6.  
  7.          <provider class=".NotePadProvider" 
  8.                  android:authorities="com.google.provider.NotePad  
  9. /> 
  10.  
  11.          <activity class=".NotesList" android:label="@string/title_notes_list"> 
  12.              <intent-filter> 
  13.                  <action android:value="android.intent.action.MAIN" /> 
  14.                  <category android:value="android.intent.category.LAUNCHER" /> 
  15.              </intent-filter> 
  16.              <intent-filter> 
  17.                  <action android:value="android.intent.action.VIEW" /> 
  18.                  <action android:value="android.intent.action.EDIT" /> 
  19.                  <action android:value="android.intent.action.PICK" /> 
  20.                  <category android:value="android.intent.category.DEFAULT" /> 
  21.                  <type android:value="vnd.android.cursor.dir/vnd.google.note  
  22. /> 

Android應用,被執(zhí)行動作的附加信息。例如 LAUNCHER_CATEGORY 表示Intent 的接受者應該在Launcher中作為***應用出現(xiàn);而ALTERNATIVE_CATEGORY表示當前的Intent是一系列的可選動作中的一個,這些動作可以在同一塊數(shù)據(jù)上執(zhí)行。

type(數(shù)據(jù)類型),顯式指定Intent的數(shù)據(jù)類型(MIME)。一般Intent的數(shù)據(jù)類型能夠根據(jù)數(shù)據(jù)本身進行判定,但是通過設(shè)置這個屬性,可以強制采用顯式指定的類型而不再進行推導。

component(組件),指定Intent的的目標組件的類名稱。通常 Android會根據(jù)Intent 中包含的其它屬性的信息,比如action、data/type、category進行查找。最終找到一個與之匹配的目標組件。但是,如果 component這個屬性有指定的話,將直接使用它指定的組件,而不再執(zhí)行上述查找過程。指定了這個屬性以后,Intent的其它所有屬性都是可選的。

【編輯推薦】

  1. Android應用程序組建原理深入剖析
  2. Android SMS短信服務(wù)相關(guān)概念簡述
  3. PythonAndroid數(shù)據(jù)庫相關(guān)代碼解讀
  4. PythonAndroid安裝卸載程序具體操作方法解析
  5. Android應用程序的四個關(guān)鍵點
責任編輯:chenqingxiang 來源: NET130
相關(guān)推薦

2010-03-10 10:22:01

以太網(wǎng)交換機

2010-02-26 11:20:53

Python應用

2010-03-01 13:49:24

Python應用

2011-05-13 15:28:47

2009-11-24 14:06:46

PHP應用領(lǐng)域

2010-02-23 09:52:39

2021-10-04 15:04:46

無人機技術(shù)安全

2010-02-22 13:53:22

Python 中文亂碼

2010-01-15 18:50:37

C++語言

2011-05-27 16:23:39

SEO

2012-07-06 15:26:59

HTML5

2020-11-04 15:34:19

5G

2024-02-19 16:38:23

物聯(lián)網(wǎng)IoTIIoT

2010-02-23 10:50:11

Python 測試框架

2010-03-04 10:11:17

Android手機系統(tǒng)

2010-01-13 10:16:42

C++軟件

2021-08-26 14:22:13

區(qū)塊鏈數(shù)字錢包比特幣

2019-08-07 11:27:24

人工智能大數(shù)據(jù)物聯(lián)網(wǎng)

2012-09-03 14:22:02

2012-05-31 02:35:43

MySQLWEBNoSQL
點贊
收藏

51CTO技術(shù)棧公眾號