Android App 開發從入門到精通

Android App 開發從入門到精通

作者: 安輝
出版社: 清華大學
出版在: 2018-12-01
ISBN-13: 9787302513582
ISBN-10: 7302513589
裝訂格式: 平裝





內容描述


本書使用Android Studio 3.0開發環境,同時適配新版的Android 8.0操作系統,由淺入深地學習Android App的開發。全文共分為10章,涵蓋Android Studio的開發環境搭建、Android控件的使用、四大組件的使用、Fragment(碎片)、多線程開發、網絡編程與數據存儲等內容。最後通過項目實戰,對所學知識點融會貫通,進一步增強開發能力。
本書內容通俗易懂,案例豐富,不僅適用於Android開發的廣大從業人員、App開發的業餘愛好者,也可作為大中專院校與培訓機構的培訓教程。
 
海報:


目錄大綱


第1章Android Studio的介紹以及使用1 
1.1探索Android Studio 1 
1.1.1項目結構2 
1.1.2 Android Studio主窗口3 
1.1.3工具窗口4 
1.1.4代碼自動完成4 
1.1.5樣式和格式化5 
1.1.6版本控制基礎知識5 
1.1.7 Gradle構建系統6 
1.1.8 Debug調試6 
1.1.9性能監視器7 
1.1.10分配跟踪器7 
1.1.11數據文件訪問7 
1.1.12代碼檢查7 
1.1 .13日誌消息8 
1.2下載與安裝Android Studio 8 
1.2.1下載Android Studio 8 
1.2.2開始安裝9 
1.3 Android Studio使用13 
1.3.1項目結構13 
1.3.2創建項目16 
1.3.3 Android Studio自帶模擬器運行項目20 
1.3.4使用Genymotion模擬器運行22 
1.3.5真機運行25 
1.4調試項目27 
1.4.1 Debug斷點調試27
1.4.2日誌調試29 
1.5 Eclipse項目遷移至Android Studio 30 
1.5.1 Eclipse項目遷移條件30 
1.5.2將Eclipse項目導入Android Studio 30 
1.5.3驗證導入是否成功32 
1.6創建Android庫32 
1.6.1創建庫模塊33 
1.6.2將庫模塊導入到項目中33 
1.6.3將應用模塊轉換為庫模塊33 
1.6.4開發庫模塊的注意事項34 
1.6.5 AAR文件詳解34 
1.7項目依賴庫35 
1.7.1依賴本地庫35 
1.7.2在線依賴庫36 
1.8應用清單文件36 
1.8.1清單文件結構37 
1.8.2文件約定38 
1.9常用快捷鍵39 
1.10應用簽名40 
1.10.1證書和密鑰庫40 
1.10.2調試項目時簽名41 
1.10.3正式簽名41 
1.11多渠道打包43 
1.11.1代碼實現43 
1.11.2測試44 
1.12 ADB詳解45 
1.12.1 Mac下adb加入環境變量(Windows電腦自行搜索) 45 
1.12.2 adb常用命令46
1.13 Android Studio 3.0新特性46 
1.13.1 Android Gradle插件3.0.0 47 
1.13.2手動更新Gradle版本47 
1.13.3 Kotlin支持47 
1.13.4 Java 8支持48 
1.13.5 Android Profiler 48 
1.13.6 CPU Profiler 49 
1.13.7 Memory Profiler 49 
1.13.8 Network Profiler 50 
1.13.9 APK profiling 50 
1.13.10 Device File Explorer 51 
1.13.11 Adaptive Icons wizard 51 
1.13.12 Google的Maven存儲庫52 
1.14本章小結52 
第2章Android控件53 
2.1 View介紹53 
2.1.1自定義View 54 
2.1.2自定義屬性58 
2.2 ViewGroup介紹59 
2.3幾種常用的佈局67 
2.3.1 LinearLayout(線性佈局) 67 
2.3.2 RelativeLayout(相對佈局) 70 
2.3. 3 FrameLayout(框架佈局) 72 
2.3.4三大佈局嵌套以及動態添加View 73
2.4初級控件的使用75 
2.4.1 TextView(文本視圖) 76 
2.4.2 Button(按鈕) 79 
2.4.3 EditText(文本編輯框) 83 
2.4.4 ImageView(圖像視圖) 86 
2.4.5 RadioButton(單選按鈕) 87 
2.4.6 Checkbox(複選框) 89 
2.4.7 ProgressBar(進度條) 91 
2.4.8 ProgressDialog(進度對話框) 93 
2.4.9 AlertDialog(簡單對話框) 94 
2.4.10 PopupWindow(彈出式窗口) 96 
2.4.11 DialogFragment 99 
2.5 Android高級控件的使用102 
2.5.1 ListView(列表視圖) 102 
2.5.2 GridView(網格視圖) 109 
2.5.3 RecyclerView(循環視圖) 113 
2.5.4 SwipeRefreshLayout(下拉刷新) 127 
2.5.5 ViewPager(翻頁視圖) 131 
2.6通過xml文件修飾View 134 
2.6.1 shapes(設置圓角、邊框、填充色、漸變色) 134 
2.6.2 selector(設置點擊、選中點擊效果) 136 
2.6. 3 layer-list(把item按照順序層疊顯示) 137
2.7本章小結138 
第3章Android四大組件139 
3.1 Activity(活動) 139 
3.1.1 Activity的生命週期139 
3.1.2啟動Activity的兩種方式142 
3.1.3在Activity中使用Toast 143 
3.1.4 Activity啟動與退出動畫147 
3.1.5 Activity銷毀156 
3.1.6 Activity與Activity之間傳遞數據158 
3.1.7 Activity的軟鍵盤彈出方式160 
3.1.8 Activity任務棧161 
3.1.9 Activity四種啟動模式162 
3.2 Service(服務) 164 
3.2.1 Activity中啟動Service以及銷毀Service 164 
3.2.2 Activity與Service通信167 
3.3 Broadcast Receiver(廣播接收器) 171 
3.3.1動態註冊廣播171 
3.3.2靜態註冊廣播172 
3.3.3廣播基本總結174 
3.3.4應用內廣播LocalBroadcastManager 174 
3.4 ContentProvider(內容提供者) 175 
3.5本章小結176 
第4章Fragment探索177
4.1 Fragment簡介177 
4.2 Fragment生命週期177 
4.3 FragmentManager與FragmentTransaction的使用182 
4.3.1 FragmentManager(Fragment管理類)的使用182 
4.3.2 FragmentTransaction(Fragment事務)的使用183 
4.4 Activity動態操作Fragment 183 
4.5 Fragment與Activity交互數據186 
4.6 Fragment案例——實現底部導航欄187 
4.6.1分析需求188 
4.6.2代碼實現188 
4.7本章小結195 
第5章Android多線程開發196 
5.1多線程的創建196 
5.2子線程中更新UI的四種方法197 
5.2.1用Activity對象的runOnUiThread方法197 
5.2.2 View.post的使用199 
5.3 Handler的使用199 
5.3.1為什麼要用Handler 199 
5.3.2使用Handler 200 
5.3.3 Handler、Looper與MessageQueue三者的關係202 
5.4使用AsyncTask創建後台線程207 
5.5線程池的使用208
第6章Android網絡編程與數據存儲216 
6.1基於Android平台的HTTP通信216 
6.1.1使用Get方式向服務器提交數據217 
6.1.2使用Post方式向服務器提交數據218 
6.1.3使用GSON解析JSON格式的數據219 
6.1.4 OkHttp開源項目的使用221 
6.2數據存儲243 
6.2.1 SharedPreferences 243 
6.2.2 SQLite數據庫244 
6.2.3文件存儲247 
6.3本章小結247 
第7章Android高級應用248 
7.1 Notification(通知)使用248 
7.1 .1創建通知249 
7.1.2通知優先級250 
7.1.3更新通知250 
7.1.4刪除通知251 
7.1.5自定義通知佈局251 
7.2多媒體開發252 
7.2.1播放音頻252 
7.2.2播放視頻的三種方式257 
7.3調用瀏覽器打開網頁262 
7.3.1啟動Android默認瀏覽器262 
7.3.2啟動指定瀏覽器打開262 
7.3.3優先使用262 
7.4 WebView的使用263
7.4.1 WebView加載網頁的四種方式263 
7.4.2 WebViewClient與WebChromeClient的區別263 
7.4.3 WebView的簡單使用264 
7.5複製和粘貼268 
7.5.1複製文本268 
7.5.2粘貼文本268 
7.6定位的使用268 
7.6.1定位的三種方式269 
7.6.2定位的相關類270 
7.6.3 GPS獲取經緯度271 
7.6.4根據經緯度反向編碼獲取地址273 
7.7 NDK與JNI開發275 
7.7.1什麼是NDK 275 
7.7. 2 NDK下載276 
7.7.3在Mac下加入NDK環境變量277 
7.7.4什麼是JNI 278 
7.7.5 NDK與JNI的簡單使用278 
7.8使用SourceTree上傳項目到GitHub 281 
7.8.1什麼是Git 281 
7.8.2什麼是GitHub 282 
7.8.3什麼是SourceTree 283 
7.8.4使用SourceTree操作GitHub 283 
7.9將項目發佈到JCenter 292 
第8章Android 5.X、6.X、7.X、8.X各版本特性299 
8.1 Android 5.X版本新特性299
8.1.1懸掛式Notification 299 
8.1.2利用Drawerlayout和NavigationView實現側邊欄301 
8.1.3 TabLayout和ViewPager結合使用304 
8.1.4 CoordinatorLayout、FloatingActionButton和Snackbar的使用306 
8.2 Android 6.X版本新特性307 
8.3 Android 7.X版本新特性310 
8.3.1多窗口支持311 
8.3.2 FileProvider解決FileUriExposedException 312 
8.4 Android 8.X版本新特性314 
第9章常用功能模板319 
9.1啟動頁與首次啟動的引導頁319 
9.1.1需求分析321 
9.1.2代碼實現321 
9.1.3啟動頁321 
9.1.4引導頁323 
9.2檢查更新並下載安裝327 
9.3 Banner廣告輪播圖332 
9.3.1運行效果圖332 
9.3.2代碼實現333 
9.4微信登錄、分享與支付337 
9.4.1代碼實現337 
9.4.2微信登錄342 
9.4.3微信分享344 
9.4.4微信支付344 
9.4.5簽名346
9.4.6微信開放平台官網的後台配置347 
9.4.7運行軟件347 
9.4.8微信官方開發文檔348 
9.5百度地圖349 
9.5.1百度定位SDK 350 
9.5.2百度地圖SDK 357 
第10章實現開發者頭條364 
10.1啟動頁實現364 
10.1.1啟動頁的目標效果364 
10.1.2代碼實現365 
10.2使用DrawerLayout控件實現側滑菜單欄370 
10.2.1側滑菜單的目標效果370 
10.2.2代碼實現370 
10.3開發者頭條首頁實現377 
10.3.1源代碼的實現378 
10.3.2精選Fragment 382 
10.4開發者頭條首頁優化387 
10.4.1需要在線依賴388 
10.4.2標題欄和三個切換選項卡388 
10.4.3分析TabLayout切換源代碼391 
10.4.4精選文章列表控件從ListView替換成RecyclerView 393 
10.5 RecyclerView實現下拉刷新和上拉加載更多395 
10.5.1實現步驟396 
10.5.2實現詳解396


作者介紹


作者:安輝
目前就職於上海翼成信息視頻部,負責Android平台,工作之餘喜歡寫技術文章,是CSDN博客專家,文章技術含量高,單篇文章上萬閱讀量,深受廣大開發者喜愛。




相關書籍

Android 程式設計實例入門

作者 高橋麻奈 博碩文化譯

2018-12-01

Android移動應用程序開發

作者 白喆

2018-12-01

Professional Android ,4e

作者 Reto Meier Ian Lake

2018-12-01