Android开发指南(第2版)(附CD光盘1张) 9787115320339

Android开发指南(第2版)(附CD光盘1张) 9787115320339 pdf epub mobi txt 电子书 下载 2025

李宁 著
图书标签:
  • Android
  • 开发
  • 指南
  • 第二版
  • 移动开发
  • 编程
  • 技术
  • 书籍
  • 电子书
  • 计算机
  • IT
  • 软件开发
想要找书就要到 新城书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
店铺: 广影图书专营店
出版社: 人民邮电出版社
ISBN:9787115320339
商品编码:29623896989
包装:平装
出版时间:2013-09-01

具体描述

基本信息

书名:Android开发指南(第2版)(附CD光盘1张)

定价:99.00元

售价:72.3元,便宜26.7元,折扣73

作者:李宁

出版社:人民邮电出版社

出版日期:2013-09-01

ISBN:9787115320339

字数:

页码:739

版次:2

装帧:平装

开本:16开

商品重量:0.4kg

编辑推荐


内容提要


本书内容更新超过80%,是一本全面介绍Android应用开发的专著,拥有45章精彩内容供读者学习。
  全面介绍了Android应用开发的各种技术,主要内容包括Android的四大应用程序组件(Activity、Service、Content Provider和Broadcast Receiver)、布局、菜单、控件、资源和本地化、可视化UI设计、对话框、Toast和通知栏(Notification)、Fragment、ActionBar、拖放技术、数据存储技术、Android支持的各种组件技术、通信技术(蓝牙、NFC、网络等)、异步装载、推送技术、多媒体、2D绘图技术、OpenGL ES、桌面小部件、动态壁纸、短信和彩信、传感器、GPS、谷歌地图、人机交互、输入法开发、Android NDK开发、测试驱动开发、性能优化等。
  并不局限于介绍Android的各种理论知识,而是从“实战”的角度介绍开发技术。本书的所有示例都是精心设计的,足以使读者对当前讲解的理论知识驾轻就熟。这些示例中的很多例子都源于真实的项目,读者可以对这些示例的源程序稍加改动就可用于自己的项目中。本书除了为每一个知识点提供完整的示例外,后还提供了两个完整的项目:笑脸连连看和NFC侠。这两个项目极具参考价值,尤其是NFC侠,是笔者维护的一个开源项目,用于在不支持NFC的手机或Android模拟器上开发和测试NFC应用。读者可以关注我的Blog来获得NFC侠以及本书的信息。
  本书适合有一定Java基础的读者阅读,如果读者已经掌握了Java的基本语法,那么本书将会成为您的选择和枕边书,您将从书中获得更多有价值的Android开发技术。

目录


章 初识Android平台
1.1 Android简介
1.2 Android的制胜法宝
1.3 Android的版本发展历程
1.3.1 Android 1.5(纸杯蛋糕)
1.3.2 Android 1.6(甜甜圈)
1.3.3 Android 2.1(松饼)
1.3.4 Android 2.2(冻酸奶)
1.3.5 Android 2.3(姜饼)
1.3.6 Android 3.0(蜂巢)
1.3.7 Android 4.0(冰激凌三明治)
1.3.8 Android 4.1/4.2(果冻豆)
1.4 Android的系统架构
1.5 小结

第2章 搭建Android开发和测试环境
2.1 搭建Android开发环境需要些什么
2.2 安装Java开发环境
2.2.1 安装K
2.2.2 安装和配置Eclipse
2.3 安装Android开发环境
2.3.1 下载和安装Android SDK
2.3.2 下载和安装Android NDK
2.3.3 安装和配置Eclipse插件:ADT
2.4 配置Android测试环境
2.4.1 建立Android虚拟设备(AVD)
2.4.2 启动Android模拟器
2.4.3 安装真机测试环境
2.5 小结

第3章 个Android应用程序
3.1 从个Android程序中可以学到什么
3.2 建立Android工程
3.3 Android工程的结构
3.4 在窗口上放两个按钮
3.5 编写窗口类
3.6 修改字符串资源
3.7 运行Android应用程序
3.8 调试Android应用程序
3.9 Android应用程序
3.10 小结

第4章 Android应用程序架构
4.1 Android应用程序中的资源
4.1.1 资源存放在哪里
4.1.2 资源的基本使用方法
4.2 Android的应用程序组件
4.2.1 窗口(Activity)组件
4.2.2 服务(Service)组件
4.2.3 广播接收者(Broadcast receivers)组件
4.2.4 内容提供者(Content Provider)组件
4.3 AndroidManifest.xml文件的结构
4.4 小结

第5章 窗口(Activity)与视图(View)
5.1 声明和使用Activity
5.1.1 Activity的基本用法
5.1.2 同时适合手机和平板电脑的窗口风格
5.2 Activity的生命周期
5.3 窗口的常用事件
5.3.1 设置窗口标题事件(onTitleChanged)
5.3.2 键盘按下和抬起事件(onKeyDown和onKeyUp)
5.3.3 任意情况下捕捉键盘事件(dispatchKeyEvent)
5.3.4 回退事件(onBackPressed)
5.3.5 按键长按事件(onKeyLongPress)
5.3.6 屏幕触摸事件(onTouchEvent)
5.3.7 窗口获得焦点事件(onWindowFocusChanged)
5.4 在不同Activity之间传递数据
5.4.1 使用Intent传递数据
5.4.2 使用静态变量传递数据
5.4.3 使用剪贴板传递数据
5.4.4 使用全局对象传递数据
5.5 从Activity返回数据
5.6 视图(View)
5.6.1 视图简介
5.6.2 使用XML布局文件定义视图
5.6.3 在代码中控制视图
5.7 显示系统窗口
5.7.1 直接拨号
5.7.2 将电话号传入拨号程序
5.7.3 调用拨号程序
5.7.4 浏览网页
5.7.5 查看联系人
5.7.6 显示系统设置界面(设置主界面、Wi-Fi设置界面)
5.7.7 启动处理音频的程序
5.7.8 回到Home窗口(相当于按Home键)
5.8 与Activity相关的技巧与特效
5.8.1 全屏显示(隐藏标题栏和状态栏)
5.8.2 定制窗口标题栏
5.8.3 为程序添加Splash
5.8.4 改变窗口大小、位置和透明度
5.8.5 按两次关闭窗口
5.8.6 关闭所有的窗口
5.8.7 窗口截屏
5.9 小结

