- Android底層開發實戰
- 周慶國
- 1579字
- 2018-12-31 21:06:23
自序
隨著4G網絡在全國范圍內大規模部署,以及各種無線熱點如雨后春筍般在城市遍地開花,甚至在鄉村開枝散葉,無線寬帶變得越來越普遍,這使得移動設備的應用場景變得更加豐富多彩,人與人之間能夠更加方便地隨時隨地通過多種方式進行溝通,文字、圖片已經不再新鮮,視頻通信、視頻點播也不在話下。智能手機在性能、功能上不斷提升,而價格卻越來越親民。如今,在國內大部分人都有一部智能手機。手機猶如錢包、鑰匙一樣,已經成為每個人隨身攜帶的必備物。智能手機已經不僅僅是一部移動電話,更是一個移動平臺,既能當作語音、視頻的通信平臺,又能當作游戲、娛樂的平臺,甚至還可以在手機上處理業務。
如今,傳統的互聯網已經轉向移動互聯網,以前還是PC之間的互聯,如今變成了移動設備之間的互聯。而“萬物聯網”的概念也已經炒得非常火熱,不管是英特爾、三星、高通這樣的集成芯片巨頭,還是像微軟這樣的軟件巨頭,都在推出自己相應的軟硬件產品,以趁這個發展勢頭在物聯網時代占得自己的一席之地。將來,所有的“物”都會更加智能,能夠更好地與人互動,與其他“物”通信。那時的網絡會成為一個人與人、人與物、物與物之間有著萬億連接的龐大網絡。
而在物聯網時代,移動設備,尤其是智能手機,勢必會成為一個核心的接入點,去連接和感知周圍環境中的一切。比如通過連接家里的空調、電視機、空氣凈化器等家用電器,手機會告知甚至自動為用戶調節家里的溫度和濕度,或控制家里的電視、燈具;通過連接身上攜帶的傳感器并跟蹤用戶的身體參數,如心跳、呼吸、運動量等,手機可以告知健康狀況并給出專業的建議。此外,智能手機也會成為車聯網的一大重要接入點,可以遠程開啟車門,遠程反饋汽車的整體狀態。總而言之,在萬物聯網的時代,智能手機會扮演舉足輕重的角色。
2007年11月5日,Google推出開放的Android操作系統,同時宣布建立一個全球性的聯盟組織,該組織由34家手機制造商、軟件開發商、電信運營商以及芯片制造商共同組成。這一聯盟將支持Google發布的手機操作系統以及應用軟件,將共同開發Android系統的開放源代碼。其他公司和個人也可以免費獲取源代碼并進行SDK的開發。正是因為Android的開放性以及優異的性能,使它得到了眾多廠商的支持。前有三星、摩托羅拉、HTC、索尼,后有異軍突起的小米、聯想、華為等,紛紛推出了自己定制的Android平臺手機。國際研究及顧問機構Gartner公布的最新統計數據表明2014年全球智能手機銷售量總計12億部。另據市場調研公司IDC提供的數據,2014年全年,Android全球智能機所占市場份額為81.5%;其次才是蘋果公司的iOS,占14.8%。眾星拱月式的擁護,使Android在短短5年內超越iOS以及曾經輝煌一時的塞班系統,順利雄踞智能手機市場占有率榜首。
不管從功能、性能上,還是從市場占有率及開發者數量上,都說明Android會成為物聯網時代一個重要的操作系統。
對于Android底層開發者來說,需要面對復雜多變的應用場景、紛繁的外圍設備、不同標準的互聯通信,這些無疑都是巨大的挑戰。這就要求底層開發者除了掌握軟件編程,還要熟悉底層的硬件設備,需要在實踐中鍛煉自己的技能。目前在市場上也出現了兼容Android操作系統的開源硬件平臺,比如BeagleBone、pcDuino等,這對于很多愛好Android的創客來說,是一大利好。就像開源軟件Linux和開源硬件Arduino,正是依靠龐大的社區,才使其能夠在全世界得到飛快的傳播。龐大的社區,不管是對于開發者本身的學習和開發過程,還是對于Android的發展,都會帶來積極的促進作用。
在編寫本書的過程中,我們與創客社團和Google開發者社區(GDG)的成員溝通時發現,無論是初學者還是開發者,都偏重于軟件而缺乏硬件基礎,所以非常希望更深入地了解底層的硬件。而且,兼容Android的外圍設備越來越多,也迫使底層開發人員去掌握基本的硬件知識和底層驅動開發。
因此,在Google大學合作部的大力支持下,幾位從事嵌入式開發的教師合作編寫了本書。本書在編寫過程中也融入了幾位老師的研究課題以及教學經驗,希望能對從事和學習Android底層開發的人員有所幫助。
編者
2015年8月
- Mastering ElasticSearch
- Designing Purpose:Built Drones for Ardupilot Pixhawk 2.1
- 從零開始寫Linux內核:一書學透核心原理與實現
- Learn Helm
- Windows Server 2012 Hyper-V Cookbook
- 混沌工程實戰:手把手教你實現系統穩定性
- 移動應用UI設計模式(第2版)
- Microsoft Operations Management Suite Cookbook
- 精解Windows 10
- Ubuntu Linux操作系統實用教程
- Linux網絡操作系統項目教程(RHEL 7.4/CentOS 7.4)(第3版)(微課版)
- Office 365 User Guide
- Azure Resource Manager Templates Quick Start Guide
- Less Web Development Essentials
- Docker容器技術與運維