Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 高級開發 >> 幾分鐘教會您使用Android基本組件

幾分鐘教會您使用Android基本組件

編輯:高級開發

android基本組件在日常生活中的應用還是很普遍的,但是要熟練的使用Android基本組件的前提是先要了解下什麼是Android基本組件?以及android基本組件的組成部分。

Intent包含6中基本信息,分別為:目標組件名稱,Action(動作),Data(數據),Category(類別),Extra(額外信息),Flag(標志)。Intent分為顯示Intent和隱式Intent。顯示Intent是在目標組件名稱中指定目標組件的包名和類名,Intent請求會直接發送給這個組件。

由於不可能知道其他應用的類名及包名,所以顯示Intent不可能用於不同應用程序,它只能在一個應用程序中傳遞消息。隱式Intent查找目標組件的方法是根據IntentFilter。每個android基本組件(Activity,Service,BroadcastReceiver)都需要在androidManifest.XML中聲明自己的IntentFilter。

以描述這個組件可以接受的Intent請求。android系統會根據Intent中的信息查找IntentFilter,看是否匹配,以確定接受Intent請求的組件。影響android匹配的因素是Intent中的Action、Data、Category。

隱式Intent不需要目標組件的名稱來激活該組件,這樣可以應用於在不同應用程序之間傳遞消息。下面是我對於Intent機制的一種理解,不知猜的對不對。 在android中,系統維護一個數據結構,用於描述每種Intent可以匹配的組件。可以采用Hashtable<key Intent類型(Action), value 可以匹配的組件的列表>

這樣就可以把不同類型的Intent映射為可以處理該Intent的組件。在每個應用程序安裝時,系統搜索androidManifest.XML。根據每個組件的IntentFilter信息,調用Hashtable.put(IntentFilter.Action, 組件)把每個組件注冊到系統中。

android基本組件就可以輕松的維護每個組件可以處理的Intent信息。當某個組件發出一個Intent請求時android系統會根據Intent的信息調用Hashtable.get(Intent.Action)得到所有與之匹配的組件列表,從而找到可以響應該Intent的組件。

正是由於隱式Intent的存在,才可以實現不同應用程序可以共享彼此的功能組件這是優勢。一個應用程序要啟動其他應用程序的一個組件時只要傳遞正確的Intent即可,從這一點上看android系統是一個組件的集合,它的運行的基本單位是組件,而不是一個應用程序。

白色版HTC G1android平台的研發隊伍陣容強大,包括摩托羅拉、Google、HTC(宏達電)、PHILIPS、T-Mobile、高通、魅族、三星、LG以及中國移動在內的34家企業,都將基於該平台開發手機的新型業務,應用之間的通用性和互聯性將在最大程度上得到保持。

“開放手機聯盟”表示,android平台可以促使移動設備的創新,讓用戶體驗到最優越的移動服務,同時,開發商也將得到一個新的開放級別,更方便的進行協同合作,從而保障新型移動設備的研發速度。

34家企業的加盟,也將大大降低新型手機設備的研發成本,完全整合的“全移動功能性產品”成為“開放手機聯盟”的最終目標。這34家企業中並不包含把持SymBian的諾基亞,以及憑借著iPhone風光正在的蘋果公司,美國運營商AT&T和Verizon,當然微軟沒有加入,獨樹一幟的加拿大RIM和他們的Blackberry也被擋在門外。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved