Android是什麼(What is Android)

來源:互聯網
上載者:User

Android是什嗎?

    Android是一個針對於行動裝置的軟體棧,它包括作業系統,中介軟體和關鍵應用。AndroidSDK提供了在Android平台使用Java程式設計語言進行開發應用程式的必要的工具和API。

特點

    *應用程式架構  使組件可重用並且可替換

    *Dalvik虛擬機器  為行動裝置最佳化

    *整合的瀏覽器  基於開源的WebKit引擎

    *最佳化的圖形處理  以定製的2D圖形庫和基於OpenGLES 1.0規範的3D圖形(可選的硬體加速)為基礎

    * SQLite 結構化資料的儲存

    *媒體支援  常見的音視頻格式,還是圖形格式(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)

    *GSM電話  (基於硬體)

    *藍芽,EDGE,3G和WiFi  (基於硬體)

    *照相機,GPS,指南針,加速感應器  (基於硬體)

    *豐富的開發環境  包括裝置模擬器,調試工具,記憶體和效能分析工具和用於Eclipse IDE的外掛程式

Android構架

    顯示了Android作業系統的主要組成部分。每個部分進行了更詳細說明。

 

應用

 

    Android將配備一系列核心應用程式,包括電子郵件用戶端,簡訊程式,日曆,地圖,瀏覽器,通訊錄等。所有的應用程式都是使用Java程式設計語言。

應用程式框架

    通過提供一個開放的開發平台,Android給予了開發人員構建極為豐富和創新類的應用程式的機會。開發這可以自由地利用裝置,訪問位置資訊,運行後台服務,設定鬧鐘,在狀態條裡添加通知等等。

    開發人員可以使用和核心應用程式使用的完全相同的API架構。應用程式架構的設計的目的是為了簡化組件的重用;任何應用程式都發行就緒它的功能,其他的應用程式可能會利用到這些功能(需遵守架構提供的安全約束)。依靠同樣的機制,組件可以被使用者所取代。

    底層的所有的應用程式是一組服務和子系統,包括:

    *一組豐富並且可擴充的view,這組view可以被用來構建一個應用程式,包括列表,表格,文字框,按鈕,甚至可嵌入的Web瀏覽器

    *一組ContentProvider,可以使應用程式訪問其它應用程式的資料(比如通訊錄),或者共用自己的資料。

    *一個資源管理員,提供對非代碼資源的訪問,比如本地化的字串,圖形和布局檔案

    *一個通知管理,可以使所有的應用程式在狀態列顯示定製的提醒

    *一個Activity管理,它管理的應用程式的生命週期,並且提供了一個通用的後台切換棧

    如需瞭解一個應用程式的詳細資料和具體樣本,請參考Notepad程式碼範例。

    Android包括了一套C/C++庫,這套庫被Android系統的各個組件使用。這些能力通過Android應用程式框架展示給應用開發人員。一些核心庫的如下:

    *系統C庫 - 一個針對於標準C系統庫(libc)的BSD派生的實現,針對於嵌入式Linux裝置進行了調整

    *媒體庫 - 基於PacketVideo的的OpenCore;該庫支援回放和錄製許多流行的音頻和視頻格式,以及靜態影像檔,包括MPEG4,H.264,MP3,AAC,AMR,JPG和PNG格式

    *Surface管理器 - 管理訪問顯示子系統和從多個程式中無縫合成二維和三維圖形層

    *LibWebCore - 一個流行的Web瀏覽器引擎,它對Android瀏覽器和嵌入式Web視圖具有良好的支援

    *SGL - 底層的2D圖形引擎

    *3D庫 - 基於OpenGL ES 1.0 API的一個實現;該庫使用硬體3D加速(如果可用)或包含高度最佳化的3D軟體光柵掃描器

    *FreeType – 用於位元影像和向量字型渲染

    *SQLite - 一個提供給所有的應用程式使用的強大的,並且輕量級的關係型資料庫引擎

Android 的運行

    Android包括一組核心庫,這組核心庫提供了用於Java程式設計語言的核心庫可用的大多數功能。

    每個Android應用都運行在它自己的進程裡,並依附一個單獨的Dalvik虛擬機器執行個體。一個裝置可以高效地運行多個Dalvik虛擬機器。 Dalvik虛擬機器執行Dalvik可執行檔(.dex)的格式,此格式做了最小的記憶體佔用最佳化。Dalvik虛擬機器是基於寄存器的,並運行由dx工具將Java語言編譯器編譯完的class檔案轉換為的dex格式檔案。

    Dalvik虛擬機器的底層功能依賴Linux核心,例如線程和底層的記憶體管理。

Linux核心

    Android的核心系統服務,比如安全,記憶體管理,進程管理,網路通訊協定棧和驅動模組都是依賴於Linux 2.6。核心也作為在硬體和軟體棧之間的抽象層。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.