第6章 Intent与Intent Filter
6.1 Android系统的信使:Intent
6.2 Intent对象
6.2.1 Intent对象可以封装和传递哪些信息
6.2.2 组件名(Component name)
6.2.3 动作(Action)
6.2.4 种类(Category)
6.2.5 数据(Data)
6.2.6 附加数据(Extra)
6.2.7 标志(Flags)
6.3 显式和隐式访问窗口
6.4 跨应用程序访问窗口
6.5 Android系统的过滤机制大揭秘
6.5.1 过滤条件的设置
6.5.2 过滤器的筛选规则
6.5.3 示例:过滤机制应用演示
6.6 Android源代码与过滤器
6.6.1 系统内置程序有哪些窗口可以利用
6.6.2 显示计算器(Calculator)
6.6.3 用(Browser)显示网页
6.6.4 拨打电话(Phone)与授权
6.7 获取第三方程序中可调用的窗口
6.8 传递附加数据(Extra)
6.9 解析数据
6.10 小结

第7章 窗口(Activity)高级技术
7.1 Activity XML属性详解
7.1.1 设置Activity的基本信息
7.1.2 屏幕方向切换(android:screenOrientation)
7.1.3 阻止Activity销毁和重建(android:configChanges)
7.1.4 允许Activity被实例化(android:enabled)
7.1.5 在近应用列表中显示(android:excludeFromRecents)
7.1.6 允许其他程序访问当前窗口(android:exported)
7.1.7 硬件加速(android:hardwareAccelerated)
7.1.8 在多进程中创建窗口实例(android:multiprocess)
7.1.9 无法返回的Activity(android:noHistory)
7.1.10 指定要返回的窗口(android:parentActivityName)
7.1.11 使窗口受到权限的保护(android:permission)
7.1.12 改变窗口所在的进程(android:process)
7.1.13 不保存窗口的状态(android:stateNotNeeded)
7.1.14 窗口的主题(android:theme)
7.1.15 扩展窗口UI(android:uiOptions)
7.1.16 设置输入法显示模式(android:windowSoftInputMode)
7.2 深入探索Activity从创建到销毁的过程
7.2.1 任务(Task)与回退栈(Back Stack)
7.2.2 保存窗口(Activity)状态
7.2.3 管理任务和回退栈
7.2.4 Activity的4种创建模式
7.2.5 用Java代码设置窗口创建模式
7.2.6 窗口的乾坤大挪移(affinity)
7.2.7 销毁不再使用的窗口
7.3 Activity的别名
7.4 小结

第8章 布局
8.1 Android的五大布局
8.1.1 框架布局(FrameLayout)
8.1.2 线性布局(LinearLayout)
8.1.3 相对布局(RelativeLayout)
8.1.4 表格布局(TableLayout)
8.1.5 布局(AbsoluteLayout)
8.2 属性资源与Android命名空间
8.3 布局属性
8.4 布局高级技术
8.4.1 布局别名
8.4.2 重用布局
8.4.3 优化布局
8.4.4 动态装载布局
8.4.5 动态设置布局属性
8.4.6 从右到左布局(RTL Layout)
8.5 小结

第9章 菜单
9.1 菜单的基本用法
9.1.1 创建选项菜单(Options Menu)
9.1.2 关联Activity
9.1.3 响应菜单的单击动作
9.1.4 动态添加、修改和删除选项菜单
9.1.5 带复选框和选项按钮的子菜单
9.1.6 上下文菜单
9.1.7 菜单事件
9.1.8 从菜单资源中装载菜单
9.2 菜单特效
9.2.1 自定义菜单
9.2.2 模拟UCWeb菜单效果
9.3 小结

0章 Android的资源详解(一)
10.1 创建资源
10.1.1 手工创建资源文件
10.1.2 用ADT模板创建本地化图标资源
10.1.3 用ADT模板创建XML文件资源
10.2 使用资源
10.2.1 生成资源类文件(R.java)
10.2.2 从XML文件中访问资源
10.2.3 使用Java代码访问资源
10.2.4 Java反射技术与枚举资源
10.3 字符串(String)资源
10.3.1 普通字符串
10.3.2 字符串数组
10.3.3 复数字符串
10.3.4 在字符串中使用引号
10.3.5 用占位符格式化字符串
10.3.6 用HTML标签格式化字符串资源
10.4 值(values)资源
10.4.1 整数(Integer)资源
10.4.2 尺寸(Dimension)资源
10.4.3 布尔(Boolean)资源
10.4.4 颜色(Color)资源
10.4.5 ID资源
10.4.6 整数数组(Integer-Array)资源
10.4.7 类型数组(Typed-Array)资源
10.5 菜单(menu)资源
10.6 图像(drawable)资源
10.6.1 普通图像资源
10.6.2 XML图像资源
10.6.3 Nine-Patch图像资源
10.6.4 XML Nine-Patch图像资源
10.6.5 图层(Layer)资源
10.6.6 图像状态(State)资源
10.6.7 图像级别(Level)资源
10.6.8 淡入淡出(Cross-fade)资源
10.6.9 嵌入(Inset)图像资源
10.6.10 剪切(Clip)图像资源
10.6.11 外形(Shape)资源
10.7 小结

1章 Android的资源详解(二)
11.1 动画资源
11.1.1 属性(Property)动画
11.1.2 帧(Frame)动画
11.1.3 移动补间(TranslateTween)动画
11.1.4 循环向右移动的EditText与上下弹跳的球
11.1.5 缩放补间(Scale Tween)动画
11.1.6 跳动的心
11.1.7 旋转补间(Rotate Tween)动画
11.1.8 旋转的星系
11.1.9 透明度补间(Alpha Tween)动画
11.1.10 投掷炸弹
11.1.11 震动渲染器(Shake Interpolator)
11.1.12 自定义渲染器(Interpolator)
11.2 风格(Style)资源与主题(Theme)
11.3 小结

2章 资源的本地化
12.1 建立本地化的资源目录
12.2 资源目录的命名规则
12.3 建立别名资源
12.3.1 图像别名资源
12.3.2 布局别名资源
12.3.3 字符串别名资源
12.3.4 其他简单值别名资源
12.4 资源目录的优先级
12.5 屏幕适配
12.5.1 屏幕适配要考虑的因素
12.5.2 适配不同屏幕可以采用的规则
12.5.3 屏幕尺寸和屏幕密度
12.5.4 位置、尺寸和字体应使用屏幕密度单位
12.5.5 与屏幕适配有关的标识符
12.5.6 影响屏幕适配的重要因素:布局和图像
12.5.7 典型的屏幕适配案例
12.5.8 在Google Play上限制屏幕尺寸和屏幕密度
12.5.9 在Android模拟器上测试各种屏幕尺寸和密度
12.6 小结

