热门关键字:  听力密码  听力密码  新概念美语  单词密码  巧用听写练听力
图书信息

Android开发完全讲义(第三版)

中国水利水电出版社
    【作 者】李宁 【I S B N 】978-7-5170-3663-0 【责任编辑】张玉玲 【适用读者群】本专通用 【出版时间】2016-01-07 【开 本】16开 【装帧信息】平装(光膜) 【版 次】第1版第1次印刷 【页 数】608 【千字数】975 【印 张】38 【定 价】88 【丛 书】暂无分类 【备注信息】
图书详情

    Android经典专著升级版,全面介绍Android的应用开发技术。主要内容包括Android入门,第一个Android程序,Android应用程序架构,建立用户接口,控件详解,View事件分发机制,移动存储解决方案,App之间的通信,服务(Service),网络技术,多媒体技术,Fragment,ActionBar,Android 5.x新特性:质感主题,Android 5.x新特性:阴影和视图裁剪,Android 5.x新特性:列表和卡片控件,Android 5.x新特性:Drawable资源,其他Android 5.X新特性,2D动画,OpenGL ES编程,媒体特效API,资源、国际化与自适应,访问Android手机的硬件,NDK技术,蓝牙技术,有趣的Android技术,Android App性能调优,内存泄露检测,项目实战:超级手电筒,项目实战:基于XMPP的IM客户端。

    本书适合:有一定的Java基础,想通过Android进入移动开发领域的读者;已经有一定的Android开发经验,想进一步提高Android开发能力的读者;想将本书作为Android的参考手册,随时随地查阅的读者;对Android报有浓厚兴趣的其他手机平台的开发人员;正在学习Android的在校大学生以及培训学校的学员等使用。

    资深一线Android开发工程师、极客、51CTO、cnblogs、CSDN超人气博主“银河使者”快意分享

    本书的两版版权均输出到台湾,深受两岸数万Android学习者好评,被称为“Android第1节”

    一本真正全面又系统的Android开发技术学习讲义,轻梭不乏味

    完美的实战环境搭建,Step by Step的案例讲解,真正消灭常见学习暗障

    赠送全国首个技术测试APP金版帐号(账号获得方式:见geekculture技术支持微信公众号)

    第三版前言

    从2007年的第一版Android系统,到现在为止(2015年),已经整整8年时光了,正进入稳步发展的时期。Android的版本也从1.x、2.x、3.x、4.x升级到现在的5.x。在最新版的Android系统中,变化还是大大地。除了底层从Dalivk变到了ART,SDK层也发生了翻天覆地的变化。除了增加了数千API,还引入了质感设计等新的UI风格。

    由于现在关于Android 5.x的书仍然比较匮乏,所以在第二版的基础上,增加了Android 5.x的新特性部分。尤其是质感设计部分,读者可以通过这一部分内容,充分了解Android 5.x的主要变化。由于Android 5.x引入了ART技术,所以App的启动和运行效率明显提高,因此,未来的Android将会彻底摆脱App体验没有iOS App好的帽子。

    本书是一本全面介绍Android各种常用开发技术的专著。全面介绍了Android 5.x的各种开发技术。

    1.内容丰富,知识面广

    本书全面介绍了Android的各种应用开发技术,主要包括四大应用程序组件、UI控件、Fragment、ActionBar、数据存储、网络、蓝牙、多媒体、NDK、GPS等。读者通过本书可以深入了解Android应用开发技术的细节。

    2.深入讲解了Android 5.x带来的新技术

    本书利用多章篇幅,详细介绍了Android 5.x给我们带来的新特性。例如,质感主题、新的控件、矢量动画等技术。通过这些内容,读者一定会喜欢上Android 5.x的。因为它不仅给我们带来了新的API,还带来了惊喜。

    3.内容详实,深入浅出

    本书绝大多数章节都配有大量的习题,采用了先理论后实战的方式进行讲解。让读者在理论和代码编写上都游刃有余。

    4.精彩综合实战案例

    为了让读者可以综合运用本书知识,最后两章提供了两个综合案例:超级手电筒和基于XMPP的IM客户端。通过这两个综合案例,可以进一步消化本书的知识和技巧。

    源代码下载:

    本书源代码可以通过微信公众号(geekculture)下载,二维码如右图;或从中国水利水电出版社网站或万水书苑上免费下载,网址为:http://www.waterpub.com.cn/softdown/和http://www.wsbookshow.com。

    第1章 Android入门 1
    1.1 Android的基本概念 1
    1.1.1 Android简介 2
    1.1.2 Android的系统构架 3
    1.2 Android开发环境的搭建 4
    1.2.1 开发Android程序需要些什么 4
    1.2.2 安装Android SDK 5
    1.2.3 安装Eclipse插件ADT 7
    1.2.4 创建AVD 8
    1.2.5 启动Android模拟器 10
    1.2.6 让Android模拟器飞(X86加速) 11
    1.2.7 测试Android开发环境是否
    安装成功 12
    1.3 Android SDK中的常用命令行工具 14
    1.3.1 启动和关闭ADB服务(adb
    start-server和adb kill-server) 14
    1.3.2 查询当前模拟器/设备的实例
    (adb devices) 14
    1.3.3 安装、卸载和运行程序(adb install、
    adb uninstall和am) 14
    1.3.4 PC与模拟器或真机交换文件(adb
    pull和adb push) 15
    1.3.5 Shell命令 15
    1.3.6 创建、删除和浏览AVD设备
    (android) 16
    1.3.7 获取Android版本对应的ID 17
    1.3.8 创建SD卡 17
    1.4 Android的学习资源 17
    1.5 Google Play 18
    1.6 小结 18
    第2章 第一个Android程序 19
    2.1 编写用于显示当前日期和时间的程序 19
    2.1.1 新建一个Android工程 19
    2.1.2 界面控件的布局 20
    2.1.3 编写实际代码 20
    2.2 调试程序 22
    2.3 签名和发布应用程序 23
    2.3.1 使用命令行方式进行签名 23
    2.3.2 使用ADT插件方式进行签名 24
    2.4 DDMS透视图 25
    2.5 小结 26
    第3章 Android应用程序架构 27
    3.1 Android应用程序中的资源 27
    3.1.1 资源存放在哪里 27
    3.1.2 资源的种类 28
    3.1.3 资源的基本使用方法 28
    3.2 Android的应用程序组件 29
    3.2.1 活动(Activity)组件 29
    3.2.2 服务(Service)组件 30
    3.2.3 广播接收者(Broadcast receivers)
    组件 30
    3.2.4 内容提供者(Content providers)
    组件 31
    3.3 AndroidManifest.xml文件的结构 31
    3.4 小结 32
    第4章 建立用户接口 33
    4.1 建立、配置和使用Activity 33
    4.1.1 建立和配置Activity 33
    4.1.2 Activity的生命周期 35
    4.1.3 Activity生命周期的演示 37
    4.2 视图(View) 40
    4.2.1 视图简介 40
    4.2.2 使用XML布局文件控制视图 40
    4.2.3 在代码中控制视图 42
    4.2.4 混合使用XML布局文件和代码
    来控制视图 43
    4.2.5 定制控件(Widget)的三种方式 45
    4.2.6 定制控件—带图像的TextView 46
    4.2.7 定制控件—带文本标签的
    EditText 49
    4.2.8 定制控件—可更换表盘的
    指针时钟 52
    4.3 使用AlertDialog类创建对话框 57
    4.3.1 AlertDialog类简介 57
    4.3.2 “确认/取消”对话框 58
    4.3.3 创建询问是否删除文件的
    “确认/取消”对话框 58
    4.3.4 带3个按钮的对话框 60
    4.3.5 创建“覆盖/忽略/取消”对话框 60
    4.3.6 简单列表对话框 61
    4.3.7 单选列表对话框 61
    4.3.8 多选列表对话框 62
    4.3.9 创建3种选择省份的列表对话框 62
    4.3.10 水平进度对话框和圆形进度
    对话框 67
    4.3.11 水平进度对话框和圆形进度
    对话框演示 68
    4.3.12 自定义对话框 71
    4.3.13 创建登录对话框 71
    4.3.14 用Activity托管对话框 73
    4.3.15 创建悬浮对话框和触摸任何位置
    都可以关闭的对话框 74
    4.4 Toast和Notification 77
    4.4.1 用Toast显示提示信息框 77
    4.4.2 Notification与状态栏信息 78
    4.5 布局 81
    4.5.1 框架布局(FrameLayout) 81
    4.5.2 霓虹灯效果的TextView 81
    4.5.3 线性布局(LinearLayout) 83
    4.5.4 利用LinearLayout将按钮放在屏幕
    的四角和中心位置 85
    4.5.5 相对布局(RelativeLayout) 86
    4.5.6 利用RelativeLayout实现梅花效果
    的布局 86
    4.5.7 表格布局(TableLayout) 87
    4.5.8 计算器按钮的布局 88
    4.5.9 绝对布局(AbsoluteLayout) 88
    4.5.10 查看apk文件中的布局 89
    4.6 小结 89
    第5章 控件详解 90
    5.1 显示和编辑文本的控件 91
    5.1.1 显示文本的控件:TextView 91
    5.1.2 在TextView中显示URL及不同字体
    大小、不同颜色的文本 93
    5.1.3 带边框的TextView 94
    5.1.4 设置TextView控件的行间距 97
    5.1.5 输入文本的控件:EditText 98
    5.1.6 在EditText中输入特定的字符 99
    5.1.7 按Enter键显示EditText 100
    5.1.8 自动完成输入内容的控件:
    AutoCompleteTextView 101
    5.2 按钮与复选框控件 102
    5.2.1 普通按钮控件:Button 103
    5.2.2 异形(圆形、五角星、螺旋形和
    箭头)按钮 103
    5.2.3 图像按钮控件:ImageButton 105
    5.2.4 同时显示图像和文字的按钮 105
    5.2.5 选项按钮控件:RadioButton 106
    5.2.6 开关状态按钮控件:ToggleButton 107
    5.2.7 复选框控件:CheckBox 108
    5.2.8 利用XML布局文件动态创建
    CheckBox 108
    5.3 日期与时间控件 110
    5.3.1 输入日期的控件:DatePicker 110
    5.3.2 输入时间的控件:TimePicker 110
    5.3.3 DatePicker、TimePicker与TextView
    同步显示日期和时间 111
    5.3.4 显示时钟的控件:AnalogClock
    和DigitalClock 112
    5.4 进度条控件 112
    5.4.1 进度条控件:ProgressBar 113
    5.4.2 拖动条控件:SeekBar 114
    5.4.3 改变ProgressBar和SeekBar
    的颜色 115
    5.4.4 评分控件:RatingBar 116
    5.5 其他重要控件 118
    5.5.1 显示图像的控件:ImageView 118
    5.5.2 可显示图像指定区域的ImageView
    控件 119
    5.5.3 动态缩放和旋转图像 119
    5.5.4 列表控件:ListView 121
    5.5.5 可以单选和多选的ListView 123
    5.5.6 动态添加、删除ListView列表项 125
    5.5.7 改变ListView列表项选中状态
    的背景颜色 128
    5.5.8 封装ListView的Activity:
    ListActivity 129
    5.5.9 使用SimpleAdapter建立复杂的
    列表项 130
    5.5.10 给应用程序评分 131
    5.5.11 可展开的列表控件:
    ExpandableListView 133
    5.5.12 下拉列表控件:Spinner 136
    5.5.13 垂直滚动视图控件:ScrollView 137
    5.5.14 水平滚动视图控件:
    HorizontalScrollView 138
    5.5.15 可垂直和水平滚动的视图 138
    5.5.16 网格视图控件:GridView 139
    5.5.17 可循环显示和切换图像的控件:
    Gallery和ImageSwitcher 140
    5.6 小结 142
    第6章 View事件分发机制 143
    6.1 事件分发的始作俑者 143
    6.2 View类中的事件分发引擎 144
    6.3 ViewGroup类的事件分发引擎 146
    6.4 通过代码验证View事件分发机制 148
    6.4.1 实现一个派生自Button的类 148
    6.4.2 实现布局 149
    6.4.3 实现主窗口类 149
    6.5 单击事件(onClick)是如何被触发的 152
    6.6 Activity中的dispatchTouchEvent方法 154
    6.7 小结 157
    第7章 移动存储解决方案 158
    7.1 最简单的数据存储方式:
    SharedPreferences 158
    7.1.1 使用SharedPreferences存取数据 158
    7.1.2 数据的存储位置和格式 160
    7.1.3 存取复杂类型的数据 161
    7.1.4 设置数据文件的访问权限 163
    7.1.5 可以保存设置的Activity:
    PreferenceActivity 165
    7.2 文件的存储 168
    7.2.1 openFileOutput和openFileInput
    方法 168
    7.2.2 SD卡文件浏览器 169
    7.2.3 存取SD卡中的图像 173
    7.2.4 SAX引擎读取XML文件的原理 175
    7.2.5 将XML数据转换成Java对象 175
    7.3 SQLite数据库 178
    7.3.1 SQLite数据库管理工具 178
    7.3.2 创建数据库和表 179
    7.3.3 模糊查询 181
    7.3.4 分页显示记录 181
    7.3.5 事务 181
    7.4 在Android中使用SQLite数据库 182
    7.4.1 SQLiteOpenHelper类与自动
    升级数据库 182
    7.4.2 SimpleCursorAdapter类与
    数据绑定 183
    7.4.3 带照片的联系人管理系统 185
    7.4.4 将数据库与应用程序一起发布 188
    7.4.5 英文词典 189
    7.5 持久化数据库引擎(db4o) 192
    7.5.1 什么是db4o 192
    7.5.2 下载和安装db4o 193
    7.5.3 创建和打开数据库 193
    7.5.4 向数据库中插入Java对象 194
    7.5.5 从数据库中查询Java对象 195
    7.5.6 高级数据查询 195
    7.5.7 更新数据库中的Java对象 196
    7.5.8 删除数据库中的Java对象 196
    7.6 小结 196
    第8章 App之间的通信 197
    8.1 Intent与Activity 197
    8.1.1 用Intent启动Activity,并在Activity
    之间传递数据 197
    8.1.2 调用其他应用程序中的Activity(拨打
    电话、浏览网页、发E-mail等) 200
    8.1.3 定制自己的Activity Action 204
    8.1.4 将电子词典的查询功能共享
    成一个Activity Action 205
    8.2 接收和发送广播 207
    8.2.1 接收系统广播 208
    8.2.2 开机可自动运行的程序 208
    8.2.3 收到短信了,该做点什么 209
    8.2.4 显示手机电池的当前电量 211
    8.2.5 在自己的应用程序中发送广播 212
    8.2.6 接收联系人系统中发送的添加
    联系人广播 213
    8.3 小结 214
    第9章 服务(Service) 215
    9.1 Service起步 215
    9.1.1 Service的生命周期 215
    9.1.2 绑定Activity和Service 218
    9.2 系统服务 220
    9.2.1 获得系统服务 220
    9.2.2 监听手机来电 221
    9.2.3 来电黑名单 222
    9.2.4 在模拟器上模拟重力感应 223
    9.2.5 手机翻转静音 225
    9.3 时间服务 227
    9.3.1 计时器:Chronometer 227
    9.3.2 预约时间Handler 229
    9.3.3 定时器Timer 230
    9.3.4 在线程中更新GUI组件 232
    9.3.5 全局定时器AlarmManager 234
    9.3.6 定时更换壁纸 234
    9.3.7 多次定时提醒 237
    9.4 跨进程访问(AIDL服务) 239
    9.4.1 什么是AIDL服务 240
    9.4.2 建立AIDL服务的步骤 240
    9.4.3 建立AIDL服务 240
    9.4.4 传递复杂数据的AIDL服务 243
    9.5 小结 248
    第10章 网络技术 249
    10.1 可装载网络数据的控件 249
    10.1.1 装载网络数据的原理 250
    10.1.2 将网络图像装载到ListView
    控件中 250
    10.1.3 Google图像画廊(Gallery) 253
    10.2 WebView控件 257
    10.2.1 用WebView控件浏览网页 257
    10.2.2 手机浏览器 258
    10.2.3 用WebView控件装载HTML代码 259
    10.2.4 将英文词典整合到Web页中
    (JavaScript调用Java方法) 260
    10.3 访问HTTP资源 262
    10.3.1 提交HTTP GET和HTTP POST
    请求 262
    10.3.2 HttpURLConnection类 265
    10.3.3 上传文件 265
    10.3.4 远程Apk安装器 268
    10.3.5 调用WebService 270
    10.3.6 通过WebService查询产品信息 271
    10.4 Internet地址 275
    10.4.1 Internet地址概述 275
    10.4.2 创建InetAddress对象 276
    10.4.3 判断IP地址类型 278
    10.5 客户端Socket 279
    10.5.1 Socket类基础 280
    10.5.2 多种连接服务端的方式 282
    10.5.3 客户端Socket的超时 283
    10.5.4 Socket类的getter和setter方法 283
    10.5.5 Socket的异常 289
    10.6 服务端Socket 290
    10.6.1 创建ServerSocket对象 290
    10.6.2 设置请求队列的长度 291
    10.6.3 绑定IP地址 292
    10.6.4 默认构造方法的使用 292
    10.6.5 读取和发送数据 293
    10.6.6 关闭连接 294
    10.7 小结 294
    第11章 多媒体技术 295
    11.1 图形 295
    11.1.1 图形绘制基础 296
    11.1.2 绘制基本的图形和文本 298
    11.1.3 绘制位图 301
    11.1.4 用两种方式绘制位图 302
    11.1.5 设置颜色的透明度 303
    11.1.6 可任意改变透明度的位图 303
    11.1.7 旋转图像 304
    11.1.8 旋转动画 305
    11.1.9 扭曲图像 306
    11.1.10 按圆形轨迹扭曲图像 307
    11.1.11 拉伸图像 310
    11.1.12 拉伸图像演示 310
    11.1.13 路径 312
    11.1.14 沿着路径绘制文本 316
    11.1.15 可在图像上绘制图形的画板 318
    11.2 音频和视频 323
    11.2.1 使用MediaPlayer播放MP3文件 323
    11.2.2 使用MediaRecorder录音 324
    11.2.3 使用VideoView播放视频 325
    11.2.4 使用SurfaceView播放视频 326
    11.3 小结 327
    第12章 Fragment 328
    12.1 什么是Fragment 328
    12.2 Fragment的设计原则 330
    12.3 Fragment初步 331
    12.3.1 Fragment的使用方法 331
    12.3.2 实例:一个简单的Fragment App 331
    12.4 Fragment的生命周期 335
    12.4.1 生命周期详解 335
    12.4.2 实例:Fragment生命周期演示 340
    12.5 动态创建Fragment 343
    12.6 Fragment与Activity之间的交互 346
    12.7 回退栈 348
    12.8 小结 350
    第13章 ActionBar 351
    13.1 ActionBar简介 351
    13.2 ActionBar基础 352
    13.2.1 隐藏/显示ActionBar 352
    13.2.2 Action按钮 354
    13.3 应用程序图标导航 357
    13.4 收缩和展开Action View 358
    13.5 导航标签 361
    13.6 下拉导航列表 366
    13.7 小结 368
    第14章 Android 5.x新特性:质感主题 369
    14.1 使用不同的质感主题 369
    14.2 修改质感主题的默认属性值 371
    14.3 小结 372
    第15章 Android 5.x新特性:阴影和
    视图裁剪 373
    15.1 阴影 373
    15.1.1 高度和Z轴的位置 373
    15.1.2 带有阴影的拖动效果 376
    15.2 视图裁剪 377
    15.3 小结 379
    第16章 Android 5.x新特性:列表和
    卡片控件 380
    16.1 RecyclerView控件简介 380
    16.2 用RecyclerView控件实现垂直
    列表效果 381
    16.2.1 建立Model 381
    16.2.2 定制列表项的分隔条 382
    16.2.3 实现Adapter类 383
    16.2.4 如何使用RecyclerView控件 385
    16.2.5 用RecyclerView控件实现增加和
    删除列表项的效果 386
    16.3 用RecyclerView控件实现画廊的效果 389
    16.3.1 为画廊提供数据 390
    16.3.2 自定义RecyclerView控件 391
    16.3.3 让RecyclerView控件横屏显示 392
    16.4 CardView控件 393
    16.4.1 出现R$styleable没找到错误的
    原因 393
    16.4.2 在布局文件中使用CardView 395
    16.4.3 用Java代码来控制CardView
    控件 396
    16.5 小结 398
    第17章 Android 5.x新特性:Drawable
    资源 399
    17.1 着色 399
    17.2 矢量Drawable资源 400
    17.3 矢量动画 402
    17.3.1 指针会动的时钟 402
    17.3.2 笑脸表情 404
    17.4 Ripple Drawable资源 406
    17.5 小结 409
    第18章 其他Android 5.x新特性 410
    18.1 以Immersive模式隐藏及显示状态栏
    和导航条 410
    18.1.1 什么是Immersive模式 410
    18.1.2 实现界面的布局 411
    18.1.3 隐藏和显示 411
    18.1.4 监听隐藏和显示状态 412
    18.2 新的通知中心 412
    18.3 续航与安全性 413
    18.4 更多的新功能 414
    18.5 小结 414
    第19章 2D动画 415
    19.1 帧(Frame)动画 415
    19.1.1 AnimationDrawable与帧动画 416
    19.1.2 通过帧动画方式播放GIF动画 417
    19.1.3 播放帧动画的子集 420
    19.2 补间(Tween)动画 422
    19.2.1 移动补间动画 422
    19.2.2 循环向右移动的EditText与
    上下弹跳的球 424
    19.2.3 缩放补间动画 426
    19.2.4 跳动的心 427
    19.2.5 旋转补间动画 428
    19.2.6 旋转的星系 429
    19.2.7 透明度补间动画 430
    19.2.8 投掷炸弹 431
    19.2.9 振动效果 434
    19.2.10 自定义动画渲染器(Interceptor) 434
    19.2.11 以动画方式切换View的
    控件ViewFlipper 436
    19.3 小结 437
    第20章 OpenGL ES编程 438
    20.1 OpenGL ES简介 438
    20.2 在3D空间中绘图 440
    20.2.1 绘制3D图形的第一步 440
    20.2.2 定义顶点 442
    20.2.3 绘制三角形 443
    20.2.4 三角形合并法绘制矩形 445
    20.2.5 顶点法绘制矩形 447
    20.2.6 顶点的选取顺序 448
    20.2.7 索引法绘制矩形 449
    20.2.8 基于OpenGL ES的动画原理 450
    20.2.9 旋转的矩形 450
    20.3 视图 452
    20.3.1 有趣的比喻:照相机拍照 453
    20.3.2 模型变换:立方体旋转 454
    20.3.3 用gluLookAt方法变换视图 457
    20.4 颜色 458
    20.5 小结 460
    第21章 媒体特效API 461
    21.1 实现主界面布局 461
    21.2 初始化主界面 463
    21.3 媒体特效API演示 464
    21.3.1 Brightness特效 464
    21.3.2 反差特效(Contrast) 464
    21.3.3 Crossprocess特效 465
    21.3.4 纪录片(Documentary)特效 465
    21.3.5 双色调(Duotone)特效 465
    21.3.6 鱼眼(Fish Eye)特效 465
    21.3.7 垂直翻转特效 466
    21.3.8 灰度特效 467
    21.3.9 Lomoish特效 467
    21.3.10 底片特效 467
    21.3.11 色调特效 467
    21.4 让特效生效 468
    21.5 小结 468
    第22章 资源、国际化与自适应 469
    22.1 Android中的资源 470
    22.1.1 Android怎么存储资源 470
    22.1.2 资源的种类 470
    22.1.3 资源文件的命名 471
    22.2 定义和使用资源 471
    22.2.1 使用系统资源 471
    22.2.2 字符串(String)资源 473
    22.2.3 数组(Array)资源 474
    22.2.4 颜色(Color)资源 476
    22.2.5 尺寸(Dimension)资源 477
    22.2.6 类型(Style)资源 479
    22.2.7 主题(Theme)资源 480
    22.2.8 绘画(Drawable)资源 482
    22.2.9 动画(Animation)资源 483
    22.2.10 菜单(Menu)资源 483
    22.2.11 布局(Layout)资源 486
    22.2.12 属性(Attribute)资源 486
    22.2.13 改进可显示图标的IconTextView
    控件 488
    22.2.14 XML资源 490
    22.2.15 RAW资源 491
    22.2.16 ASSETS资源 492
    22.3 国际化和资源自适应 492
    22.3.1 对资源进行国际化 492
    22.3.2 Locale与国际化 494
    22.3.3 常用的资源配置 494
    22.4 小结 495
    第23章 访问Android手机的硬件 496
    23.1 在手机上测试硬件 496
    23.1.1 安装Android USB驱动 497
    23.1.2 在手机上测试程序 498
    23.1.3 在手机上调试程序 499
    23.2 录音 500
    23.3 控制手机摄像头(拍照) 500
    23.3.1 调用系统的拍照功能 501
    23.3.2 实现自己的拍照Activity 503
    23.4 传感器在手机中的应用 507
    23.4.1 在应用程序中使用传感器 507
    23.4.2 电子罗盘 509
    23.4.3 计步器 510
    23.5 GPS与地图定位 511
    23.5.1 Google地图 511
    23.5.2 用GPS定位到当前位置 515
    23.6 WIFI 516
    23.7 小结 519
    第24章 NDK技术 520
    24.1 Android NDK简介 520
    24.2 安装、配置和测试NDK开发环境 521
    24.2.1 系统和软件要求 521
    24.2.2 下载和安装Android NDK 522
    24.2.3 下载和安装Cygwin 522
    24.2.4 配置Android NDK的开发环境 525
    24.2.5 编译和运行NDK自带的例子 526
    24.3 Android NDK开发 528
    24.3.1 JNI接口设计 528
    24.3.2 编写Android NDK程序的步骤 529
    24.3.3 将文件中的小写字母转换成大写
    字母(NDK版本) 529
    24.3.4 配置Android.mk文件 532
    24.3.5 Android NDK定义的变量 533
    24.3.6 Android NDK定义的函数 533
    24.3.7 描述模块的变量 534
    24.3.8 配置Application.mk文件 535
    24.4 小结 536
    第25章 蓝牙技术 537
    25.1 蓝牙简介 537
    25.2 打开和关闭蓝牙设备 538
    25.3 搜索蓝牙设备 539
    25.4 蓝牙数据传输 541
    25.5 蓝牙通信一定需要UUID吗 544
    25.6 小结 545
    第26章 有趣的Android技术 546
    26.1 手势(Gesture) 546
    26.1.1 创建手势文件 546
    26.1.2 通过手势输入字符串 547
    26.1.3 通过手势调用程序 549
    26.1.4 编写自己的手势创建器 550
    26.2 让手机说话(TTS) 551
    26.3 动态壁纸 552
    26.4 小结 559
    第27章 Android App性能调优 560
    27.1 刷新频率与丢帧 560
    27.2 开发者选项与查看GPU负载 561
    27.3 GPU渲染时间与性能调优 564
    27.4 Overdraw与区域绘制 565
    27.5 内存抖动与性能 566
    27.6 小结 568
    第28章 内存泄露检测 569
    28.1 造成内存泄露的原因 569
    28.1.1 非静态内嵌类 569
    28.1.2 Handler要用静态变量或弱引用 570
    28.1.3 线程引发的内存泄露 571
    28.1.4 其他可能会造成内存泄露的情况 572
    28.1.5 弱引用(WeakReference)和软引
    用(SoftReference) 572
    28.2 内存泄露检测工具:Eclipse MAT 573
    28.3 小结 576
    第29章 项目实战:超级手电筒 577
    29.1 手电筒APP简介 577
    29.2 手电筒的架构 578
    29.3 手电筒照明 579
    29.3.1 手电筒的布局 579
    29.3.2 通过代码调整控制区域位置 580
    29.3.3 打开和关闭闪光灯 580
    29.4 警告灯 581
    29.5 发送莫尔斯密码 583
    29.6 其他功能的实现 585
    29.7 小结 585
    第30章 项目实战:基于XMPP的IM
    客户端 586
    30.1 XMPP简介 586
    30.2 Openfire安装与配置 587
    30.3 Spark的安装和使用 590
    30.4 用户登录 591
    30.5 获取好友信息 591
    30.6 添加好友 594
    30.7 发送聊天信息 594
    30.8 接收聊天信息 595
    30.9 其他功能 596
    30.10 小结 596

最新评论共有 1 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册