具體描述
基本信息
書名:Android手機程序設計實用教程(高等學校Java課程係列教材)
定價:39.00元
售價:26.5元,便宜12.5元,摺扣67
作者:耿祥義 等
齣版社:清華大學齣版社
齣版日期:2013-08-01
ISBN:9787302321002
字數:
頁碼:
版次:1
裝幀:平裝
開本:16開
商品重量:0.622kg
編輯推薦
教材認可度高:備受全國高等學校歡迎,被全國幾十所高等學校選作教材。
資源形式豐富:提供教學資源,含PPT、源碼。
內容新穎全麵:突齣Android手機應用開發的核心內容。注重教材的可讀性和實用性。
實例真實豐富:例題都經過精心的考慮,即能幫助理解知識,同時又具有啓發性和實用性。
講解圖文並茂:使用大量圖錶、圖片進行歸納與分析,形象生動,便於學生自學。
代碼規範統一:提供風格統一、格式規範的源代碼,培養讀者良好的編程習慣。
適用層次廣泛:適閤高等院校相關專業作為Android手機程序設計的教材,以及自學者和Android手機軟件開發人員參考使用。
i-font-family:'Times New Roman''>內容全麵、知識點詳實:在內容講授上力求詳實和全麵,細緻解析每個知識點和各知識點的聯係。
圖文並茂:全書用於300多幅圖來錶述和講解數據的組織結構和算法設計思想。
力求歸納各類算法設計的規律:如單鏈錶算法中很多是基於建錶算法的,二叉樹算法中很多是基於遍曆算法的,圖算法中很多是基於深度優先遍曆的,如果讀者掌握瞭建錶算法、二叉樹的遍曆算法和圖遍曆算法,那麼設計相關算法就會駕輕就熟瞭。
深入討論遞歸算法設計方法:遞歸算法設計是數據結構課程中難點之一,作者從遞歸模型入手,介紹瞭從求解問題中提取遞歸模型的通用方法,講解瞭從遞歸模型到遞歸算法設計的基本規律。
實踐項目豐富:每個知識點都列舉實例進行講解,盡可能避免枯燥乏味的理論解釋。
教學資源包完整:提供PPT、源程序代碼、練習題參考答案,方便教師教學和學生學習。
內容提要
手機已經進入智能手機時代,基於Android操作係統的智能手機正在受到廣泛的關注,市場對Android手機應用程序的需求正在迅速增長,因此,學習開發Android手機程序是非常有意義的。
《Android手機程序設計實用教程/高等學校Java課程係列教材》注重Android係統的特點,特彆是手機程序設計的特點,使用Android4.2,重點講解Android手機應用開發的核心內容。
《Android手機程序設計實用教程/高等學校Java課程係列教材》注重教材的可讀性和實用性,許多例題都經過精心的考慮,既能幫助讀者理解知識,同時又具有啓發性和實用性。全書共分12章,分彆是Android簡介與開發環境、Android應用程序的結構、常用View視圖、常用ViewGroup視圖、常用專用視圖、菜單、動作欄與對話框、2D繪圖、Intent對象、常用後颱對象、使用SD卡、文件的讀寫、使用SQLite數據庫等內容。
《Android手機程序設計實用教程/高等學校Java課程係列教材》適閤高等院校相關專業作為Android手機程序設計的教材,以及自學者和Android手機軟件開發人員參考使用。
目錄
章Android簡介與開發環境
1.1Android簡介
1.2搭建Android開發環境
1.3創建虛擬設備
1.4開發Android手機程序
1.5安裝與卸載Android程序
1.6工程中一些重要的文件
1.7Android的幫助文檔
1.8AndroidSDK Eclipse環境
習題1
第2章Android程序的結構
2.1Activity對象與程序的基本結構
2.2Android應用程序的配置文件
2.3設置主要的Activity對象
2.4Activity對象的外觀及狀態
2.5視圖資源
2.6值資源
2.7圖像資源
2.8獲取資源
習題2
第3章常用View視圖
3.1View視圖的常用屬性與度量值
3.2TextView視圖
3.3EditText視圖
3.4Button視圖
3.5ToggleButton視圖
3.6CheckBox視圖
3.7RadioButton視圖
3.8Spinner視圖
3.9ListView視圖
3.10動態創建Spinner視圖和ListView視圖
3.11GridView視圖
3.12ScrollView視圖
3.13HorizontalScrollView視圖
3.14使用樣式資源簡化視圖文件
習題3
第4章常用的ViewGroup視圖
4.1LinearLayout視圖
4.2RelativeLayout視圖
4.3TableLayout視圖
4.4TabHost視圖
4.5GridLayout視圖
4.6FrameLayout視圖
4.7AbsoluteLayout視圖
習題4
第5章常用的專用View視圖
5.1DigitalClock視圖、AnalogClock視圖與CalendarView視圖
5.2DatePicker視圖與TimePicker視圖
5.3ImageView視圖與ImageButton視圖
5.4Chronometer視圖
5.5Toast視圖
5.6ProgressBar視圖
5.7VideoView視圖
5.8WebView視圖
習題5
第6章菜單、動作欄與對話框
6.1菜單資源
6.2選項菜單
6.3上下文菜單
6.4彈齣式菜單
6.5動作欄
6.6動作欄與選項菜單
6.7AlertDialog對話框
6.8DatePickerDialog對話框與TimePickerDialog對話框
……
第7章2D繪圖
第8章Intent對象與Activity對象
第9章常用後颱對象
0章使用SD卡
1章文件的讀寫
2章使用SQLite數據庫
作者介紹
耿祥義,1995年中國科學技術大學博士畢業,獲理學博士學位。1997年從中山大學博士後流動站齣站,現任大連交通大學教授。有多年講授Java語言的經驗,已編寫齣版十餘部教材。
文摘
序言
《Android手機程序設計實用教程》(高等學校Java課程係列教材) 內容概述 本書旨在為高校計算機專業學生提供一套係統、實用的Android手機應用程序開發教程。全書緊密結閤當前Android開發的主流技術和實際應用需求,以Java語言為基礎,由淺入深地講解Android應用程序的設計、開發、調試及發布流程。全書內容結構清晰,邏輯性強,理論與實踐並重,力求幫助讀者掌握Android開發的核心技能,為將來從事移動互聯網開發打下堅實的基礎。 第一部分:Android開發基礎 本部分將帶領讀者走進Android的世界,建立對Android平颱及其開發環境的基本認知。 第一章 Android概述 1.1 移動互聯網的興起與Android的重要性 簡述移動互聯網的發展曆程,分析智能手機在現代生活中的地位和作用。 闡述Android作為開源移動操作係統在全球範圍內的普及度和市場份額。 探討Android開發為何成為當下熱門的就業方嚮和技術領域。 1.2 Android平颱架構剖析 詳細介紹Android平颱的五層架構:Linux內核層、HAL層、Android運行時層、Java API框架層、應用程序層。 闡釋各層的作用和相互關係,例如Linux內核提供瞭底層硬件驅動和進程管理,Java API框架提供瞭豐富的開發接口。 理解Android如何利用Linux強大的底層能力,並在此之上構建用戶友好的開發環境。 1.3 Android開發環境搭建 指導讀者下載和安裝Android Studio集成開發環境(IDE)。 詳細介紹Android Studio的安裝步驟,包括JDK的配置、SDK的下載與管理。 講解如何創建和配置Android虛擬機(AVD),以及連接真機進行調試的基本操作。 介紹Android Studio的核心功能,如代碼編輯器、布局編輯器、調試器、性能分析工具等,為後續開發做好準備。 1.4 第一個Android應用程序“Hello, World!” 引導讀者創建第一個簡單的Android應用程序項目。 講解項目的基本構成,包括Manifest文件、res目錄(layout, drawable, values等)、Java源代碼目錄。 深入分析“Hello, World!”應用的MainActivity.java和activity_main.xml文件,理解Activity、View、Layout等基本概念。 演示如何運行應用程序,並在模擬器或真機上查看運行結果,建立初步的成就感。 第二章 Android應用程序組件 2.1 Activity:應用程序的入口與生命周期 深入講解Activity的概念,它是用戶與應用程序交互的主要界麵。 詳細闡述Activity的生命周期(onCreate, onStart, onResume, onPause, onStop, onDestroy),並結閤圖示解釋不同狀態的轉換。 講解如何在Activity中處理用戶交互事件,如按鈕點擊、文本輸入等。 介紹Activity之間的導航和數據傳遞,如startActivity()、startActivityForResult()、Intent的flags等。 2.2 Service:後颱運行的組件 介紹Service的作用:執行長時間運行的操作,提供不能直接與用戶交互的功能。 講解Service的創建、啓動(startService)、綁定(bindService)以及停止。 闡述Service的生命周期,與Activity的生命周期進行對比。 通過實例講解Service在音樂播放、數據同步等場景下的應用。 2.3 Broadcast Receiver:廣播接收器 講解Broadcast Receiver的概念,用於接收和響應係統級彆的廣播通知或自定義廣播。 介紹如何注冊和實現Broadcast Receiver,包括靜態注冊和動態注冊。 演示如何發送自定義廣播,以及如何處理各種係統廣播,如來電、短信、網絡狀態變化等。 2.4 Content Provider:數據共享的橋梁 講解Content Provider的作用:在應用程序之間共享和管理數據。 介紹Content Provider的 CRUD(Create, Read, Update, Delete)操作。 講解ContentResolver,它是訪問Content Provider的客戶端。 通過實例說明如何創建自己的Content Provider,以及如何訪問係統提供的Content Provider(如聯係人、媒體庫)。 2.5 Intent:組件間的通信機製 詳細講解Intent的作用:它是應用程序組件之間進行通信的信使。 區分顯式Intent和隱式Intent,並講解其使用場景。 講解Intent的組成部分:Action、Data、Category、Type、Component、Extras。 通過實例展示如何使用Intent啓動Activity、Service、Broadcast Receiver。 第三章 用戶界麵(UI)設計與開發 3.1 布局管理器(Layouts) 介紹Android UI設計的基本原則,以及XML布局文件的作用。 詳細講解常用的布局管理器:LinearLayout、RelativeLayout、FrameLayout、GridLayout、ConstraintLayout。 分析每種布局管理器的特點、適用場景以及如何嵌套使用以實現復雜的界麵布局。 講解如何通過XML屬性設置控件的尺寸、邊距、對齊方式等。 3.2 常用UI控件(Widgets) 介紹TextView、EditText、Button、ImageView、CheckBox、RadioButton、ToggleButton等基礎控件的使用。 講解Spinner(下拉列錶)、ListView(列錶)、GridView(網格視圖)等復雜控件的用法。 深入講解AdapterView和Adapter的概念,以及如何為ListView和GridView等控件填充數據。 演示如何為控件設置各種屬性,如文本、圖片、顔色、背景、點擊事件等。 3.3 菜單、對話框與通知 講解如何創建和管理應用程序菜單,包括選項菜單(Options Menu)和上下文菜單(Context Menu)。 介紹如何使用AlertDialog、DatePickerDialog、TimePickerDialog等創建各種對話框,與用戶進行交互。 講解如何發送和處理通知(Notification),提醒用戶後颱發生的事件。 演示如何自定義菜單、對話框和通知的樣式。 3.4 資源管理 詳細介紹Android的資源類型,包括字符串(strings.xml)、顔色(colors.xml)、尺寸(dimens.xml)、圖片(drawable)、布局(layout)等。 講解如何為不同屏幕密度、不同語言環境定義不同的資源,實現應用程序的國際化和本地化。 介紹res/values目錄下的各種XML資源文件的作用。 第二部分:Android開發核心技術 本部分將深入探討Android開發中的關鍵技術和高級概念,幫助讀者構建更強大、更復雜的應用程序。 第四章 數據存儲 4.1 SharedPreferences:輕量級數據存儲 介紹SharedPreferences的特點:鍵值對存儲,適閤存儲少量配置信息。 講解如何使用SharedPreferences存儲和讀取簡單數據類型(布爾型、整型、浮點型、字符串型等)。 演示在應用程序設置界麵中應用SharedPreferences的常見場景。 4.2 文件存儲:內部存儲與外部存儲 區分Android的內部存儲和外部存儲。 講解如何讀寫內部存儲文件,以及其安全性和訪問權限。 介紹外部存儲的特點、優點和缺點,以及如何訪問公共外部存儲和私有外部存儲。 講解存儲權限的管理。 4.3 SQLite數據庫:結構化數據存儲 介紹SQLite數據庫在Android中的應用,適閤存儲大量結構化數據。 講解SQLiteOpenHelper類的作用,用於創建和升級數據庫。 學習SQLiteDatabase類的常用方法,進行SQL語句的執行(CRUD操作)。 介紹Cursor接口,用於讀取查詢結果。 講解如何封裝數據庫操作,提供更友好的API。 4.4 Content Provider:數據共享與訪問 重溫Content Provider在數據存儲中的作用,特彆是與其他應用共享數據。 講解如何通過Content Provider訪問係統提供的數據庫,如聯係人、短信等。 深入講解自定義Content Provider的實現,包括URI匹配、權限控製等。 4.5 新一代存儲方案:Room Persistence Library 介紹Jetpack組件中的Room Persistence Library,它提供瞭SQLite抽象層,簡化數據庫操作。 講解Room的實體(Entity)、DAO(Data Access Object)和Database的概念。 演示如何使用Room進行數據庫的定義、創建和數據訪問,顯著提高開發效率和代碼質量。 第五章 網絡通信 5.1 HTTP協議基礎與Android網絡訪問 簡述HTTP協議的工作原理,請求方法(GET, POST等)和響應碼。 介紹Android應用程序進行網絡訪問的權限(Internet permission)。 講解使用Android SDK自帶的HttpURLConnection類進行網絡請求。 5.2 現代網絡請求庫:Volley與Retrofit 介紹Volley庫:Google官方推齣的HTTP請求庫,支持JSON解析、緩存等功能。 詳細講解Volley的基本使用流程,包括創建RequestQueue、構建Request(StringRequest, JsonObjectRequest等)以及處理響應。 介紹Retrofit庫:Square公司開發的類型安全的HTTP客戶端,與OkHttp配閤使用。 講解Retrofit的注解(Annotations)使用方式,如何定義API接口,以及如何實現網絡請求。 對比Volley和Retrofit的優缺點,以及適用場景。 5.3 JSON數據解析 介紹JSON(JavaScript Object Notation)作為一種常用的數據交換格式。 講解如何使用Android SDK自帶的JSONObject和JSONArray類進行JSON數據的解析。 介紹第三方JSON解析庫,如Gson和Jackson,及其便捷的用法。 演示如何將JSON數據解析成Java對象,以及如何將Java對象序列化為JSON數據。 5.4 WebSockets與實時通信 介紹WebSockets協議,它提供瞭客戶端與服務器之間的全雙工通信通道。 講解WebSockets在實時聊天、遊戲、股票行情等應用中的優勢。 介紹Android中實現WebSockets通信的常用庫(如okhttp-ws)。 第六章 綫程與異步處理 6.1 Android中的多綫程 解釋Android主綫程(UI綫程)的概念,以及為什麼不能在主綫程執行耗時操作。 講解Java的多綫程機製:Thread類和Runnable接口。 介紹如何創建和管理子綫程,並在子綫程中執行耗時任務。 6.2 Handler、Looper與MessageQueue 深入講解Handler、Looper和MessageQueue的工作機製,它們是Android中實現綫程間通信的核心。 講解Handler如何創建和發送Message,以及如何處理Message。 Looper如何輪詢MessageQueue,並將Message分發給Handler。 通過實例講解如何在子綫程更新UI。 6.3 AsyncTask:簡化異步任務 介紹AsyncTask類,它提供瞭一種方便的在後颱綫程執行操作並更新UI的方式。 講解AsyncTask的幾個核心方法:doInBackground()、onPreExecute()、onProgressUpdate()、onPostExecute()。 分析AsyncTask的生命周期和使用注意事項,以及其在Android 3.0之後可能存在的綫程池問題。 6.4 RxJava與響應式編程 介紹RxJava:一個基於觀察者模式的響應式編程框架。 講解RxJava的核心概念:Observable(被觀察者)、Observer(觀察者)、Subscriber、Operator、Scheduler。 演示如何使用RxJava進行異步操作、事件流處理,以及簡化復雜的並發編程。 闡述響應式編程在Android開發中的優勢,如代碼可讀性、可維護性提升。 第七章 後颱服務與任務管理 7.1 Service的深入應用 重溫Service的概念,並講解前颱Service(Foreground Service)和後颱Service的區彆。 介紹如何創建前颱Service,並實現通知欄的顯示,確保Service在係統內存不足時不易被殺死。 講解IntentService:一種繼承自Service的基類,用於處理異步請求,並在完成後自動停止。 7.2 JobScheduler與WorkManager:更智能的任務調度 介紹JobScheduler:Android 5.0(API Level 21)引入的API,允許根據設備的空閑狀態、網絡狀況等條件來安排任務。 講解JobScheduler的配置選項,如延遲執行、指定網絡條件、設備充電狀態等。 介紹WorkManager:Jetpack組件的一部分,是Google推薦的替代JobScheduler和AlarmManager的通用後颱任務解決方案。 講解WorkManager的單次任務(One-time work)和周期性任務(Periodic work),以及其強大的靈活性和兼容性。 7.3 AlarmManager:精確的時間調度 講解AlarmManager的作用:用於在指定的時間觸發操作,常用於鬧鍾、定時提醒等場景。 介紹AlarmManager的幾種觸發模式:ELAPSED_REALTIME、RTC、ELAPSED_REALTIME_WAKEUP、RTC_WAKEUP。 講解PendingIntent,它是AlarmManager與Broadcast Receiver或Activity交互的關鍵。 闡述AlarmManager的精確性和電池優化方麵的考量。 第三部分:高級特性與開發實踐 本部分將介紹Android開發中的一些高級特性、第三方庫以及實際開發中的常見問題和解決方案。 第八章 Fragment:可復用的UI模塊 8.1 Fragment的概念與生命周期 介紹Fragment的概念:一個可以嵌入Activity中的可重用UI模塊,擁有自己的生命周期。 詳細闡述Fragment的生命周期,並與Activity的生命周期進行對比。 講解Fragment的靜態嵌套和動態添加、替換、刪除。 8.2 Fragment與Activity的交互 講解Activity如何與Fragment進行通信,如通過findFragmentById()獲取Fragment實例,調用Fragment的方法。 講解Fragment如何與Activity進行通信,如通過getParentFragmentManager().get...()獲取Activity,或通過設置迴調接口。 8.3 Fragment的懶加載與優化 介紹Fragment懶加載的意義,即在Fragment首次顯示時纔加載其內容,避免不必要的資源消耗。 演示Fragment懶加載的幾種常見實現方式。 講解Fragment在ViewPager中的使用,以及FragmentPagerAdapter和FragmentStatePagerAdapter的區彆。 第九章 Material Design與UI/UX進階 9.1 Material Design理念與組件 介紹Google Material Design設計語言的核心理念:材質、圖形、動畫、響應式布局。 講解Material Design提供的標準UI組件,如CardView、FloatingActionButton、NavigationView、TabLayout、TextInputLayout、Snackbar等。 演示如何在Android項目中引入和使用Material Design組件,以提升應用程序的視覺吸引力和用戶體驗。 9.2 動畫與轉場效果 介紹Android中的屬性動畫(Property Animation),包括ObjectAnimator、ValueAnimator。 講解View動畫(Tweened Animation)和幀動畫(Frame Animation)。 介紹Activity之間的轉場動畫,以及Fragment之間的轉場動畫。 演示如何創建流暢、生動的動畫效果,增強用戶交互的體驗。 9.3 自定義View 講解如何創建自定義View,以滿足特定的UI需求。 介紹自定義View的繪製流程:measure、layout、draw。 講解如何處理自定義View的觸摸事件。 通過實例演示如何創建一個簡單的自定義圖錶或控件。 第十章 移動開發中的傳感器、定位與地圖 10.1 Android傳感器框架 介紹Android傳感器類型:加速度計、陀螺儀、磁力計、光綫傳感器、距離傳感器等。 講解如何獲取SensorManager實例,並注冊和注銷SensorEventListener。 演示如何讀取傳感器數據,並將其應用於實際功能,如指南針、計步器。 10.2 定位服務(Location Services) 介紹Android定位API,包括LocationManager和FusedLocationProviderClient。 講解獲取用戶位置的權限(ACCESS_FINE_LOCATION, ACCESS_COARSE_LOCATION)。 演示如何獲取當前設備的GPS、網絡定位等信息。 講解如何處理位置更新和定位精度。 10.3 地圖集成 介紹Google Maps SDK for Android。 講解如何在應用程序中添加地圖視圖(MapView/MapFragment)。 演示如何顯示地圖、標記地點、繪製路綫、響應地圖事件(如縮放、拖動)。 介紹如何獲取API Key,以及地圖使用的注意事項。 第十一章 應用性能優化與調試 11.1 性能分析與瓶頸識彆 介紹Android Studio自帶的性能分析工具:Profiler(CPU, Memory, Network, Energy)。 講解如何使用CPU Profiler定位CPU占用過高的代碼。 講解如何使用Memory Profiler查找內存泄漏和內存溢齣。 介紹如何監控網絡流量和電池消耗。 11.2 內存優化技巧 講解內存泄漏的原因和常見場景,如靜態引用、匿名內部類持有外部類引用。 介紹有效的內存管理策略,如及時釋放不再使用的資源,復用對象。 講解Bitmap的加載和管理技巧,防止OOM(Out Of Memory)錯誤。 11.3 綫程優化與響應式UI 強調避免在UI綫程執行耗時操作,閤理使用多綫程和異步處理。 介紹如何優化綫程池的使用,避免綫程過載。 講解如何提升UI的流暢度,減少掉幀。 11.4 Logcat與調試技巧 詳細介紹Logcat工具的使用,以及Log級彆(Verbose, Debug, Info, Warning, Error, Assert)。 講解如何編寫有用的Log信息,便於調試。 介紹Android Studio的斷點調試功能,單步執行、查看變量值、錶達式求值。 演示如何通過Logcat和斷點調試解決應用程序中的bug。 第十二章 應用發布與打包 12.1 APK文件詳解 介紹APK(Android Package)文件的構成,包括代碼、資源、Manifest文件等。 講解如何生成APK文件,包括Debug模式和Release模式。 12.2 簽名與安全 講解APK簽名的重要性,包括Debug簽名和Release簽名。 介紹如何生成自己的Keystore文件,並為應用程序簽名。 闡述簽名在保證應用程序完整性和來源可靠性方麵的作用。 12.3 Google Play發布流程 介紹Google Play開發者賬號的注冊。 講解應用程序上架前的準備工作,如icon、截圖、描述、隱私政策等。 演示APK文件的上傳、版本管理、定價和發布流程。 介紹Google Play Console的使用,如查看應用統計數據、用戶反饋等。 12.4 其他應用市場發布 簡要介紹國內其他主流應用市場的發布渠道和流程。 總結與展望 本書在係統講解Android基礎知識和核心技術的基礎上,進一步介紹瞭高級應用開發和性能優化等重要內容。通過閱讀和實踐本書,讀者將能夠獨立完成中小型Android應用程序的開發,並為進一步學習更高級的Android開發技術或進入專業開發領域打下堅實的基礎。同時,本書也鼓勵讀者持續關注Android技術的發展動態,擁抱新技術,不斷提升自身在移動開發領域的競爭力。