第1章 Java OOP基础串讲 1
1.1 对象 1
1.2 类 2
1.3 类和对象的关系 2
1.4 封装 3
1.5 继承 3
1.6 多态 4
1.7 抽象类 5
1.8 接口 5
1.9 集合框架 6
1.10 泛型 8
第2章 Android布局及控件 11
2.1 Android简介 11
2.1.1 移动互联网时代 11
2.1.2 Android的优势 12
2.1.3 Android系统架构 13
2.1.4 搭建Android开发环境 17
2.1.5 第一个Android程序 22
2.2 布局及基础控件(一) 25
2.2.1 Android界面布局 25
2.2.2 文本标签(TextView) 25
2.2.3 按钮(Button) 29
2.2.4 文本框(EditText) 32
2.2.5 单选按钮(RadioButton、RadioGroup) 34
2.2.6 复选按钮(CheckBox) 35
2.3 布局及基础控件(二) 36
2.3.1 事件监听器 36
2.3.2 回调事件响应 39
2.3.3 提示(Toast) 40
2.3.4 读写SDCard 44
2.3.5 简单IO 46
2.4 布局及基础控件(三) 51
2.4.1 RelativeLayout布局 51
2.4.2 AutoCompleteTextView控件 52
2.4.3 ScrollView控件 53
2.4.4 SeekBar控件 53
2.4.5 RatingBar控件 55
2.4.6 NotificationBar控件 57
2.5 Dialog及基础控件 61
2.5.1 ProgressBar控件 61
2.5.2 DatePicker、TimePicker控件 64
2.5.3 AlertDialog 68
2.5.4 ProgressDialog 70
2.5.5 时间、日期Dialog 73
2.5.6 自定义Dialog 76
2.6 ImageView及基础控件 78
2.6.1 ImageView控件 78
2.6.2 ImageButton控件 80
2.6.3 FrameLayout布局 83
2.7 Listview控件及适配器 85
2.7.1 Listview控件及ArrayAdapter适配器 85
2.7.2 SimpleAdaper适配器 87
2.7.3 Spinner控件 90
2.8 ImageSwitcher及基础控件 92
2.8.1 ImageSwitcher控件 92
2.8.2 Gallery控件及BaseAdapter适配器 96
2.8.3 GridView控件 99
2.9 TabHost及基础控件 102
2.9.1 TabHost控件 102
2.9.2 Menu控件 106
2.9.3 自定义控件 109
第3章 Activity及Intent 116
3.1 Activity介绍 116
3.1.1 Activity的创建 116
3.1.2 Activity的配置 117
3.2 Activity跳转 118
3.3 Activity传值 133
3.4 Activity传递对象 140
3.5 Activity启动模式 147
3.5.1 任务栈 147
3.5.2 启动模式 147
3.5.3 Activity启动模式案例分析 149
3.6 Activity生命周期 156
第4章 图片处理 171
4.1 图片操作 171
4.1.1 使用Style和Theme创建样式与主题 171
4.1.2 Matrix实现图片的几何操作 172
4.1.3 Bitmap的使用 176
4.2 简单2D动画 182
4.2.1 补间动画 182
4.2.2 逐帧动画 185
4.3 图片异步加载框架 186
4.3.1 AUIL框架的特性 187
4.3.2 AUIL框架的使用步骤以及配置 187
4.3.3 AUIL框架应用实例 189
第5章 数据存储 196
5.1 DDMS 196
5.1.1 DDMS简介 196
5.1.2 DDMS的Devices设备管理器 198
5.1.3 使用文件浏览器 202
5.1.4 使用模拟器控制 204
5.1.5 使用应用程序日志 205
5.2 SDCard数据读取 205
5.2.1 SDCard介绍及关联模拟器 205
5.2.2 了解Android里的Environment 208
5.2.3 使用IO实现SDCard公有文件的读写 210
5.2.4 使用Android的Context类实现私有文件的读写 216
5.2.5 assets和res/raw 226
5.3 使用SharedPreferences保存软件配置参数 228
5.4 Android数据存储之XML读写 233
5.4.1 SAX解析器 233
5.4.2 Pull解析器 249
5.4.3 DOM解析器 251
5.5 SQLite数据库存储 255
5.5.1 SQLite数据库简介 255
5.5.2 在java中使用sqlite数据库 258
5.5.3 在Android中使用SQLite数据库 260
第6章 安卓高级应用 279
6.1 ContentProvider 279
6.1.1 ContentProvider简介 279
6.1.2 使用ContentProvider 279
6.2 BroadcastReceiver 288
6.2.1 BroadcastReceiver介绍 288
6.2.2 BroadcastReceiver应用 289
6.2.3 WakeLock 292
6.3 Service 294
6.3.1 Service的作用 294
6.3.2 Service的生命周期 294
6.3.3 启动Service 295
6.4 多媒体——音频 305
6.4.1 Android支持的音频格式 306
6.4.2 音频播放器 306
6.4.3 后台播放音频 311
6.4.4 录音程序 313
6.4.5 后台录制音频 318
6.5 多媒体——视频 321
6.5.1 Android支持的视频文件 321
6.5.2 视频播放器 322
6.5.3 拍照程序 325
6.5.4 录制视频 332
6.6 安卓系统应用 336
6.6.1 电话及屏蔽来电 336
6.6.2 短信及屏蔽短信 342
6.6.3 闹钟 345
6.6.4 铃声 347
第7章 网络编程、线程 355
7.1 网络通信 355
7.2 Java标准接口实现网络通信 356
7.2.1 HttpUrlConnection 357
7.2.2 Socket编程 384
7.3 JSON 396
7.3.1 JSON简介 396
7.3.2 在Android中通过JSON传递数据 403
7.4 org.apache接口—HttpClient实现网络通信 408
7.5 线程与线程通信 420
7.5.1 进程 420
7.5.2 Android中线程创建和启动 421
7.5.3 Android中线程状态 422
7.5.4 线程同步 426
7.5.5 Android线程通信 428
7.5.6 AsyncTask工具类简化Android UI线程 434
7.6 Android网络接口— Android.net 441
7.6.1 Wifi操作 441
7.6.2 Bluetooth(蓝牙)管理 451
7.7 WebView控件 457
7.7.1 使用WebView加载网页 457
7.7.2 使用WebView和JS进行交互 460
7.7.3 使用WebView控件制作简单的浏览器 463
第8章 应用 467
8.1 位置服务 467
8.1.1 获取位置信息 467
8.1.2 LocationManager介绍 468
8.1.3 LocationProvider介绍 468
8.1.4 使用GPS获取当前位置信息 470
8.2 传感器 475
8.2.1 Android传感器简介 475
8.2.2 识别传感器 476
8.2.3 传感器事件处理 477
8.2.4 运动传感器 480
8.2.5 位置传感器 482
8.3 发布程序和签名 488
8.3.1 应用程序发布的步骤 488
8.3.2 Android的签名及策略 489
8.3.3 导出未签名的应用程序 489
8.3.4 生成签名文件 490
8.3.5 为应用程序签名 491
8.3.6 使用zipalign工具优化应用程序 492
8.3.7 发布到网络平台 493
第9章 NDK开发与JNI开发 495
9.1 NDK开发 495
9.1.1 NDK产生的背景 495
9.1.2 为什么使用NDK 496
9.1.3 NDK简介 496
9.1.4 NDK开发环境的搭建 496
9.1.5 初试NDK开发 498
9.1.6 生成APK 502
9.2 JNI开发原理 502
9.2.1 JNI的作用 502
9.2.2 什么时候使用JNI 503
9.2.3 JNI的发展 503
9.2.4 JNI开发HelloWorld 504
9.2.5 基本数据类型、字符串、数组 506
9.2.6 属性和方法 510