3章 Android的控件详解(一)
13.1 显示文本的控件(TextView)
13.1.1 显示富文本(URL、不同大小、字体、颜色的文本)
13.1.2 用标签在TextView控件上显示图像
13.1.3 单击链接弹出Activity
13.1.4 为指定文本添加背景
13.2 编辑文本的控件(EditText)
13.2.1 像一样输入表情图像
13.2.2 在EditText中输入特定的字符
13.2.3 AutoCompleteTextView(自动完成输入内容的控件)
13.3 按钮(Button)和复选框(Checkbox)控件
13.3.1 Button(普通按钮控件)
13.3.2 图文混排的按钮
13.3.3 ImageButton(图像按钮控件)
13.3.4 RadioButton(选项按钮控件)
13.3.5 ToggleButton(开关状态按钮控件)
13.3.6 CheckBox(复选框控件)
13.4 图像控件(ImageView)
13.4.1 ImageView控件的基本用法
13.4.2 显示指定区域的图像
13.4.3 缩放和旋转图像
13.5 时间与日期控件
13.5.1 DatePicker(输入日期的控件)
13.5.2 TimePicker(输入时间的控件)
13.5.3 DatePicker、TimePicker与TextView同步显示日期和时间
13.5.4 AnalogClock和DigitalClock(显示时钟的控件)
13.6 小结

4章 Android的控件详解(二)
14.1 进度条控件
14.1.1 ProgressBar(进度条控件)
14.1.2 SeekBar(拖动条控件)
14.1.3 设置ProgressBar和SeekBar的颜色及背景图
14.1.4 RatingBar(评分控件)
14.2 列表控件
14.2.1 ListView(普通列表控件)
14.2.2 为ListView列表项添加复选框和选项按钮
14.2.3 对列表项进行增、删、改操作
14.2.4 改变列表项的背景色
14.2.5 ListActivity(封装ListView的Activity)
14.2.6 ExpandableListView(可扩展的列表控件)
14.2.7 Spinner(下拉列表控件)
14.3 GridView(网格控件)
14.4 TabHost(标签控件)
14.5 ViewStub(惰性装载控件)
14.6 小结

5章 可视化UI设计
15.1 拖放控件
15.2 设置视图属性
15.3 预览各种屏幕尺寸
15.4 语言和地区的本地化测试
15.5 其他可视化功能
15.6 小结

6章 对话框、Toast与通知栏(Notification)
16.1 对话框
16.1.1 带2个按钮(确认/取消)的对话框
16.1.2 带3个按钮(覆盖/忽略/取消)的对话框
16.1.3 简单列表对话框
16.1.4 单选列表对话框
16.1.5 多选列表对话框
16.1.6 进度对话框
16.1.7 登录对话框
16.1.8 使用Activity托管对话框
16.2 Toast
16.3 通知(Notification)
16.3.1 在状态栏上显示通知信息
16.3.2 存在的Notification
16.3.3 自定义Notification
16.4 小结

7章 封装UI和代码利器——Fragment
17.1 Fragment简介
17.2 什么时候使用Fragment
17.3 按照Fragment设计原则编写程序
17.4 Fragment的生命周期
17.5 创建Fragment
17.5.1 通过XML布局文件创建Fragment
17.5.2 通过Java代码创建Fragment
17.5.3 创建无UI的Fragment
17.5.4 在低版本Android中使用Fragment(Support Library)
17.6 Activity与Fragment之间的交互
17.6.1 Fragment与Activity之间的交互
17.6.2 Fragment的回调机制
17.7 Fragment状态的持久化
17.8 Fragment与回退栈(导航)
17.9 FragmentManager与FragmentTransaction
17.9.1 管理Fragment事务
17.9.2 查找Fragment
17.9.3 跟踪回退栈状态
17.9.4 恢复历史状态
17.9.5 管理Fragment的状态
17.9.6 添加、删除和替换Fragment
17.9.7 分离(Detach)与附加(Attach)Fragment
17.9.8 显示和隐藏Fragment
17.10 Fragment扩展
17.10.1 ListFragment
17.10.2 DialogFragment
17.10.3 其他Fragment扩展类
17.11 Fragment模板源代码分析
17.12 小结

8章 动作栏——ActionBar
18.1 ActionBar简介
18.2 ActionBar基础
18.2.1 隐藏/显示ActionBar
18.2.2 添加和响应Action按钮
18.3可上下两分的ActionBar
18.4 应用程序图标导航
18.5 收缩和展开ActioView
18.6 ActionProvider
18.6.1 分享信息(ShareActionProvider)
18.6.2 定制ActionProvider
18.7 导航标签
18.8 下拉导航列表
18.9 小结

9章 Android的拖放技术
19.1 Android中的拖放操作
19.2 拖放状态与拖放处理
19.3 拖动阴影
19.4 示例:拖动复制图像
19.5 小结

第20章 数据存储解决方案
20.1 读写key-value对:SharedPreferences
20.2 文件流操作
20.2.1 openFileOutput和openFileInput方法
20.2.2 读写SD卡中的文件
20.3 读写JSON格式的数据
20.4 SQLite数据库
20.4.1 SQLite数据库管理工具
20.4.2 SQLiteOpenHelper类与自动升级数据库
20.4.3 数据绑定与SimpleCursorAdapter类
20.4.4 操作SD卡上的数据库
20.4.5 将数据库与应用程序一起发布
20.4.6 内存数据库
20.5 小结

第21章 内容提供者(Content Provider)
21.1 Content Provider的作用
21.2 获得系统数据
21.2.1 读取联系人信息
21.2.2 查看收件箱的短信
21.3 自定义Content Provider
21.3.1 查询城市信息
21.3.2 为Content Provider添加访问权限
21.4 如何查找系统提供的Content Provider
21.5 小结

第22章 广播接收器(Broadcast Receiver)
22.1 什么是广播
22.2 接收系统广播
22.2.1 短信拦截
22.2.2 用代码注册广播接收器
22.2.3 广播接收器的优先级
22.2.4 来去电拦截
22.2.5 截获屏幕休眠与唤醒
22.2.6 开机自动运行
22.2.7 显示手机电池的当前电量
22.3 发送广播
22.4 小结

第23章 服务(Service)
23.1 Service基础
23.1.1 Service的生命周期
23.1.2 开机启动Service
23.2 跨进程访问(AIDL服务)
23.2.1 什么是AIDL服务
23.2.2 建立AIDL服务的步骤
23.2.3 创建和调用AIDL服务
23.2.4 传递复杂数据的AIDL服务
23.2.5 AIDL与来去电自动挂断
23.3 小结

