《Android应用开发精解》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:高磊,杨诚,元凯编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2012
  • ISBN:9787512409187
  • 页数:292 页
图书介绍:本书以Android应用开发所需要的技术为线索,先后讲解了SDK一些工具的使用、UI开发、Service开发、数据存储、图形动画、网络开发、硬件操作、结合Web开发,以及如何对应用进行优化等等。

第1章 工欲善其事必先利其器—Android SDK工具 1

1.1巧妇难为无米之炊—Android SDK的安装 1

1.2设备管理工具—调试桥(ADB) 3

1.2.1 ADB简介 3

1.2.2 ADB常用命令 4

1.3没有真机一样开发—Android模拟器 7

1.4 Android调试—调试工具DDMS 9

1.5 UI布局分析工具—视图工具(Hierarchy Viewer) 14

1.6 Log打印—Log输出工具logcat 17

1.6.1启动logcat 17

1.6.2过滤日志输出 17

1.6.3控制日志输出格式 18

1.6.4查看可用日志缓冲区 19

1.7图片拉伸不失真—九宫格绘制工具Draw 9-PatcH 20

1.7.1什么是“点九”文件 20

1.7.2点九文件的制作 20

第2章 吸引你的眼球—UI编程 24

2.1UI基础—常用UI组件 24

2.1.1文本显示—文本框(TextView) 24

2.1.2按钮(Button) 27

2.1.3文本编辑—编辑框(EditText) 29

2.1.4图片显示—图片视图(ImageView) 32

2.1.5多项选择—多选框(CheckBox)和单项选择—单选框 (RadioBox) 34

2.1.6图片拖动—拖动效果(Gallery) 38

2.1.7列表组件(ListView) 41

2.2彰显你的个性—自定义UI组件 48

2.3简单明了的消息提示框(Toast)和对话框(Dialog) 51

2.3.1 Toast提示 51

2.3.2 Dialog提示 52

2.4 Menu键的呼唤—Menu菜单 56

第3章 界面UI的基石—UI布局 61

3.1用户界面的基本单元—View视图 61

3.2百花齐放—各种Layout布局 64

3.2.1 Layout布局的简单介绍 64

3.2.2线性布局(LinearLayout) 64

3.2.3相对布局(RelativeLayout) 67

3.2.4框架布局(FrameLayout) 70

3.2.5表单布局(TableLayout) 72

3.2.6绝对布局(AbsoluteL.ayout) 74

3.3样式(Style)和主题(Theme)的使用 76

3.3.1样式(Style)的使用 76

3.3.2主题(Theme)的使用 77

第4章Android开发三大基石—Activity、 Service和Handler 79

4.1应用程序的接口—Activity窗口 79

4.1.1 Activity生命周期 79

4.1.2 Activity栈 81

4.1.3 Activity的创建 81

4.1.4 Activity的4种加载模式 82

4.1.5 Activity交互—Activity跳转 83

4.1.6 Activity中数据传递 86

4.2千变万化的服务—Service开发 87

4.2.1 Service的生命周期 87

4.2.2 Service的启动和停止 88

4.2.3我的服务我来用—本地服务开发 89

4.2.4开机自启动的服务 93

4.3 Android线程间的通信—消息机制 95

4.3.1消息的传递—Handler的使用 95

4.3.2 Android中消息机制的详细分析 97

第5章 以数据为中心—数据存取 100

5.1文件操作 100

5.1.1读写一般的文本文件 100

5.1.2结构性的文件—读写XML文件 103

5.1.3自由操作,随心所欲—序列化和反序列化 113

5.2通用的数据操作方式—数据库 116

5.2.1 SQLite数据库介绍 116

5.2.2创建并打开数据库 116

5.2.3添加、删除和修改操作 117

5.2.4游标的操作—使用Cursor 120

5.3安全方便简单—使用Shared Preferences 121

5.4我的数据大家用—ContentProvider、 ContentResol ver 123

第6章 一张白纸好作画—Canvas画布 126

6.1 Canvas画布简介 126

6.1.1 View Canvas—使用普通View的Canvas画图 126

6.1.2 Bitmap Canvas—使用普通Bitmap的Canvas画图 128

6.1.3 SurfaceView Canvas—使用SurfaceView的Canvas画图 128

6.2 Canvas常用绘制方法 131

6.3对Canvas进行变换 133

6.4 Canvas绘制的辅助类 134

6.4.1画笔android.graphics.Paint 134

6.4.2字体android.graphics.Typeface 135

6.4.3颜色android.graphics.Color 136

6.4.4路径android.graphics.PatH 137

6.4.5路径的高级效果android.graphics.PathEffect 139

6.4.6点类android.graphics.Point和android.graphics.PointF 141

6.4.7形状类android.graphics.Rect和android.graphics.RectF 142

6.4.8区域android.graphics.Region与Region.Op 144

6.4.9千姿百态,矩阵变换android.graphics.Matrix 145

第7章 实现炫酷效果—图像和动画 149

7.1 Android的几种常用图像类型 149

