Android應用程序結構

本文介紹Android的體系結構,Android應用程序的組成和Android應用的邏輯組成。java

 

1. Android體系結構linux

Android的軟件層次結構包括一個操做系統,中間件,應用程序。其軟件層次結構自上而下可分爲:數據庫

  • 應用程序
  • 應用程序框架
  • 各類庫和Android的運行時環境
  • 操做系統層

應用程序:以java語言編寫,設計用戶界面交互設計。Android自己提供了桌面,聯繫人,電話,瀏覽器等不少核心的應用。瀏覽器

 

應用程序框架:爲應用程序提供系統的API。經過Android的應用程序框架,開發人員可重用各類組件和服務。應用程序的框架組成部分:框架

  • UI組件:包括列表,文本框,按鈕等UI組件,是用戶可視的部分。
  • Content Providers:提供了一種應用程序程序可實現數據的訪問和共享的機制。
  • Notification Manager:能讓應用程序將本身的警告信息顯示在狀態欄上,如顯示收到新短信,提示電池信息。
  • Activity Manager:管理應用程序的生命週期,並提供應用程序頁面退出的機制。

 

Android庫和運行時環境eclipse

Android包含一些核心的C/C++庫,這些庫能經過JNI技術供系統的各類組件使用。ide

這些庫包括:佈局

  • 系統C庫:從BSD繼承來的標準C庫。
  • 媒體庫:包括多種經常使用的音頻,視頻格式回放和錄製。同時支持靜態圖像文件,支持MPEG4,MP3,AAC,JPG,PNG,H.264,AMR等多種編碼格式。
  • Surface Manager:管理顯示子系統,併爲多個應用程序提供2D和3D的無縫融合。
  • LibWebCore:瀏覽器引擎。
  • SGL:底層的2D圖形引擎。
  • 3D librarie:提供3D加速。
  • FreeType:提供位位圖和矢量的字體顯示。
  • SQLite:數據庫應用。

Android包含了一個核心庫,該核心庫提供了java語言核心庫的大多數功能。字體

每個Android應用程序都在本身的進程空間內運行,都擁有一個獨立的dalvik虛擬機實現。Dalvik被設計成一個設備,可同時高效的運行多個虛擬系統。dalvik虛擬機依賴於linux內核的一些功能,如線程調度,內存管理。動畫

 

2. Android應用程序組成

Android程序包括如下四部分:

  • Activity
  • Broadcast Intent Receiver
  • Server
  • Content Provider

Activity,通常表明手機屏幕的一屏,至關於瀏覽器的一個頁面。在Activity中添加view,實現應用界面和用戶交互。一個應用程序通常由多個Activity構成,這些Activity之間可互相跳轉,可進行頁面間的數據傳遞。每一個Activity都有本身的生命週期。

Intent Receiver,Intent是一次對將要執行的操做的抽象描述。經過Intent,可實現Activity與Activity之間的跳轉。Intent最重要的組成部分是Intent的動做(Action)和動做對應的數據(data)。與Intent相關的一個類叫Intent Filters。它用來描述Intent可以用來處理哪些操做。

Broadcast Intent Receiver,用於響應外部事件。BroadcastReceiver不能生成UI,因此對用戶來講是不可見的。

Service,運行在後臺的應用程序。

Content Provider:一個Content Provider提供了一組標準的接口,從而可以讓應用程序保存或讀取Content Provider的各類數據類型。一個應用程序可經過它將本身的數據暴露出去。對於外界的應用程序來講,它不須要關心這些數據的存儲方式,存儲地方,只須要經過Content Provide提供的r接口訪問這些數據便可。固然這涉及到數據訪問的權限問題。

 

3. Android工程文件組成

Android的開發使用eclipse+ADT。

工程文件包括:

  • 源文件:使用java語言編寫的代碼,包括各類Activity的實現。
  • R.java:由eclipse自動生成,包含了應用程序所使用到的資源ID。
  • Android library:Android庫文件。
  • assets:放置多媒體文件等。
  • res:應用程序所需的資源文件,如圖標,動畫,顏色等。
    • drawable:圖片資源
    • layout:描述了Activity的佈局。
    • values:定義字符串,顏色等
  • Android Manifest.xml:應用程序的配置文件。在該文件中聲明應用程序的名稱,使用到的Activity,Service,Receive,權限等。
相關文章
相關標籤/搜索