第24章 Android的组件开发
24.1 Android支持哪些组件开发方式
24.2 引用jar文件
24.3 跨工程引用
24.4 引用NDK Library
24.5 动态引用APK文件
24.6 动静结合的组件
24.7 脚本类型组件()与WebView控件
24.8 如何确定动态组件是否安装
24.9 升级动态组件
24.10 小结

第25章 Android的蓝牙开发技术
25.1 蓝牙简介
25.2 打开和关闭蓝牙设备
25.3 搜索蓝牙设备
25.4 蓝牙数据传输
25.5 蓝牙通信一定需要UUID吗
25.6 小结

第26章 近距离天线通信——NFC技术
26.1 NFC简介
26.2 NFC、蓝牙和红外之间的差异
26.3 NFC技术的未来前景
26.4 Android中的NFC技术
26.4.1 NDEF与非NDEF数据
26.4.2 NFC的三重过滤机制
26.4.3 开启Android的NFC功能
26.4.4 编写NFC程序的基本步骤
26.5 测试NFC程序需要的设备
26.6 让Android手机自动运行程序
26.6.1 向NFC标签写入数据的基本步骤
26.6.2 向NFC标签写入启动Android应用程序的消息
26.7 让Android手机自动打开网页
26.8 读写NFC标签中的文本
26.8.1 实现读写文本数据应用的基本思路
26.8.2 如何将NFC标签变成NDEF文本格式
26.8.3 NDEF文本格式解析
26.8.4 实现读写文本数据的Android应用程序
26.9 读写NFC标签中的Uri
26.9.1 NDEF Uri格式解析
26.9.2 实现读写Uri的Android应用程序
26.10 利用NFC标签支持的数据格式进行过滤
26.11 处理任意NFC标签
26.12 读写非NDEF格式的数据
26.13 Android Beam技术与数据交互
26.13.1 传递NDEF消息
26.13.2 传输文件
26.14 小结

第27章 Android的网络开发技术
27.1 提交 GET和 POST请求
27.2 HttpURLConnection类
27.3 上传文件
27.4 下载管理(DownloadManager)
27.5 Wi-Fi Direct
27.5.1 Wi-Fi Direct API的核心部分
27.5.2 创建监听Wi-Fi Direct动作的广播接收器
27.5.3 注册广播接收器
27.5.4 发现Wi-Fi Direct设备
27.5.5 连接Wi-Fi Direct设备
27.5.6 数据传输
27.6 Inter电话(SIP)
27.6.1 使用SIP的要求和限制
27.6.2 配置Android版SIP电话
27.6.3 创建SipManager
27.6.4 注册SIP服务器
27.6.5 开始打电话
27.6.6 接听电话
27.7 小结

第28章 并发与定时器
28.1 Handler
28.1.1 更新UI
28.1.2 延迟执行
28.2 定时器
28.2.1 单秒循环的定时器:Chronometer
28.2.2 任意时间间隔的定时器:Timer
28.2.3 全局定时器:AlarmManager
28.3 AsyncTask
28.4 小结

第29章 异步装载(Loader)
29.1 Loader简介
29.2 Loader的核心类/接口
29.3 如何使用Loader
29.3.1 创建/重用Loader
29.3.2 遗弃旧的数据
29.3.3 LoaderManager与方法回调
29.3.4 创建Loader对象(onCreateLoader)
29.3.5 完成数据装载(onLoadFinished)
29.3.6 Loader被重置(onLoaderReset)
29.4 异步装载联系人(CursorLoader的应用)
29.5 小结

第30章 Android推送技术
30.1 IOS的推送方案
30.2 Windows Phone的推送方案
30.3 Android的推送方案
30.4 第三方推送服务:极光推送
30.5 自己搭建推送服务器:AndroidPN
30.6 小结

第31章 Android的多媒体开发技术
31.1 音频
31.1.1 音频播放
31.1.2 录制音频
31.2 视频
31.2.1 播放视频
31.2.2 录制视频
31.3 相机
31.3.1 调用系统的拍照功能
31.3.2 自定义拍照功能
31.4 铃声
31.5 小结

第32章 Android的2D绘图
32.1 绘制基本的图形
32.1.1 绘制像素点
32.1.2 绘制直线
32.1.3 绘制圆形
32.1.4 绘制圆弧
32.1.5 绘制文本
32.1.6 示例:绘制基本的图形和文本
32.2 绘制位图
32.2.1 绘制Bitmap对象
32.2.2 使用Drawable.draw方法绘制位图
32.2.3 示例:用两种方式绘制位图
32.3 设置图像的透明度
32.4 旋转图像
32.5 小结

第33章 3D绘图之OpenGL ES
33.1 OpenGL ES简介
33.2 在3D空间中绘图
33.2.1 要绘制3D图形了,步要做什么
33.2.2 定义顶点
33.2.3 绘制三角形
33.2.4 三角形合并法绘制矩形
33.2.5 顶点法绘制矩形
33.2.6 顶点的选取顺序
33.2.7 索引法绘制矩形
33.2.8 基于OpenGL ES的动画原理
33.2.9 旋转的矩形
33.3 视图
33.3.1 有趣的比喻:照相机拍照
33.3.2 模型变换:立方体旋转
33.3.3 用gluLookAt方法变换视图
33.4 颜色
33.5 小结

第34章 Android的桌面上的'尤物'
34.1 窗口小部件(App Widget)
34.1.1 在Android桌面上添加App Widget
34.1.2 开发App Widget的步骤
34.1.3 数字时钟
34.1.4 AppWidgetProvider类
34.1.5 向App Widget添加配置窗口
34.1.6 可以选择风格的数字时钟
34.2 动态壁纸(变换的圆圈)
34.3 小结

第35章 Android中的短信(SMS)与彩信(MMS)开发技术
35.1 通过系统程序发短信
35.2 直接发送短信
35.3 保存短信发送记录
35.4 监听短信和彩信
35.5 显示视频缩略图
35.6 彩信内容与SMIL协议
35.7 小结

第36章 Android的传感器开发技术
36.1 如何使用传感器
36.2 加速度传感器(Accelerometer)
36.3 重力传感器(Gravity)
36.4 光线传感器(Light)
36.5 陀螺仪传感器(Gyroscope)
36.5 方向传感器(Orientation)
36.6 其他传感器
36.7 小结

