每一位Android開發者應該知道的Android體系架構和開發庫
英文原文:Android Architecture and Libraries Every Android Developer Should Know
Android 的體系架構鼓勵組件重用,允許開發者發布共享 Activity、Service 并且訪問其他應用程序的數據,還可以根據開發者制定的安全限制進行管理。話雖如此,今天我將分享一些關于 Android 架構和開發庫信息,供開發者創建下一個殺手級應用使用。準備好了嗎?請繼續下面的閱讀!
不要被上面的圖片嚇到,你無需了解所有內容。
Android 架構支持開發者創建自己的聯系人應用或者電話撥號程序。你可以公布自己應用的組件,讓其他開發者在此基礎上創建新的用戶界面,進行功能擴展或者其他工作!這是多么奇妙啊?
剖析 Android 體系架構
第一個列表將向開發者展示應用服務,這些服務是 Android 的架構基石。你也可以稱它為所有的 Android 應用程序的支柱框架,為所有開發應用提供支持。
- Activity Manager:控制界面的生命周期,包括管理活動(Activity)棧。
- Views:Views 為應用程序構建用戶界面。
- Notification Manager:提供一貫的非侵入式的機制來通知用戶(例如:當你正在玩游戲時有人給你發短信,通知不會終止你的游戲,你會聽到一個聲音提示)。
- Content Providers:讓開發者在不同應用程序之間共享數據。
- Resource Manager:支持非代碼資源,如字符串和圖形被外部化。
現在你對第一個主要部分有了解,我們可以看看 Android 庫,這將使開發 Android 應用程序更加容易和有趣。正如你所知道的,這些都只是簡短的描述,可以通過我分享的鏈接了解更多!
開發者需要知道的 Android 庫
Android 也提供了大量的 API 開發應用程序。所以在這個列表中,將幫助開發者了解哪些是可用的核心 API。所有的 Android 設備將提供至少這些 API 支持:
- android.util:核心工具包中包含底層類,字符串格式化和 XML 解析工具、底層類??。
- android.os:操作系統包提供了訪問基本的操作系統服務,如消息傳遞、進程間通信、時鐘功能和調試。
- android.graphics:圖形 API 提供了支持畫布、顏色和繪制圖元的低級別的圖形類并且支持繪制畫布。
- android.text:用于顯示和解析文本的文本處理工具。
- android.database:在數據庫處理游標時提供底層類支持。
- android.content:content API 管理數據訪問,提供服務來管理資源、內容提供者(content provider)和包。
- android.view:視圖是核心的用戶接口類。所有用戶界面元素使用的是一系列視圖,以構成用戶交互的組件。
- ** android.widget**:內置在 View 包內,小部件類是“這里是我們前面創建的”用戶界面元素,可以在自己的應用程序中使用。包括列表、按鈕和布局。
- com.google.android.maps:高級的 API,它提供了訪問本地地圖控件,可以在自己的應用程序中使用。包括 MapView 的控制、用于標注和控制您的嵌入式地圖的疊加以及
MapController
類。 - android.app:一個高層次的包,允許訪問應用程序模型。該應用程序包包括
Activity
和Service
的 API 等是 Android 應用程序的基礎。 - android.provider:方便開發者訪問標準的內容提供者(比如聯系人數據庫),
provider
包提供類給開發者訪問標準的數據庫。 - android.telephony:telephony API 讓開發者直接接觸電話底層,開發者可以打電話、接電話、顯示通話記錄、通話狀態和短消息。
- android.webkit:WebKit 的軟件包功能的 API 與基于 Web 的內容的工作,其中包括一個 WebView 控件在您的活動中嵌入瀏覽器和 cookie 管理器。
同樣,你剛才看到的是 Android 的庫可以幫助您快速構建應用程序的簡化列表!除了在 Android API,Android 棧還包括一組的C/C++
庫,可通過應用程序框架發布出來。它們包括:
- OpenGL:用于支持基于 OpenGL ES1.0 API、3D 圖形庫。
- ** FreeType**:這支持位圖和矢量字體渲染。
- ** SGL**:用于提供 2D 圖形引擎的核心庫。
- ibc:標準C庫,為基于 Linux 的嵌入式設備進行了優化。
- SQLite:用于存儲應用程序數據的輕量級的關系數據庫引擎。
- SSL:支持使用安全套接字層加密協議進行安全互聯網通信。
注意:到此,要介紹的就太多了,我將在這里結束。只是多一個部分,你可以做自己的事情。如果你不能看完整個帖子,可以將其加入書簽,以備將來參考。因為,這里的大多數內容不會有太大變化!
高級 Android 開發庫
我們所看到的核心庫,到目前為止提供所有開發 Android 應用程序需要的功能。然而鉆研高級 API 將會使用更高級的功能并帶來額外的樂趣。
盡管如此,值得注意的是,由于 Android 希望針對移動硬件有更廣泛的適應性,因此要注意下列 API 適用的場合和以及使用時裝置是否具備條件。
- android.location:基于位置的服務的 API,使應用程序訪問設備的當前物理位置。基于位置的服務提供通用的訪問使用任何位置固定的硬件或技術設備上可用的位置信息。
- android.media:媒體 API 提供了用于播放音頻和視頻媒體文件,包括流媒體和錄制的支持。
- android.opengl:Android 提供使用的 OpenGL ES API,你可以用它來創建動態 3D 用戶界面為你的應用程序的強大的 3D 渲染引擎。
- android.hardware:如有可能,硬件 API 公開的傳感器硬件,包括攝像頭、加速計和指南針傳感器。
- android.bluetooth,android.net.wifi,android.telephony:Android 也提供了硬件平臺,包括藍牙、Wi-Fi 和電話硬件的低級別的訪問。
當然,你還可以閱讀更多有關 Android 的架構和開發庫,可以點擊這里開始。
感謝閱讀,如果你喜歡本文,請使用下面的按鈕在線與您的朋友分享!如果您有任何疑問,請讓我知道。歡迎向我提意見和建議,通過 非死book、谷歌和 推ter 聯系。哦,請訂閱其他優秀文章。
譯文鏈接: http://blog.jobbole.com/60202/