自從2011-10-19 google公司發布了android4.0版本,下載源碼后,一直沒有時間看下,正好需要看下JoyStick(游戲手柄)框架代碼,所以兩者代碼進行對比瀏覽看看。
Android系統差不多每半年一次的升級步伐,每代Android系統都以甜點命名,
1.5版叫做Cupcake(紙杯蛋糕)
1.6版為Donut(甜甜圈)
2.0/2.1叫Éclair(閃電泡芙,一種法式奶油夾心甜點)
2.2版為Froyo(凍酸奶)
2.3版為Gingerbread(姜餅)
3.0版叫Honeycomb(蜂窩)及
4.0版稱為Ice Cream Sandwich (冰激凌三明治)。以C D E F G H字頭順序排列
=======================================================================================================
從網上搜到的信息:(轉自 http://www.enet.com.cn/article/2011/1130/A20111130943222.shtml )
1.新的UI界面更加的人性化
相信關注安卓系統的朋友都看過了早些時候網上發布的Android4 .0系統界面。這次看看發布會上的照片吧。
2.新的通知系統
Android 4.0的通知系統有了很大的改進,用戶可以自己決定哪些應用可以發送通知。
Android 4.0的通知系統現在可以直接向側面滑動刪去通知條目,這樣的操作也出現在應用管理列表中。
3.語音輸入系統和面部識別功能
Duarte說新系統的鍵盤在糾錯、精度方面有了很大改進。他還演示了語音輸入系統,說“smiley face”直接在輸入框中插入一個笑臉。
4.新的安卓瀏覽器
Android 4.0的瀏覽器現在直接支持將完整網頁離線保存。比第三方應用更好的是該功能現在與默認瀏覽器完全集成。實現實時預覽功能,單一手勢關閉所有瀏覽器標簽,快速訪問臺式機版網站。能夠自動與Chrome瀏覽器實現數據同步。
5.大幅強化了GMail
Android 4.0的Gmail大幅強化,瀏覽郵件時左右滑動直接切換上一封/下一封郵件。同時增加了離線搜索功能,可訪問過去30天內收到的郵件。新的 GMail 界面,完全集成會話模式,大幅強化了GMail。
6.數據使用管理功能
Android 4.0集成的數據追蹤系統可以追蹤、分析移動數據流量,設置移動數據使用上限,它集成于系統內部,功能非常齊全,第三方的數據流量管理工具前途堪憂。
每月總是怕流量超過的朋友這回不用擔心了,流量管理工具還能具體查看每個應用產生的流量。
7.拍照模式的強化
Android 4.0所拍照片只需三次點擊就能分享到G+、Facebook、Twitter等任意SNS服務,如果國行引入的話肯定會增加人人網,新浪微博等分享。
Android 4.0新的照片應用現在可以像Instagram一樣加濾鏡,并且還能加相框、進行全景拍攝。并且相機可以識別人臉,集成 Zero Shutter 技術,快門反應極快,連拍很快。
8.新加入的people應用
People應用是通訊錄的進化,以聯系人照片為核心,界面偏重滑動而非點擊。
People應用集成了其它通信工具,比如Twitter、Linkedin、Google+,不出意外的話還會支持自己添加第三方服務。
people應用與Gmail整合,點擊郵件里的頭像就能彈出附有大照片的快捷聯系方式,通過Gmail、信息、第三方服務快速聯系對方。
9.Android Beam應用
Android Beam是基于NFC的分享方式,兩部支持NFC的Android手機背靠背碰一下就能分享機上內容。該功能還會向第三方開放。
10.其他一些功能
Android 4.0可以通過長按電源鍵和音量鍵截圖,不再需要其它軟件。
加入新型“Roboto”字體,適用于高清顯示屏,實時墻紙功能。
=======================================================================================================
其實一句話就搞定了:谷歌新一代Android 4.0系統擁有全新設計的UI,界面簡化,運行速度能力提升。系統內置全新的壁紙,在使用手機上的觸摸按鈕時會出現發光效果,并且增加了語音輸入、人臉識別、照片編輯、流量監測、Android Beam功能。
三個設計準則:取悅用戶,簡化生活,與眾不同,Android4.0在設計中遵循了這樣的準則,因此是一個幅度很大的升級。
=================================================================================================================================
但對于數字電視開發者來說,關心重點是如下幾大亮點:
1、全新設計的UI,擁有一流的新UI ,并且界面簡化,運行速度提升
2、運行速度大幅度提升
3、系統對硬件沒有要求
4、游戲支持能力提升
它們是怎么完成的,這些靠字面意思是搞不定的,那么就讓我們一起來閱讀其frameworks代碼解讀一下吧,大致了解一下吧。
hardware 代碼: 增加了hwcomposer.h(Hints are set by the HAL and read by SurfaceFlinger);定義增加了audio及camera這塊,以前2.3是沒有這塊的;對gralloc分成gpu及fb單獨處理的模塊,更清晰了。
bionic 標C代碼: 雖然有393個文件發生變更,但主體功能上沒有變動
build 這涉及到整個android系統的編譯規則,差異達到82個文件,沒有一個個的比較查看,后面開發編譯過程中就會涉及到
frameworks 核心框架代碼:這一塊肯定是涉及到變化最大的點,從全新設計UI這塊特性可以看出,差異文件達到3100個文件,并增加了9000個文件左右,這塊變動相當大,就應該就是真正升級的核心點了。
libcore : 與媒體播放框架代碼相關,后面再深入研究一下
dalvik虛擬機: 總共有671個文件發生變更,這一塊的話我正在看2.3的虛擬機設計代碼,后面再單獨寫出來
libcore : 與媒體播放框架代碼相關,后面再深入研究一下
system:其中core是關于最小化可啟動的環境代碼,extras是針對底層調試及檢查工具的代碼,差異文件達到257個
prebuild: 工具鏈與以前的版本基本一致,不過ARM使用的arm-eabi-4.4.3進行了修改,具體點不得而知
external : 增加了一些開源庫代碼
對于SDK及NDK與移植無關,所以暫時沒有關注它
整個代碼量太大,從原來的2.3版本的1G左右到目前達到1.7G左右代碼,這些增加及修改的代碼夠學習很久了,最好的方式還是邊做邊看邊學吧,自然就熟悉起來了。