第37章 Android的全球定位系统(GPS)
37.1 GPS的核心API
37.2 获取位置提供者(LocationProvider)
37.2.1 获取所有可用的LocationProvider
37.2.2 根据名称获取LocationProvider
37.2.3 根据条件(Criteria)获取LocationProvider
37.3 实时获取GPS定位数据
37.4 测量地球上任意两点之间的距离
37.5 邻近警告
37.6 小结

第38章 谷歌地图(Google Map)开发应用
38.1 Google Map的跨平台解决方案:Maps API v3
38.2 Google Map的显示与定位
38.3 在Google Map上插入图像标志
38.4 插入多个图像标志
38.5 带阴影的位置坐标信息
38.6 地图与Java交互
38.7 小结

第39章 Android中的人机交互设计
39.1 手势(Gesture)
39.1.1 创建手势文件
39.1.2 通过手势输入字符串
39.1.3 通过手势调用程序
39.1.4 编写自己的手势创建器
39.2 多点触摸与放大/缩小操作
39.3 语音识别
39.4 让手机说话(TTS)
39.5 小结

第40章 Android中的输入法开发
40.1 Android输入法简介
40.2 控制输入法
40.3 输入法实战
40.3.1 实现输入法的步骤
40.3.2 编写输入法程序
40.3.3 输入法服务的生命周期
40.3.4 预输入文本
40.3.5 输入法设置
40.4 小结

第41章 Android NDK开发
41.1 Android NDK简介
41.2 安装、配置和测试NDK开发环境
41.2.1 系统和软件要求
41.2.2 下载和安装Android NDK
41.2.3 下载和安装Cygwin
41.2.4 配置Android NDK的开发环境
41.3 利用NDK Samples学习NDK开发
41.3.1 编译NDK Samples
41.3.2 NDK程序的结构与命名规则
41.4 Android NDK配置文件详解
41.4.1 Android NDK定义的变量
41.4.2 Android NDK定义的函数
41.4.3 描述模块的变量
41.4.4 配置Application.mk文件
41.5 个NDK示例:字母的大小写转换
41.5.1 编写NDK程序
41.5.2 编写调用NDK函数的Java程序
41.5.3 在Eclipse中开发和编译NDK程序
41.6 NDK程序读取Java字段值
41.7 小结

第42章 Android的测试驱动开发(TDD)
42.1 JUnit测试框架
42.2 测试Activity
42.3 测试Content Provider
42.4 测试Service
42.5 测试普通类
42.6 小结

第43章 Android应用的性能优化
43.1 性能优化的基础知识
43.2 编写Java程序的优化原则
43.2.1 用静态工厂方法代替构造方法
43.2.2 避免创建重复的对象
43.2.3 防止内存泄漏
43.2.4 返回零长度的集合而不是null
43.2.5 通过接口引用对象
43.3 避免ANR
43.4 执行时间测试
43.5 内存消耗测试
43.6 测试性能的工具:traceview
43.7 小结

第44章 游戏项目实战:笑脸连连看
44.1 游戏玩法
44.2 准备图像素材
44.3 实现主界面
44.4 生成连连看图像
44.5 选中两个相同图像后消失
44.6 用定时器限制游戏时间
44.7 小结

第45章 开源项目实战:NFC侠(NFCMan)
45.1 什么是NFCMan
45.2 用Android模拟器和非NFC设备测试NFC应用
45.3 NFCMan的实现原理
45.4 实现服务端程序(NFCMan)
45.4.1 可视化SWT开发环境
45.4.2 创建NFC标签
45.4.3 描述虚拟NFC标签的NFCTag类
45.4.4 保证虚拟NFC标签的全局
45.4.5 显示与保存虚拟NFC标签
45.4.6 装载已经存在的虚拟NFC标签
45.4.7 开启服务
45.4.8 处理客户端请求
45.4.9 保证虚拟Android设备全局
45.4.10 描述虚拟Android设备
45.4.11 添加虚拟Android设备
45.4.12 异常处理机制
45.5 客户端与服务端之间的数据管道(NFCManService)
45.5.1 与NFCMan交互(Socket方式)
45.5.2 与ANFCMan交互(广播方式)
45.6 客户端Library(ANFCMan)
45.6.1 ANFCMan的数据结构和异常类
45.6.2 ANFCMan的入口类
45.6.3 模拟检测到NFC标签的广播接收器
45.6.4 同时处理物理NFC标签和虚拟NFC标签的窗口
45.7 测试ANFCMan(TestANFCMan)
45.8 小结

作者介绍


文摘


序言


章 初识Android平台
1.1 Android简介
1.2 Android的制胜法宝
1.3 Android的版本发展历程
1.3.1 Android 1.5(纸杯蛋糕)
1.3.2 Android 1.6(甜甜圈)
1.3.3 Android 2.1(松饼)
1.3.4 Android 2.2(冻酸奶)
1.3.5 Android 2.3(姜饼)
1.3.6 Android 3.0(蜂巢)
1.3.7 Android 4.0(冰激凌三明治)
1.3.8 Android 4.1/4.2(果冻豆)
1.4 Android的系统架构
1.5 小结

第2章 搭建Android开发和测试环境
2.1 搭建Android开发环境需要些什么
2.2 安装Java开发环境
2.2.1 安装K
2.2.2 安装和配置Eclipse
2.3 安装Android开发环境
2.3.1 下载和安装Android SDK
2.3.2 下载和安装Android NDK
2.3.3 安装和配置Eclipse插件:ADT
2.4 配置Android测试环境
2.4.1 建立Android虚拟设备(AVD)
2.4.2 启动Android模拟器
2.4.3 安装真机测试环境
2.5 小结

第3章 个Android应用程序
3.1 从个Android程序中可以学到什么
3.2 建立Android工程
3.3 Android工程的结构
3.4 在窗口上放两个按钮
3.5 编写窗口类
3.6 修改字符串资源
3.7 运行Android应用程序
3.8 调试Android应用程序
3.9 Android应用程序
3.10 小结

第4章 Android应用程序架构
4.1 Android应用程序中的资源
4.1.1 资源存放在哪里
4.1.2 资源的基本使用方法
4.2 Android的应用程序组件
4.2.1 窗口(Activity)组件
4.2.2 服务(Service)组件
4.2.3 广播接收者(Broadcast receivers)组件
4.2.4 内容提供者(Content Provider)组件
4.3 AndroidManifest.xml文件的结构
4.4 小结