7.2图片的基础—Bitmap(位图) 150

7.2.1如何获取位图资源 150

7.2.2如果获取位图的信息 151

7.2.3位图的显示与变换 152

7.3变化多端—Drawable(绘图类) 154

7.3.1 Drawable的—些常用子类 154

7.3.2 BitmapDrawable 154

7.3.3点九图片—NinePatchDrawable 155

7.3.4会动的图片—StateListDrawable 156

7.3.5颜色填充的另一种方法—PaintDrawable 157

7.3.6超炫的特效—ShapeDrawable 157

7.3.7简单的帧动画—AnimationDrawable 165

7.4轻量级图片—Picture 167

7.5 Drawable、Bitmap、byte[]之间的转换 167

7.6 Android提供的几种动画效果(Animation) 168

7.7渐变动画—Tween Animation 169

7.7.1 Tween Animation简介 169

7.7.2 Tween Animation共同的属性 169

7.7.3淡进淡出—A1phaAnimation 170

7.7.4忽大忽小—ScaleAnimation 171

7.7.5平移—TranslateAnimation 172

7.7.6旋转—RotateAnimation 173

7.7.7实现—个自己的TweenAnimation 174

7.8渐变动画—Frame Animation 176

7.9随意组合动画效果—AnimationSet 177

7.10加速的工具—Interpolator 178

第8章 网络的时代—网络开发 180

8.1 Android中网络开发概述 180

8.2直接基于Socket编程 181

8.2.1 Socket编程简介 181

8.2.2基于TCP协议的Socket编程 183

8.2.3基于UDP协议的Socket编程 184

8.3基于最成熟的Web协议—HTTP协议编程 185

8.3.1 HTTP协议简介 185

8.3.2使用URL类读取HTTP资源 187

8.3.3使用HttpURLConnection类访问HTTP资源 189

8.3.4使用Apache的HttpClient 190

8.4耗时操作的通用方式—多线程与异步处理 192

8.4.1多线程和异步处理简介 192

8.4.2 Handler方式 193

8.4.3 AsyncTask类实现后台任务的处理 197

8.5轻量级的数据交换格式—JSON 199

8.5.1客户端与服务器端的数据交互 199

8.5.2 XML格式与J SON格式的比较 201

8.5.3解析JSON格式数据 202

第9章 多语言环境的支持和多屏幕的适配 205

9.1 Android程序的资源文件 205

9.1.1资源文件的目录结构 205

9.1.2资源文件目录的修饰语 206

9.1.3程序加载资源文件的步骤 208

9.2国际化和本地化的支持 209

9.3多屏幕的适配 210

9.3.1屏幕参数的基本概念 210

9.3.2屏幕参数的各种单位及相互转换 211

9.3.3处理屏幕自适应的方法 212

9.3.4详细说明Density 214

第10章 利用手机特性—结合硬件进行开发 217

10.1炫酷的人机交互—触摸和手势 217

10.1.1实现滑动翻页—使用ViewFlipper 217

10.1.2支持多个手指一起操作—实现多点触摸 222

10.1.3识别手势—使用GestureDetector 227

10.2我在哪里—使用定位功能 230

10.3电话拨打和短信发送 233

10.3.1调用系统的电话拨打功能 233

10.3.2实现发送短信的功能 234

10.4拍照和摄像 235

10.5使用传感器 238

10.5.1传感器概述 238

10.5.2加速度传感器 241

10.5.3方向传感器 242

10.5.4其他传感器 243

第11章 避重就轻—结合Web开发Android应用 245

11.1 Android上的Web应用概述 245

11.2使用WebView载入Web页面 247

11.2.1 Webkit引擎和WebView控件 247

11.2.2浏览基本的Web页面 247

11.2.3开启对于JavaScript的支持 249

11.2.4监听Web页面的载入 250

11.2.5让WebView支持文件下载 250

11.3本地代码与Web页面交互 252

11.3.1向Web页面传递数据 252

11.3.2本地代码调用Web页面JavaScript方法 254

11.3.3 Web页面调用本地Java方法 254

11.4 Web页面的JavaScript调试 259

11.5常用移动设备Web开发框架 260

11.5.1 jQuery Mobile框架简介 260

11.5.2 Sencha Touch框架简介 262

11.5.3 PhoneGap开发平台简介 262

第12章 细节决定成败—Android应用程序的优化 264

12.1对应用内存的优化 264

12.1.1 Android程序的内存概述 264

12.1.2追踪内存—使用内存优化辅助工具 266

12.1.3吃内存大户—Bitmap的优化 270

12.1.4想回收就回收—使用软引用和弱引用 274

12.1.5注重细节—从代码角度进行优化 277

12.2对界面U1的优化 281

12.2.1多利用Android系统的资源 281

12.2.2抽取相同的布局 284

12.2.3精简UI层次 285

12.2.4界面延迟加载技术 287

12.3留条后路—对Crash进行处理 288

12.3.1为什么需要捕获CrasH 288

12.3.2如何捕获和处理CrasH 289

参考文献 292