Android 6 应用开发案例精解(第三版) [Android 6 for Programmers: An App-Driven Approach,] pdf epub mobi txt 电子书 下载
编辑推荐
适读人群 :本书适合希望从事 Android 应用开发的初学者, 也适合作为该领域中高级开发者的参考书。 *书中采用了以应用为中心的方法,包含8个完整编码的Android应用。
*专业的程序员开发者指南,讲解如何利用Android 6和Android Studio开发用于智能手机和平板电脑的应用。
*实用、例子丰富的Android教程。
内容简介
本书是美国知名编程教材的作者针对Android系统下进行应用开发而编写的一本入门级教程,全书以"应用驱动的方法”为基础,详细讲解了17个完整的Android应用的开发过程,并提供了8个APP应用的完整的源代码。这些应用经过精心挑选,从不同侧面展现了Android系统各个功能模块的编程方法。这些功能包括音频、视频、动画、电话、蓝牙、语音识别、加速度计、GPS、指北针、应用窗件、3D图形等, 它们都是从事Android应用开发所必须熟知的基本技术。
作者简介
Paul Deitel和Harvey Deitel是全球畅销的编程语言教材和专业图书作家,他们成立的Deitel & Associates公司是一家国际知名的企业培训和写作公司,专门进行计算机编程语言、对象技术、移动应用开发及Internet和Web软件技术方面的培训和写作,出版了一流的编程专业的大学教材、 专业图书以及LiveLessons视频课程。
张君施,北京工商大学数理系副教授,党支部书记。研究方向为概率论与数理统计、计算机语言,翻译过多部经典编程教材。
目录
第1章 Android简介 1
1.1 简介 2
1.2 Android――世界领先的移动操作系统 2
1.3 Android的特点 3
1.4 Android操作系统 5
1.4.1 Android 2.2 (Froyo) 5
1.4.2 Android 2.3 (Gingerbread) 6
1.4.3 Android 3.0~3.2 (Honeycomb) 6
1.4.4 Android 4.0~4.0.4 (Ice Cream Sandwich) 6
1.4.5 Android 4.1~4.3 (Jelly Bean) 7
1.4.6 Android 4.4 (KitKat) 8
1.4.7 Android 5.0和5.1 (Lollipop) 8
1.4.8 Android 6 (Marshmallow) 9
1.5 从Google Play下载应用 9
1.6 包 10
1.7 Android软件开发工具集(SDK) 11
1.8 面向对象编程:简短回顾 13
1.8.1 汽车作为对象 13
1.8.2 方法与类 13
1.8.3 实例化 14
1.8.4 复用 14
1.8.5 消息与方法调用 14
1.8.6 属性与实例变量 14
1.8.7 封装 14
1.8.8 继承 14
1.8.9 面向对象的分析与设计(OOAD) 14
1.9 在AVD中测试Tip Calculator应用 15
1.9.1 在Android Studio中打开Tip Calculator应用的工程 15
1.9.2 创建Android虚拟设备(AVD) 16
1.9.3 在Nexus 6 AVD中运行Tip Calculator应用 18
1.9.4 在Android设备上运行Tip Calculator应用 20
1.10 创建好的Android应用 21
1.11 Android开发资源 22
1.12 小结 23
第2章 Welcome应用 24
2.1 简介 25
2.2 技术概览 26
2.2.1 Android Studio 26
2.2.2 LinearLayout,TextView和ImageView 26
2.2.3 可扩展标记语言(XML) 26
2.2.4 应用的资源 26
2.2.5 辅助性 26
2.2.6 国际化 27
2.3 创建应用 27
2.3.1 启动Android Studio 27
2.3.2 创建新工程 27
2.3.3 Create New Project对话框 28
2.3.4 Target Android Devices步骤 28
2.3.5 Add an Activity to Mobile步骤 29
2.3.6 Customize the Activity步骤 30
2.4 Android Studio窗口 31
2.4.1 Project窗口 31
2.4.2 编辑器窗口 32
2.4.3 Component Tree窗口 33
2.4.4 应用的资源文件 33
2.4.5 布局编辑器 33
2.4.6 默认GUI 33
2.4.7 默认GUI的XML 34
2.5 用布局编辑器构建应用的GUI 35
2.5.1 向工程添加图像 35
2.5.2 添加应用图标 36
2.5.3 将RelativeLayout 改成LinearLayout 37
2.5.4 改变LinearLayout的id和orientation属性 38
2.5.5 配置TextView的id和text属性 39
2.5.6 配置TextView的textSize属性 40
2.5.7 设置TextView的textColor属性 41
2.5.8 设置TextView的gravity属性 41
2.5.9 设置TextView的layout:gravity属性 41
2.5.10 设置TextView的layout:weight属性 43
2.5.11 添加ImageView,显示图像 43
2.5.12 预览设计的效果 46
2.6 运行Welcome应用 46
2.7 为应用增加辅助功能 48
2.8 使应用国际化 49
2.8.1 本地化 49
2.8.2 为本地化资源命名文件夹 49
2.8.3 将字符串译文添加到工程中 49
2.8.4 本地化字符串 50
2.8.5 在AVD中测试西班牙语的应用 50
2.8.6 在设备中测试西班牙语的应用 51
2.8.7 TalkBack与本地化 51
2.8.8 本地化清单 52
2.8.9 专业翻译 52
2.9 小结 52
第3章 Tip Calculator应用 53
3.1 简介 54
3.2 测试驱动的Tip Calculator应用 55
3.3 技术概览 56
3.3.1 Activity类 56
3.3.2 Activity类的生命周期方法 56
3.3.3 AppCompat库与AppCompatActivity类 57
3.3.4 安排GridLayout中的视图 57
3.3.5 利用布局编辑器、Component Tree和Properties窗口创建并定制GUI 58
3.3.6 格式化数字,表示本地货币和百分比字符串 58
3.3.7 实现TextWatcher接口,处理EditText中的文本变化 58
3.3.8 实现OnSeekBarChangeListener接口,处理SeekBar中的滑块位置变化 58
3.3.9 材料主题 58
3.3.10 材料设计:高度和阴影 59
3.3.11 材料设计:颜色 59
3.3.12 AndroidManifest.xml 60
3.3.13 在Properties窗口中搜索 60
3.4 构建GUI 60
3.4.1 GridLayout简介 60
3.4.2 创建TipCalculator工程 61
3.4.3 改成GridLayout布局 61
3.4.4 添加TextView,EditText和SeekBar 62
3.4.5 定制视图 64
3.5 默认主题及定制主题颜色 66
3.5.1 parent主题 66
3.5.2 定制主题颜色 67
3.5.3 样式的常用View属性值 70
3.6 添加应用的逻辑功能 70
3.6.1 package声明和import声明 70
3.6.2 AppCompatActivity的MainActivity子类 71
3.6.3 类变量与实例变量 71
3.6.4 重写Activity方法onCreate 72
3.6.5 MainActivity方法calculate 74
3.6.6 实现OnSeekBarChangeListener接口的匿名内部类 74
3.6.7 实现TextWatcher接口的匿名内部类 75
3.7 AndroidManifest.xml 76
3.7.1 manifest元素 77
3.7.2 application元素 77
3.7.3 activity元素 77
3.7.4 intent-filter元素 78
3.8 小结 79
第4章 Flag Quiz应用 80
4.1 简介 81
4.2 测试驱动的Flag Quiz应用 83
4.2.1 配置应用的设置 83
4.2.2 运行应用 84
4.3 技术概览 86
4.3.1 菜单 86
4.3.2 Fragment 86
4.3.3 Fragment生命周期方法 87
4.3.4 管理Fragment 88
4.3.5 首选项 88
4.3.6 assets文件夹 88
4.3.7 资源文件夹 89
4.3.8 支持不同屏幕尺寸和分辨率 89
4.3.9 确定设备方向 90
4.3.10 用于显示消息的Toast 90
4.3.11 使用Handler在未来执行一个Runnable对象 90
4.3.12 将动画用于View 90
4.3.13 使用ViewAnimationUtils创建环形缩放动画 90
4.3.14 通过颜色状态表根据视图状态确定颜色 90
4.3.15 AlertDialog 91
4.3.16 为异常消息做日志 91
4.3.17 通过显示Intent启动另一个活动 91
4.3.18 Java数据结构 92
4.3.19 Java SE 7特性 92
4.3.20 AndroidManifest.xml 93
4.4 创建工程、资源文件和另外的类 93
4.4.1 创建工程 93
4.4.2 Blank Activity模板布局 94
4.4.3 配置对Java SE 7的支持 94
4.4.4 向工程添加国旗图像 95
4.4.5 strings.xml与格式化字符串资源 95
4.4.6 arrays.xml 96
4.4.7 colors.xml 97
4.4.8 button_text_color.xml 98
4.4.9 编辑menu_main.xml 98
4.4.10 创建国旗飘扬动画 99
4.4.11 指定应用设置的preferences.xml 100
4.4.12 添加SettingsActivity类和SettingsActivityFragment类 101
4.5 构建应用的GUI 102
4.5.1 用于纵向模式设备的activity_main.xml布局 102
4.5.2 设计fragment_main.xml布局 102
4.5.3 Graphical Layout编辑器工具栏 106
4.5.4 用于横向设备的content_main.xml布局 107
4.6 MainActivity类 108
4.6.1 package声明和import声明 109
4.6.2 字段 109
4.6.3 重写的Activity方法onCreate 109
4.6.4 重写的Activity方法onStart 111
4.6.5 重写的Activity方法onCreateOptionsMenu 112
4.6.6 重写的Activity方法onOptionsItemSelected 112
4.6.7 实现OnSharedPreferenceChangeListener的匿名内部类 113
4.7 MainActivityFragment类 114
4.7.1 package声明和import声明 114
4.7.2 字段 114
4.7.3 重写的Fragment方法onCreateView 116
4.7.4 updateGuessRows方法 118
4.7.5 updateRegions方法 118
4.7.6 resetQuiz方法 119
4.7.7 loadNextFlag方法 120
4.7.8 getCountryName方法 122
4.7.9 animate方法 122
4.7.10 实现OnClickListener的匿名内部类 123
4.7.11 disableButtons方法 126
4.8 SettingsActivity类 126
4.9 SettingsActivityFragment类 127
4.10 AndroidManifest.xml 127
4.11 小结 129
第5章 Doodlz应用 130
5.1 简介 131
5.2 在AVD中测试Doodlz应用 132
5.3 技术概览 135
5.3.1 Activity和Fragment的生命周期方法 135
5.3.2 定制视图 136
5.3.3 使用SensorManager监听加速计事件 136
5.3.4 定制的DialogFragment 136
5.3.5 使用Canvas,Paint和Bitmap画图 137
5.3.6 处理多点触事件并在Path中保存线信息 137
5.3.7 保存图形 138
5.3.8 打印功能及Android支持库的PrintHelper类 138
5.3.9 Android 6.0的新许可模型 138
5.3.10 利用Gradle构建系统添加依赖性 138
5.4 创建工程和资源 138
5.4.1 创建工程 139
5.4.2 Gradle:向工程添加支持库 139
5.4.3 strings.xml 139
5.4.4 为菜单项导入材料设计图标 140
5.4.5 MainActivityFragment菜单 140
5.4.6 在AndroidManifest.xml中添加许可 142
5.5 构建应用的GUI 142
5.5.1 MainActivity的content_main.xml布局 142
5.5.2 MainActivityFragment的fragment_main.xml布局 143
5.5.3 ColorDialogFragment的fragment_color.xml布局 143
5.5.4 LineWidthDialogFragment的fragment_line_width.xml布局 145
5.5.5 添加EraseImageDialogFragment类 146
5.6 MainActivity类 146
5.7 MainActivityFragment类 147
5.7.1 package声明、import声明与字段 147
5.7.2 重写的Fragment方法onCreateView 148
5.7.3 onResume方法和enableAccelerometerListening方法 149
5.7.4 onPause方法和disableAccelerometerListening方法 150
5.7.5 用于处理加速计事件的匿名内部类 150
5.7.6 confirmErase方法 151
5.7.7 重写的Fragment方法onCreateOptionsMenu和onOptionsItemSelected 152
5.7.8 saveImage方法 153
5.7.9 重写的onRequestPermissionsResult方法 154
5.7.10 getDoodleView方法和setDialogOnScreen方法 155
5.8 DoodleView类 155
5.8.1 package声明和import声明 155
5.8.2 静态变量和实例变量 156
5.8.3 构造方法 156
5.8.4 重写的View方法onSizeChanged 156
5.8.5 clear, setDrawingColor,getDrawingColor,setLineWidth和getLineWidth方法 157
5.8.6 重写的View方法onDraw 158
5.8.7 重写的View方法onTouchEvent 158
5.8.8 touchStarted方法 159
5.8.9 touchMoved方法 160
5.8.10 touchEnded方法 161
5.8.11 saveImage方法 161
5.8.12 printImage方法 162
5.9 ColorDialogFragment类 163
5.9.1 重写的DialogFragment方法onCreateDialog 163
5.9.2 getDoodleFragment方法 165
5.9.3 重写的Fragment生命周期方法onAttach和onDetach 165
5.9.4 响应alpha, red, green和blue SeekBar事件的匿名内部类 165
5.10 LineWidthDialogFragment类 166
5.10.1 onCreateDialog方法 168
5.10.2 响应widthSeekBar事件的匿名内部类 168
5.11 EraseImageDialogFragment类 169
5.12 小结 170
第6章 Cannon Game应用 171
6.1 简介 172
6.2 测试驱动的Cannon Game应用 173
6.3 技术概览 173
6.3.1 使用res/raw资源文件夹 173
6.3.2 Activity和Fragment的生命周期方法 173
6.3.3 重写View方法onTouchEvent 174
6.3.4 用SoundPool和AudioManager添加声音 174
6.3.5 用Thread,Surface
Android 6 应用开发案例精解(第三版) [Android 6 for Programmers: An App-Driven Approach,] 电子书 下载 mobi epub pdf txt
Android 6 应用开发案例精解(第三版) [Android 6 for Programmers: An App-Driven Approach,] pdf epub mobi txt 电子书 下载