書名: Android應用程序開發與典型案例作者名: 鄭萌 趙常松等編著本章字數: 1657字更新時間: 2018-12-27 18:22:07
前言
Android一詞的本義指“機器人”,是由Google公司于2007年11月正式對外發布的,作為一種以Linux為基礎的開放源代碼操作系統,主要用于便攜設備。依靠Google的強大開發和媒體資源,憑借其開放性和優異性,Android平臺在發展的過程中得到了包括大手機廠商和著名移動運營商在內的業界的廣泛支持,除手機的應用之外,目前已逐漸擴展到平板電腦及其他領域上。2011年第一季度,Android在全球的市場份額首次超過塞班系統,躍居全球第一。2012年2月數據,Android占據全球智能手機操作系統市場52.5%的份額,中國市場占有率為68.4%。與此同時,隨著行業的迅猛發展,Android研發工程師更是日益成為IT職場的緊缺人才。近幾年來,各大學、院校已經紛紛開設Android移動開發專業。但是,各院校在Android專業教學建設的過程中幾乎都面臨教材難覓、內容更新遲緩的困境。雖然目前市場上的Android開發相關的書籍比較多,但幾乎都是針對有一定基礎的行業內研發人員而編寫的,并不完全符合高校的教學要求。高校教學需要一套充分考慮學生現有知識基礎和接受度的、明確各門課程教學目標的、便于學校安排課時的Android專業系列教材。
針對高校專業教材缺乏的現狀,我們以多年來在嵌入式工程技術領域及移動開發行業內人才培養、項目研發的經驗為基礎,匯總了近幾年積累的數百家企業對Android研發相關崗位的真實需求,并結合行業應用技術的最新狀況及未來發展趨勢,調研了開設Android專業的大學院校的課程設置情況、學生特點和教學用書現狀。通過細致的整理和分析,對專業技能和基本知識進行合理劃分,我們編寫了這套高等院校Android開發人才培養規劃教材,包括以下4種:
■ 《Android系統下Java編程詳解》
■ 《Android應用程序開發與典型案例》
■ 《Android游戲案例開發與關鍵技術》
■ 《Android系統移植與驅動開發技術》
本套教材按照專業整體教學要求組織編寫,各自對應的主干課程之間既相對獨立,又有機銜接,整套教材具有系統性。考慮到Android研發領域對學生Java語言能力要求較高,專門有針對性地編寫了《Android系統下Java編程詳解》這本教材,可供“Java語言基礎”課程的后續提高課程使用;《Android應用程序開發與典型案例》則結合Android應用開發的核心知識,重點突出了貫穿前面所學知識的實訓案例及內容,可供“Android應用程序開發”課程使用;在Android游戲開發方面,根據各院校的教學重點和行業實際應用情況,量身定制了《Android游戲案例開發與關鍵技術》;《Android系統移植與驅動開發技術》側重介紹Android底層移植和驅動技術。
本書是其中之一,主要講解Android應用開發的核心技術及典型應用案例。作為位于Android程序庫和運行時上面的應用程序框架層,Android通過提供開放的開發平臺,使開發者能夠訪問核心應用程序所使用的API框架,這樣使得組件的重用得以簡化,任何應用程序都能發布它的功能且其他應用程序可以使用這些功能(需要服從框架執行的安全限制)。從而使得開發者可以編制極其豐富和新穎的應用程序,自由地利用設備硬件優勢、訪問位置信息、運行后臺服務、設置鬧鐘、向狀態欄添加通知等。本書將結合大量應用實例分析講解Android平臺的應用程序框架層,以幫助學生達到學用結合的目的。
本書共23章,內容包含兩大部分。第一部分是Android程序設計基礎,在講解Android環境搭建以及Android系統基本控件和組件的基礎上,結合豐富的實例介紹了Android系統應用編程中典型的技術,比如,Android中的圖形圖像、多媒體編程、GPS定位與地圖編程等;第二部分是Android程序UI設計原則和方法,主要是從手機軟件的交互設計談起,從方法論的角度介紹了Android用戶界面設計原則和方法、Android用戶界面設計哲學等,并結合實際研發需求給出了具體建議。
本書由華清遠見嵌入式學院資深講師鄭萌主編并統校全稿。本書的完成需要感謝華清遠見嵌入式學院及華清遠見3G學院,教材內容參考了學院與嵌入式及移動開發企業需求無縫對接的、科學的專業人才培養體系。同時劉辰、李倩、謝培良、崔浩、周志強、李宗亮、李姍姍、吳現凱、高良偉、王澤政、蔣鐸、袁升、付世全、趙建喬、趙晶晶、范愛偉等人在書稿的編寫過程中認真閱讀了所有的章節,并在后期審校工作中提供了很多幫助,在此表示衷心的感謝。
由于作者水平所限,書中不妥之處在所難免,懇請讀者批評指正。對于本書的批評和建議,可以發到www.farsight.com.cn網站的技術論壇中。
編著者
2012年6月
- Learn Blockchain Programming with JavaScript
- Mobile Application Development:JavaScript Frameworks
- Intel Galileo Essentials
- C++ Builder 6.0下OpenGL編程技術
- Apache Spark 2 for Beginners
- INSTANT Weka How-to
- C語言程序設計立體化案例教程
- Python 3網絡爬蟲實戰
- PLC編程及應用實戰
- Python數據分析從0到1
- 高級語言程序設計(C語言版):基于計算思維能力培養
- 基于ARM Cortex-M4F內核的MSP432 MCU開發實踐
- 零基礎學Kotlin之Android項目開發實戰
- Emgu CV Essentials
- Domain-Driven Design in PHP