第5章 窗口(Activity)与视图(View)
5.1 声明和使用Activity
5.1.1 Activity的基本用法
5.1.2 同时适合手机和平板电脑的窗口风格
5.2 Activity的生命周期
5.3 窗口的常用事件
5.3.1 设置窗口标题事件(onTitleChanged)
5.3.2 键盘按下和抬起事件(onKeyDown和onKeyUp)
5.3.3 任意情况下捕捉键盘事件(dispatchKeyEvent)
5.3.4 回退事件(onBackPressed)
5.3.5 按键长按事件(onKeyLongPress)
5.3.6 屏幕触摸事件(onTouchEvent)
5.3.7 窗口获得焦点事件(onWindowFocusChanged)
5.4 在不同Activity之间传递数据
5.4.1 使用Intent传递数据
5.4.2 使用静态变量传递数据
5.4.3 使用剪贴板传递数据
5.4.4 使用全局对象传递数据
5.5 从Activity返回数据
5.6 视图(View)
5.6.1 视图简介
5.6.2 使用XML布局文件定义视图
5.6.3 在代码中控制视图
5.7 显示系统窗口
5.7.1 直接拨号
5.7.2 将电话号传入拨号程序
5.7.3 调用拨号程序
5.7.4 浏览网页
5.7.5 查看联系人
5.7.6 显示系统设置界面(设置主界面、Wi-Fi设置界面)
5.7.7 启动处理音频的程序
5.7.8 回到Home窗口(相当于按Home键)
5.8 与Activity相关的技巧与特效
5.8.1 全屏显示(隐藏标题栏和状态栏)
5.8.2 定制窗口标题栏
5.8.3 为程序添加Splash
5.8.4 改变窗口大小、位置和透明度
5.8.5 按两次关闭窗口
5.8.6 关闭所有的窗口
5.8.7 窗口截屏
5.9 小结

第6章 Intent与Intent Filter
6.1 Android系统的信使:Intent
6.2 Intent对象
6.2.1 Intent对象可以封装和传递哪些信息
6.2.2 组件名(Component name)
6.2.3 动作(Action)
6.2.4 种类(Category)
6.2.5 数据(Data)
6.2.6 附加数据(Extra)
6.2.7 标志(Flags)
6.3 显式和隐式访问窗口
6.4 跨应用程序访问窗口
6.5 Android系统的过滤机制大揭秘
6.5.1 过滤条件的设置
6.5.2 过滤器的筛选规则
6.5.3 示例:过滤机制应用演示
6.6 Android源代码与过滤器
6.6.1 系统内置程序有哪些窗口可以利用
6.6.2 显示计算器(Calculator)
6.6.3 用(Browser)显示网页
6.6.4 拨打电话(Phone)与授权
6.7 获取第三方程序中可调用的窗口
6.8 传递附加数据(Extra)
6.9 解析数据
6.10 小结

第7章 窗口(Activity)高级技术
7.1 Activity XML属性详解
7.1.1 设置Activity的基本信息
7.1.2 屏幕方向切换(android:screenOrientation)
7.1.3 阻止Activity销毁和重建(android:configChanges)
7.1.4 允许Activity被实例化(android:enabled)
7.1.5 在近应用列表中显示(android:excludeFromRecents)
7.1.6 允许其他程序访问当前窗口(android:exported)
7.1.7 硬件加速(android:hardwareAccelerated)
7.1.8 在多进程中创建窗口实例(android:multiprocess)
7.1.9 无法返回的Activity(android:noHistory)
7.1.10 指定要返回的窗口(android:parentActivityName)
7.1.11 使窗口受到权限的保护(android:permission)
7.1.12 改变窗口所在的进程(android:process)
7.1.13 不保存窗口的状态(android:stateNotNeeded)
7.1.14 窗口的主题(android:theme)
7.1.15 扩展窗口UI(android:uiOptions)
7.1.16 设置输入法显示模式(android:windowSoftInputMode)
7.2 深入探索Activity从创建到销毁的过程
7.2.1 任务(Task)与回退栈(Back Stack)
7.2.2 保存窗口(Activity)状态
7.2.3 管理任务和回退栈
7.2.4 Activity的4种创建模式
7.2.5 用Java代码设置窗口创建模式
7.2.6 窗口的乾坤大挪移(affinity)
7.2.7 销毁不再使用的窗口
7.3 Activity的别名
7.4 小结

第8章 布局
8.1 Android的五大布局
8.1.1 框架布局(FrameLayout)
8.1.2 线性布局(LinearLayout)
8.1.3 相对布局(RelativeLayout)
8.1.4 表格布局(TableLayout)
8.1.5 布局(AbsoluteLayout)
8.2 属性资源与Android命名空间
8.3 布局属性
8.4 布局高级技术
8.4.1 布局别名
8.4.2 重用布局
8.4.3 优化布局
8.4.4 动态装载布局
8.4.5 动态设置布局属性
8.4.6 从右到左布局(RTL Layout)
8.5 小结

第9章 菜单
9.1 菜单的基本用法
9.1.1 创建选项菜单(Options Menu)
9.1.2 关联Activity
9.1.3 响应菜单的单击动作
9.1.4 动态添加、修改和删除选项菜单
9.1.5 带复选框和选项按钮的子菜单
9.1.6 上下文菜单
9.1.7 菜单事件
9.1.8 从菜单资源中装载菜单
9.2 菜单特效
9.2.1 自定义菜单
9.2.2 模拟UCWeb菜单效果
9.3 小结

0章 Android的资源详解(一)
10.1 创建资源
10.1.1 手工创建资源文件
10.1.2 用ADT模板创建本地化图标资源
10.1.3 用ADT模板创建XML文件资源
10.2 使用资源
10.2.1 生成资源类文件(R.java)
10.2.2 从XML文件中访问资源
10.2.3 使用Java代码访问资源
10.2.4 Java反射技术与枚举资源
10.3 字符串(String)资源
10.3.1 普通字符串
10.3.2 字符串数组
10.3.3 复数字符串
10.3.4 在字符串中使用引号
10.3.5 用占位符格式化字符串
10.3.6 用HTML标签格式化字符串资源
10.4 值(values)资源
10.4.1 整数(Integer)资源
10.4.2 尺寸(Dimension)资源
10.4.3 布尔(Boolean)资源
10.4.4 颜色(Color)资源
10.4.5 ID资源
10.4.6 整数数组(Integer-Array)资源
10.4.7 类型数组(Typed-Array)资源
10.5 菜单(menu)资源
10.6 图像(drawable)资源
10.6.1 普通图像资源
10.6.2 XML图像资源
10.6.3 Nine-Patch图像资源
10.6.4 XML Nine-Patch图像资源
10.6.5 图层(Layer)资源
10.6.6 图像状态(State)资源
10.6.7 图像级别(Level)资源
10.6.8 淡入淡出(Cross-fade)资源
10.6.9 嵌入(Inset)图像资源
10.6.10 剪切(Clip)图像资源
10.6.11 外形(Shape)资源
10.7 小结

