郁悶的是Andriod的開發網站 developer.android.com 是無法訪問。另,源代碼網站為 http://source.android.com ,不知道為什么?需要訪問 http://developer.android.com.nyud.net/index.html ,雖然慢點,但是至少可以訪問, http://androidappdocs.appspot.com/ 這個站點比較快。在 Android 擁戴者的奇特世界觀 中有個很有趣的對比:
Android:開源的 Linux + Google 的封閉軟件 + 私有的基帶 + 運營商鎖定 = 開放的 Android 手機
iPhone:開源的 BSD + 蘋果的閉源軟件 + 私有的基帶 + 運營商鎖定 = 封閉的蘋果 iPhoneAndroid:正義!一個平庸的應用商店,開發者依靠廣告賺錢,商店并非獨此一家,用戶找不到好軟件。 (開發者只需一次性支付25美金)
iPhone:邪惡!一個出色的應用商店,開發者憑本事吃飯,商店獨此一家,開店的要收點錢。顧客得到物美價廉的商品。 (開發者需每年支付99美金)Android:自由!酷,每個人都在用。這個公司應該運營一切,而且很快就會實現,除非競爭者阻止他們在每部手機、每臺電視和 PC 上推廣開源而自由的文化。
iPhone:奴役! 如此的不酷以至于每個人都在用。他們認為這個公司應該運營一切,除非競爭者阻止他們在開放的市場將手機、電視和電腦推銷給每一個人。
在verycd上面可以下載 www.mars-driod.com 的一個視頻教程,不錯,推薦一下。
這是一張Google官方給出的著名的圖,Andriod的Architechture。下面有些內容可能不完全理解,不過隨著以后的學習應當會明了,先有個大概印象吧。
Applications :不需要解釋,這些使用JAVA語言,據說Andriod也提供了native的API,不知道可否用于建立app。
Application Framework :提供一個開放的開發平臺。開發者可以完全訪問,也是Andriod上層應用開發者所關注的。包括下面的內容:
- View :提供UI,包括lists,grids, text boxes, buttons,包括嵌入web browser
- Content Providers :允許應用從其他應用中獲得數據或者分享他的數據。(這是否就是IPC)
- Resource Manager : 提供獲取non-code resources,例如localized strings, graphics, and layout files。
- Notification Manager :允許應用將用戶的警告星系顯示在status bar 。
- Activity Manager :管理應用的生命周期并提供一個通用的瀏覽的backstack。
Libraries: Andriod給系統的各個組件提供C/C++庫。上面的application framework,在此庫上建立。
- System C library - 標準的C system library (libc), 這個對于做嵌入系統的交叉編譯工具鏈都是非常熟悉了。
- Media Libraries - 基于PacketVideo's OpenCORE,支持playback和錄音,支持多種音視頻格式和靜態圖形格式,包括MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG
- Surface Manager - 提供2D和3D圖形
- LibWebCore - web browser engine
- SGL - the underlying 2D graphics engine
- 3D libraries - 基于OpenGL ES 1.0 APIs; 使用包括硬件3D加速,以及highly optimized 3D software rasterizer
- FreeType - bitmap and vector font rendering (字體渲染)
- SQLite - a powerful and lightweight relational database engine
Android Runtime: 就是著名JAVA的runtime:Core Lib包括常用的類庫以及Google自己為手持設備開發的Dalvik虛擬機。其執行文件的格式為.dev。
Linux Kernel: Linux version 2.6.x,包括安全,存儲管理,進程管理,網絡stack,驅動模塊,電源管理。
具體,可以閱讀 http://developer.android.com.nyud.net/guide/basics/what-is-android.html 。其他 http://android.git.kernel.org/ 可以看到最新的源代碼, http://androidappdocs.appspot.com , 可以看看最新幫助文檔。
相關鏈接: 我的Andriod開發相關文章
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
