編輯推薦
(1)易學易懂。本書麵嚮Android係統的初學者,在敘述方式上淺顯易懂,摒棄枯燥的理論,盡可能使用圖示加以說明。對每一個知識點,都配瞭相應的例題。所有例題均短小精悍,適閤課堂教學講授。讀者學完每一章內容後都可以編寫齣相應功能的程序。
(2)解釋詳細。對每一個例題,均進行瞭詳細分析和解釋,既可以幫助讀者學習理解知識和概念,大大降低學習難度,又具有啓發性。
(3)Java語言零基礎學習。為瞭幫助沒有Java語言基礎的讀者學習Android係統,特彆安排瞭一章介紹Java基礎知識的內容。
(4)配有視頻教學 。書中大部分例題均錄製瞭視頻教學,詳細地記錄瞭設計的操作過程,對重點和難點問題作瞭詳細講解,幫助讀者更加輕鬆、迅速地理解和掌握本書內容。
內容簡介
本書是麵嚮Android Studio初學者的入門教程,內容基本涵蓋瞭Android相關的所有技術,大緻可以分成兩個部分。第一部分(第1~4章)主要介紹Android Studio的安裝、應用程序的結構、圖形用戶界麵的組件及其設計方法;第二部分(第5~9章)主要介紹較高級的主題,內容包括後颱服務與係統服務、網絡通信技術、數據存儲技術、地圖服務與傳感器檢測技術等。
本書內容淺顯易懂,對每一個知識點都配瞭相應的例題。本書提供瞭電子課件和所有例題的源代碼,掃描每章提供的二維碼可觀看教學視頻。
本書可作為高等院校及各類培訓學校Android係統課程的教材,也可作為希望學習Android係統開發的讀者的自學用書。
目錄
第1章 Android係統及其開發過程 1
1.1 Android係統概述 1
1.1.1 Android係統及特點 1
1.1.2 Android係統的體係結構 2
1.1.3 Android開發的分類 3
1.2 搭建Android Studio開發環境 4
1.2.1 安裝Android Studio前的必要準備 4
1.2.2 安裝Android Studio詳解 5
1.2.3 設置環境變量 7
1.3 Android API和在綫幫助文檔 8
1.4 Android應用程序的開發過程 9
1.4.1 開發Android應用程序的一般過程 9
1.4.2 生成Android應用程序框架 10
1.4.3 編寫代碼生成MainActivity.java 12
1.4.4 在模擬器中運行應用程序 13
1.5 Android項目結構 13
1.5.1 目錄結構 13
1.5.2 Android應用程序結構分析 19
1.6 Android應用程序設計示例 21
習題1 23
第2章 Android用戶界麵的設計 24
2.1 用戶界麵組件包widget和View類 24
2.2 文本標簽TextView與按鈕Button 25
2.2.1 文本標簽 25
2.2.2 按鈕及按鈕處理事件 27
2.3 文本編輯框 32
2.4 Android布局管理 35
2.4.1 布局文件的規範與重要屬性 36
2.4.2 常見的布局方式 37
2.5 進度條和選項按鈕 46
2.5.1 進度條 46
2.5.2 選項按鈕 48
2.6 圖像顯示類ImageView與畫廊組件類Gallery 55
2.6.1 圖像顯示類ImageView 55
2.6.2 畫廊組件類Gallery與圖片切換器ImageSwitcher 59
2.7 消息提示類Toast 64
2.8 列錶組件 67
2.8.1 列錶組件類ListView 67
2.8.2 ListActivity類 69
2.9 滑動抽屜組件類SlidingDraw 72
習題2 76
第3章 多個用戶界麵的程序設計 78
3.1 頁麵的切換與傳遞參數值 78
3.1.1 傳遞參數組件Intent 78
3.1.2 Activity頁麵的切換 78
3.1.3 應用Intent在Activity頁麵之間傳遞數據 82
3.2 菜單設計 86
3.2.1 選項菜單 86
3.2.2 上下文菜單 89
3.3 對話框 91
3.3.1 消息對話框AlertDialog 91
3.3.2 其他幾種常用對話框 96
習題3 100
第4章 圖形與多媒體處理 101
4.1 繪製幾何圖形 101
4.1.1 幾何圖形繪製類 101
4.1.2 幾何圖形的繪製過程 102
4.1.3 自定義組件 107
4.2 觸摸屏事件的處理 110
4.2.1 簡單的觸摸屏事件 110
4.2.2 手勢識彆 116
4.3 音頻播放 120
4.3.1 多媒體處理包 120
4.3.2 多媒體處理播放器MediaPlayer 120
4.3.3 播放音頻文件 121
4.4 視頻播放 127
4.4.1 應用媒體播放器播放視頻 127
4.4.2 應用視頻視圖播放視頻 130
4.5 錄音與拍照 133
4.5.1 用於錄音、錄像的MediaRecorder類 133
4.5.2 錄音示例 134
4.5.3 拍照 137
4.6 動畫技術 142
4.6.1 動畫組件類 142
4.6.2 補間動畫Tween Animation 143
4.6.3 屬性動畫Property Animation 148
習題4 152
第5章 後颱服務與係統服務 153
5.1 後颱服務Service 153
5.2 信息廣播機製Broadcast 157
5.3 係統服務 166
5.3.1 Android的係統服務 166
5.3.2 係統通知服務Notification 167
5.3.3 係統定時服務AlarmManager 169
5.3.4 係統功能的調用 172
習題5 175
第6章 網絡通信技術 176
6.1 Web視圖 176
6.1.1 瀏覽器引擎WebKit 176
6.1.2 Web視圖對象 176
6.1.3 調用JavaScript 180
6.2 基於TCP協議的網絡程序設計 186
6.2.1 網絡編程的基礎知識 187
6.2.2 利用Socket設計客戶機/服務器係統程序 191
6.2.3 應用Callable接口實現多綫程Socket編程 196
6.3 基於HTTP協議網絡程序設計 200
6.3.1 建立PHP服務器網站 200
6.3.2 應用HttpURLConnection訪問Web服務器 200
習題6 210
第7章 應用Volley框架訪問Web服務器 211
7.1 Volley框架及其應用 211
7.1.1 Volley包的下載與安裝 211
7.1.2 JSON數據格式簡介 212
7.1.3 Volley的工作原理和幾個重要對象 216
7.1.4 Volley的基本使用方法 217
7.2 應用Volley框架設計網絡音樂播放器 221
習題7 226
第8章 數據存儲技術 227
8.1 SQLite數據庫 227
8.1.1 SQLite數據庫簡介 227
8.1.2 管理和操作SQLite數據庫的對象 228
8.1.3 SQLite數據庫的操作命令 228
8.2 文件的處理 240
8.2.1 輸入/輸齣流 240
8.2.2 處理文件流 241
8.3 輕量級存儲SharedPreferences 248
8.4 訪問遠程數據庫 250
習題8 255
第9章 地圖服務與傳感器檢測技術 256
9.1 電子地圖服務的應用程序開發 256
9.1.1 Android地圖的SDK開發包的下載以及Key的申請 256
9.1.2 顯示地圖的應用程序示例 259
9.2 傳感器檢測技術 262
9.2.1 傳感器簡介 262
9.2.2 加速度傳感器的應用示例 264
習題9 273
精彩書摘
多個用戶界麵的程序設計
3.1 頁麵的切換與傳遞參數值
3.1.1 傳遞參數組件Intent
Intent是Android係統的一種運行時的綁定機製,在應用程序運行時連接兩個不同組件。在Android 的應用程序中不管是頁麵切換還是傳遞數據或是調用外部程序都可能要用到Intent。Intent負責對應用中某次操作的動作、動作涉及的數據、附加數據進行描述,Android則根據此Intent的描述負責找到對應的組件,將Intent傳遞給調用的組件,並完成組件的調用。因此可以將Intent理解為不同組件之間通信的“媒介”,其專門提供組件互相調用的相關信息。
Intent的屬性有動作(Action)、數據(Data)、分類(Category)、類型(Type)、組件(Compent)以及擴展(Extra),其中最常用的是Action屬性。
例如:
Intent.ACTION_MAIN 錶示標識Activity為一個程序的開始。
Intent.ACTION_GET_CONTENT 錶示允許用戶選擇圖片或錄音等特殊種類的數據。
Intent.ACTION_SEND 錶示發送郵件的action動作。
Telephony.SMS_RECEIVED 錶示接收郵件的action動作。
Intent.ACTION_ANSWER 錶示處理呼入的電話。
Intent.Action_CALL_BUTTON 錶示按“撥號”鍵。
Intent.Action_CALL 錶示呼叫指定的電話號碼。
3.1.2 Activity頁麵的切換
Activity跳轉與傳遞參數值主要通過Intent類協助實現。在一個Activity頁麵中啓動另一個Activity頁麵的運行是最簡單的Activity頁麵切換方式。其步驟如下:
(1)創建一個Intent對象,其構造方法如下。
Intent intent = new Intent(當前Activity.this, 另一Activity.class);
(2)調用Activity的startActivity(intent)方法,切換到另一個Activity頁麵。
【例3-1】 從一個Activity頁麵啓動另一個Activity頁麵示例。
創建名稱為ex3_1的新項目,包名為com.ex3_1。在本項目中要建立兩個頁麵文件及兩個控製文件,第1個頁麵的界麵布局文件為activity_main.xml、控製文件為MainActivity.java,第2個頁麵的界麵布局文件為second.xml、控製文件為secondActivity.java,還要修改配置文件AndroidManifest.xml。
(1)設計第1個頁麵。
① 修改第1個頁麵的控製文件MainActivity.java,源代碼如下:
1 package com.ex3_1;
2 import android.app.Activity;
3 import android.content.Intent;
4 import android.os.Bundle;
5 import android.view.View;
6 import android.view.View.OnClickListener;
7 import android.widget.Button;
8 public class MainActivity extends Activity
9 {
10 private Button btn;
11 @Override
12 public void onCreate(Bundle savedInstanceState)
13 {
14 super.onCreate(savedInstanceState);
15 setContentView(R.layout.activity_main);
16 btn = (Button)findViewById(R.id.mButton);
17 btn.setOnClickListener(new btnclock());
18 }
19 class btnclock implements OnClickListener
20 {
21 public void onClick(View v)
22 {
23 Intent intent = new Intent(MainActivity.this, secondActivity.class);
24 //創建好Intent之後就可以通過它啓動新的Activity
25 startActivity(intent);
26 }
27 }
28 }
② 第1個頁麵的布局文件activity_main.xml如下:
1
2
3 android:layout_width="fill_parent"
4 android:layout_height="fill_parent"
5 android:orientation="vertical" >
6
7 android:id="@+id/textView1"
8 android:layout_width="fill_parent"
9 android:layout_height="wrap_content"
10 android:text="@string/hello" />
11
12 android:id="@+id/mButton"
13 android:layout_width="wrap_content"
14 android:layout_height="wrap_content"
15 android:text="@string/button"
16 />
17
(2)設計第2個頁麵。
① 在項目中新建第2個頁麵的控製文件secondActivity.java。右擊資源管理器中的com.example.ex3_1選項,在彈齣的快捷菜單中選擇New(新建)→File(文件)命令,如圖3.1所示。
……
前言/序言
與第1版相比,第2版的最大修改之處是把開發工具Eclipse換成瞭Android Studio。這主要考慮Android Studio是Google公司推齣的專門為Android“量身定製”的開發工具,是Google大力支持的一款基於IntelliJ IDEA改造的IDE集成開發環境,可以說它是Android開發工具的未來。
第2版刪除瞭第1版中Java語言基礎知識簡介的章節,增加瞭訪問Web服務器數據的內容。另外,由於Android Studio與Eclipse的目錄結構和菜單差異很大,因此很多例題在介紹操作時做瞭修改。
第2版全書共分9章,第1章主要講解Android Studio開發環境的搭建,並介紹瞭開發Android應用程序的步驟和應用程序框架的結構;第2~3章講解如何使用布局和視圖創建用戶界麵,介紹瞭用戶圖形界麵的常用組件;第4章介紹圖形與多媒體處理技術,介紹瞭繪製幾何圖形的基本方法、處理觸摸屏事件的方法,還詳細討論瞭音頻播放和視頻播放的設計以及錄音、照相技術,並詳細講解瞭在Android中實現動畫的技術;第5章介紹後颱服務與係統服務,以及係統功能調用;第6章介紹網絡通信技術,介紹瞭Web視圖以及基於TCP協議的網絡程序設計、基於HTTP協議的網絡程序設計等網絡編程技術;第7章介紹應用Volley框架訪問Web服務器,並介紹瞭JSON數據格式和一個網絡音樂播放器設計實例;第8章介紹數據存儲技術,介紹瞭SQLite數據庫存儲方式、文件存儲方式和XML文件的SharedPreferences存儲方式,還介紹瞭訪問遠程數據庫的方法;第9章講解地圖服務與傳感器檢測技術,地圖服務主要介紹實現地圖視圖的基本方法,傳感器檢測主要介紹重力加速度的應用。
本書提供瞭電子課件和所有例題的源代碼,掃描每章提供的二維碼可觀看教學視頻。
張思民
2017年5月
Android Studio應用程序設計(第2版)(微課版)/21世紀高等學校計算機類課程創新規劃 epub pdf mobi txt 電子書 下載 2024
Android Studio應用程序設計(第2版)(微課版)/21世紀高等學校計算機類課程創新規劃 下載 epub mobi pdf txt 電子書
Android Studio應用程序設計(第2版)(微課版)/21世紀高等學校計算機類課程創新規劃 mobi pdf epub txt 電子書 下載 2024
Android Studio應用程序設計(第2版)(微課版)/21世紀高等學校計算機類課程創新規劃 epub pdf mobi txt 電子書 下載 2024