1章 Android的资源详解(二)
11.1 动画资源
11.1.1 属性(Property)动画
11.1.2 帧(Frame)动画
11.1.3 移动补间(TranslateTween)动画
11.1.4 循环向右移动的EditText与上下弹跳的球
11.1.5 缩放补间(Scale Tween)动画
11.1.6 跳动的心
11.1.7 旋转补间(Rotate Tween)动画
11.1.8 旋转的星系
11.1.9 透明度补间(Alpha Tween)动画
11.1.10 投掷炸弹
11.1.11 震动渲染器(Shake Interpolator)
11.1.12 自定义渲染器(Interpolator)
11.2 风格(Style)资源与主题(Theme)
11.3 小结

2章 资源的本地化
12.1 建立本地化的资源目录
12.2 资源目录的命名规则
12.3 建立别名资源
12.3.1 图像别名资源
12.3.2 布局别名资源
12.3.3 字符串别名资源
12.3.4 其他简单值别名资源
12.4 资源目录的优先级
12.5 屏幕适配
12.5.1 屏幕适配要考虑的因素
12.5.2 适配不同屏幕可以采用的规则
12.5.3 屏幕尺寸和屏幕密度
12.5.4 位置、尺寸和字体应使用屏幕密度单位
12.5.5 与屏幕适配有关的标识符
12.5.6 影响屏幕适配的重要因素:布局和图像
12.5.7 典型的屏幕适配案例
12.5.8 在Google Play上限制屏幕尺寸和屏幕密度
12.5.9 在Android模拟器上测试各种屏幕尺寸和密度
12.6 小结

3章 Android的控件详解(一)
13.1 显示文本的控件(TextView)<

深入探索Android的奇妙世界:从入门到精通 本书并非《Android开发指南(第2版)(附CD光盘1张) 9787115320339》的任何部分内容,而是为您精心打造的一本全新、独立的Android开发学习宝典。 在这个移动互联网浪潮席卷全球的时代,Android操作系统以其开放的平台、丰富的应用生态以及广泛的用户基础,成为了开发者们不可忽视的重要舞台。本书将带领您踏上一段精彩纷呈的Android开发之旅,从最基础的概念出发,逐步深入到各种高级主题和实战技巧,旨在帮助您构建出令人赞叹的Android应用程序。无论您是初次接触编程的新手,还是有一定开发经验希望转向Android领域的开发者,本书都能为您提供一条清晰的学习路径和坚实的理论基础。 本书结构精炼,内容充实,涵盖Android开发的核心要素: 第一部分:Android开发基础入门 搭建开发环境: 详细介绍Android Studio的安装与配置,包括SDK的下载、模拟器(Emulator)的创建与管理,以及Eclipse(仅作为历史参考,推荐主要学习Android Studio)的简要介绍,帮助您快速搭建起高效的开发工作站。我们将一步一步地指导您完成每一个配置步骤,确保您能顺利开始编码。 第一个Android应用: 从“Hello, World!”开始,引导您创建并运行您的第一个Android应用程序。您将了解Activity(活动)的概念,学习如何设计简单的用户界面(UI),并通过Logcat(日志输出)来调试代码,理解Activity的生命周期(Lifecycle),这是Android开发中最基本也是最核心的概念之一。 用户界面(UI)设计: 深入解析Android UI设计的两大基石:XML布局和Java/Kotlin代码。我们将全面介绍常用的UI组件,如`TextView`、`EditText`、`Button`、`ImageView`等,并讲解如何使用`LinearLayout`、`RelativeLayout`、`ConstraintLayout`等布局管理器来组织界面元素,实现响应式布局,确保您的应用在不同尺寸的屏幕上都能有良好的显示效果。您还将学习到Material Design设计规范,打造符合现代审美标准的UI。 事件处理: 学习如何响应用户的交互,例如按钮点击、文本输入等。我们将讲解事件监听器(Listener)的工作原理,以及如何通过代码将用户的操作转化为应用程序的响应,实现应用程序的动态交互性。 Activity生命周期详解: 深入剖析Activity在创建、启动、销毁等不同状态下的生命周期回调方法,理解`onCreate()`、`onStart()`、`onResume()`、`onPause()`、`onStop()`、`onDestroy()`等方法的调用顺序及其作用,掌握如何在生命周期的不同阶段进行数据保存和资源管理,避免内存泄漏等问题。 Intent(意图): 学习如何使用Intent在不同Activity之间进行导航和数据传递。我们将区分显式Intent(Explicit Intent)和隐式Intent(Implicit Intent),掌握如何启动其他应用组件,如Activity、Service、BroadcastReceiver,以及如何在Intent中携带各种类型的数据。 数据存储: 探讨Android平台提供的多种数据存储方式。我们将详细介绍Shared Preferences(共享参数)用于存储少量配置信息,SQLite数据库用于结构化数据存储,以及文件存储(内部存储和外部存储)的应用场景。您将学习如何使用`ContentProvider`来管理和共享数据,以及如何与系统的数据源进行交互。 第二部分:Android核心组件深入探索 Service(服务): 学习如何创建和管理后台运行的服务。我们将讲解Service的生命周期,如何启动和停止Service,以及如何通过AIDL(Android Interface Definition Language)实现进程间通信(IPC),为开发需要长时间运行或后台处理的任务的应用奠定基础。 BroadcastReceiver(广播接收器): 掌握如何响应系统广播和自定义广播。您将学习如何注册广播接收器,接收如网络状态变化、电池电量低等系统级别的广播,以及如何发送自定义广播,实现应用内或应用间的解耦通信。 ContentProvider(内容提供者): 深入理解ContentProvider的作用,它允许应用程序与其他应用程序共享数据。我们将学习如何创建自己的ContentProvider,以及如何查询、插入、更新和删除其他ContentProvider提供的数据,是实现数据共享和集成的关键。 Fragments(碎片): 学习Fragment的概念及其在构建灵活、响应式UI中的重要作用。我们将讲解Fragment的生命周期,如何在Activity中添加、移除和替换Fragment,以及如何实现Fragment之间的通信,特别是在平板电脑等大屏幕设备上构建多面板UI。 列表与网格: 掌握如何高效地展示大量数据,学习`ListView`和`GridView`的使用,以及更现代、更强大的`RecyclerView`。您将深入理解`Adapter`的设计模式,学习如何使用`ViewHolder`模式来优化列表的性能,实现平滑的滚动效果。 第三部分:Android高级特性与实战 多线程与异步处理: 学习如何在Android中进行多线程编程,避免阻塞UI线程导致ANR(Application Not Responding)错误。我们将介绍`AsyncTask`(已废弃,但理解原理很重要)、Handler、Message Queue、Thread、Runnable等概念,以及使用Kotlin Coroutines或Java的ExecutorService进行更现代化的异步处理。 网络通信: 学习如何让您的应用程序连接互联网,获取和发送数据。我们将详细介绍HTTP协议,常用的网络请求库如Retrofit、Volley,以及如何处理JSON、XML等数据格式,并讲解网络请求的最佳实践,包括数据缓存和错误处理。 后台任务与工作调度: 探索Android提供的多种后台任务执行机制,包括`WorkManager`,用于处理可延迟、可约束的后台任务,确保在网络可用、设备充电等条件下可靠地执行。 权限管理: 学习Android的运行时权限模型,理解不同权限的作用,以及如何在应用程序中正确地请求和处理用户授予的权限,保障用户隐私和应用安全。 通知(Notifications): 掌握如何向用户发送重要通知,吸引用户注意力。我们将讲解Notification的创建、管理,以及如何使用Notification Channels(通知渠道)来对通知进行分类和管理,提升用户体验。 图形与动画: 学习如何在Android中实现自定义绘图和动画效果。我们将介绍Canvas绘图API,属性动画(Property Animation),以及如何使用Transition API来创建流畅的UI过渡动画。 传感器与硬件交互: 探索如何利用Android设备的各种传感器,如加速度计、陀螺仪、GPS等,为您的应用程序增加更丰富的交互功能。 Jetpack组件概览: 介绍Android Jetpack,一套可以简化Android开发流程的库、工具和指南。我们将对ViewModel、LiveData、Room Persistence Library、Navigation Component等核心Jetpack组件进行概览性介绍,帮助您了解如何利用这些强大的工具提高开发效率和应用质量。 第四部分:应用发布与最佳实践 构建与打包: 学习如何使用Gradle构建您的Android项目,生成APK(Android Package)或App Bundle文件,并了解签名(Signing)的重要性。 应用商店发布: 指导您如何准备和提交应用程序到Google Play Store或其他应用商店,包括撰写应用描述、准备截图、设置定价等。 代码质量与测试: 强调编写高质量代码的重要性,介绍单元测试(Unit Testing)、集成测试(Integration Testing)和UI测试(UI Testing)的基本概念和方法,以及如何使用JUnit、Mockito等工具来保证代码的健壮性。 性能优化与调试技巧: 分享提升应用性能的常用技巧,如内存优化、CPU优化,以及更高级的调试工具和方法,帮助您定位和解决应用中的性能瓶颈。 本书特色: 循序渐进的学习曲线: 从最基础的概念入手,逐步深入,确保初学者能够轻松理解并跟上进度。 理论与实践相结合: 每个概念都配有清晰的代码示例,方便您动手实践,加深理解。 内容全面且前沿: 涵盖了Android开发所需的核心知识点,并关注最新的技术发展和最佳实践。 语言通俗易懂: 避免使用过于晦涩的术语,力求用最清晰、简洁的语言解释复杂的概念。 注重解决实际问题: 结合常见的开发场景和挑战,提供实用的解决方案和建议。 通过本书的学习,您将能够: 熟练掌握Android Studio开发环境。 独立设计和实现各种Android用户界面。 理解并应用Android四大组件(Activity, Service, BroadcastReceiver, ContentProvider)的工作原理。 掌握数据存储、网络通信、后台任务处理等核心开发技能。 构建功能丰富、用户体验良好的Android应用程序。 为进一步深入Android开发领域打下坚实的基础。 Android开发的世界充满无限可能,本书将是您探索这个奇妙世界的最佳伙伴。现在就开始您的Android开发之旅吧!

用户评价

评分

《Android开发指南(第2版)》给我最大的感受就是它的“实用性”。我是一名有着两年Android开发经验的开发者,在工作中经常会遇到一些比较棘手的问题,比如性能优化、多线程处理、复杂UI布局的实现等等。很多时候,即使查阅了官方文档,也未必能找到直接的解决方案。这本书的出现,就像在迷雾中点亮了一盏灯。它不仅仅是理论知识的堆砌,更重要的是提供了大量贴合实际开发场景的代码示例和解决方案。

评分

我一直觉得,一本好的技术书籍,不仅仅是知识的传递,更应该是一种思维的启迪。在阅读《Android开发指南(第2版)》的过程中,我深刻体会到了这一点。作者在讲解每一个知识点的时候,不仅仅是告诉你“怎么做”,更重要的是告诉你“为什么这么做”,以及在不同的场景下,有哪些不同的选择和考量。这种深入的剖析,能够帮助我从更宏观的角度去理解Android的运行机制和设计理念,而不仅仅是停留在“知其然”的层面。

评分

说实话,我一开始对这本书的期望值并不是很高。毕竟,Android开发这个领域更新换代太快了,一本新书可能在发布不久后就显得有些滞后。我更倾向于直接阅读最新的官方文档或者一些高质量的在线教程。然而,《Android开发指南(第2版)》这本书却给了我一个惊喜。它在内容的深度和广度上都做得相当不错,而且在保持技术前沿性的同时,也没有忽略掉一些基础但同样重要的概念。

评分

拿到这本《Android开发指南(第2版)》的时候,我其实是抱着一种既期待又略带忐忑的心情。期待是因为我对Android开发的热情从未减退,希望这本书能够为我打开新的视野,解决我在实际开发中遇到的瓶颈。而忐忑,则是因为市面上的Android开发书籍良莠不齐,很多都存在内容陈旧、讲解生硬、缺乏实操性的问题。然而,当我翻开第一页,那种严谨细致的排版和清晰流畅的语言,瞬间打消了我大部分的顾虑。这本书的章节划分非常合理,从最基础的概念讲起,循序渐进地引导读者进入Android开发的复杂世界。

评分

这次入手《Android开发指南(第2版)》纯属偶然,当时在书店里闲逛,无意中瞥见了它。封面上“第2版”的字样让我眼前一亮,因为我之前接触过一些Android开发书籍,总觉得内容更新得不够及时,而“第2版”意味着作者可能对内容进行了更新和优化,这一点对我来说至关重要,毕竟Android技术的更新迭代速度非常快。拿到手里,书的厚度适中,拿在手上感觉很扎实,不像有些书那样轻飘飘的。

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.cndgn.com All Rights Reserved. 新城书站 版权所有