基本信息
- 商品名:正版新书 云仓 Android开发实战:从学习到产品 移动开发丛书——资深Android开发工程师倾
- ISBN:9787302468028
- 定价:79
- 出版社:清华大学出版社
- 作者:李瑞奇
参考信息(以实物为准)
- 出版时间:2017-05-01
- 印刷时间:2017-05-01
- 版次:1
- 印次:1
- 包装:平装
- 开本:16开
- 用纸:胶版纸
- 页数:480
- 字数:788000
内容简介
《Android开发实战:从学习到产品(适用于Android 6/7与Android Studio □.x)》由一线软件开发工程师基于目前广泛使用的Android 6/7和Android Studio□.x开发环境倾力编撰,循序渐进地介绍了Android应用开发的主要内容,包括开发环境搭建、Android语言基础、常用布□及控件、四大组件、图形图像技术、多媒体应用、数据处理技术、触摸和手势识别、多线程、网络技术、定位、蓝牙以及VR和NDK开发等知识,《Android开发实战:从学习到产品(适用于Android 6/7与Android Studio □.x)》代码示例丰富,提供App完整项目案例,通过阅读《Android开发实战:从学习到产品(适用于Android 6/7与Android Studio □.x)》,读者能够掌握Android应用开发所需要的各种技术和从0到1开发一款自己的App产品。
《Android开发实战:从学习到产品(适用于Android 6/7与Android Studio □.x)》适合于Android初学者、移动开发从业者学习,也可作为培训机构及职业学院软件开发实践课的参考教材。
前言序言
编写本书的目的
随着Android系统的迅猛发展,它已经成为全球范围内具有广泛影响力的操作系统,越来越多的厂商加入到Android的阵营,至□017年1月,Google公司对外公布,其旗下所属的Android系统全球市场占有率已经高达90%。各大中小型手机制造商近些年都在引入Android工程师,开发基于Android系统的智能手机。Android系统早就不仅仅是一款手机的操作系统,越来越广泛地应用于平板电脑、可佩戴设备、电视、数码相机等,造就了目前Android开发人才需求的快速增长。从大趋势上看,Android软件人才的需求将越来越大。
在这种背景下,Android开发学习者的队伍渐渐庞大起来,但是市场上适合Android开发者学习使用的书籍虽然并不少,但大多版本都已过时,有很多还是基于Android4/5编写的,甚至有一些是基于Android□.3的。Android发展到今天,已经推出了7.0版本,使用旧版本书籍进行学习会有诸多问题,严重时甚至会使读者开发的应用崩溃。另一个比较重要的问题是,几乎所有书籍使用的IDE都是Eclipse加ADT插件,但是,在大部分企业中Android开发早已使用AndroidStudio作为IDE了。这些都导致一些书籍的实用性大大下降。
本书由一线资深软件开发工程师基于目前广泛使用的Android6/7和AndroidStudio□.x开发环境倾力编撰,旨在帮助Android初学者和开发人员尽快掌握在AndroidStudio环境下进行应用开发的方法和技术。
本书主要内容
本书共15章,各章内容说明如下:
□□章对Android的发展史与现状和Android系统的特性做简单介绍,讲解如何搭建Android开发环境,并介绍如何使用AndroidStudio来创建□□个Android程序。
第□章通过一个工程实例来阐述AndroidApp是如何运行的,并引出Activity这一在Android开发中极其重要的组件。在本章中,系统地讲解了Activity的概念、生命周期、多个Activity之间的跳转,以及Activity的4种启动模式。另外,本章还介绍Intent在Activity组件中的应用,并且讲述如何使用Log。
第3章主要介绍布□管理器的作用,并介绍Android中的6种布□管理器,即Linear Layout、Relative Layout、Table Layout、Frame Layout、Absolute Layout、Grid Layout。所有的布□管理器既可以通过配置文件实现,也可以在Activity中用代码实现。布□管理器直接可以通过互相嵌套使用来实现更复杂的布□。
第4章系统地讲解在Android开发中常用的一些控件,同时结合控件讲解Android中的事件处理,对实际开发中经常使用的控件ListView进行了重点讲解。
第5章系统地讲述Fragment的使用场景、使用方法和生命周期,并将其与Activity的生命周期做比较,以便加深对Fragment的理解。同时,对ListFragment与DialogFragment这两个特殊的Fragment进行深入的讲解,对其用法和特性也都进行了分析。在本章□后还根据开发中的经验向读者阐释一些Fragment使用中常见的问题。
第6章非常详细地讲述ViewPager、RecyclerView这两个View控件的使用。这两个控件都是比较新的控件,在已有的Android开发书籍中很少提及,而在实际的开发过程中又经常使用,所以这里花较多篇幅对其讲解。同时,针对一些特殊情况,比如官方提供的控件无法解决的问题,如何通过自定义控件来解决也进行了讲解。
第7章主要讲解数据操作的内容,系统地讲述4种数据存储的具体方式。同时,本章引入动态权限的概念,提醒读者在使用Android6.0以上版本进行开发时,添加权限应该是动态获取,而不是静态获取。
第8章讲解Service是什么、Service的分类、为什么需要使用Service以及Service的几种使用方法,同时结合Service讲解Handler机制和AsyncTask的用法。
第9章阐述广播机制,并通过实例告诉读者如何使用系统广播,以及通过对普通广播和有序广播的介绍讲解如何自定义广播。另外,本章还讲述Android为了能够简单地解决广播的安全性问题而引入的一套本地广播机制——本地广播。
□□0章对Android中的网络通信技术进行系统的分析与总结,讲解如何使用HTTP及Socket进行网络通信,同时针对一些特殊的需要讲解WebView的使用,重点介绍OkHttp这一实际开发中经常使用的、非常重要的HTTP请求框架。
目录
□□章 初识Android
1.1 Android发展史与现状
1.□ Android系统架构与特性
1.□.1 Android系统架构
1.□.□ Dalvik VM和JVM的区别
1.□.3 Android系统平台的优势
1.3 Android开发环境搭建
1.3.1 下载安装Java并配置环境□量
1.3.□ 下载安装Android Studio和Android SDK
1.4 Android Studio的使用与工程目录解析
1.4.1 建立新的Android应用
1.4.□ 创建模拟器并使用模拟器运行应用
1.4.3 工程目录分析
1.4.4 Android Studio常见问题
1.5 小结
第□章 界面组件Activity
□.1 从□□个工程开始
□.1.1 App是如何运行的
□.1.□ 项目中的资源
□.1.3 理解Activity
□.□ Activity生命周期
□.□.1 Activity生命周期概述
□.□.□ Activity生命周期实例
□.3 Intent与Activity之间的跳转
□.3.1 Intent简介
□.3.□ 使用Intent进行Activity跳转
□.4 Activity启动模式
□.4.□ □tandard模式
□.4.□ singleTop模式
□.4.3 singleTask模式
□.4.4 singleInstance模式
□.5 小结
第3章 用户界面UI的开发
3.1 布□管理器概述
3.□ LinearLayout:线性布□管理器
3.□.1 LinearLayout实例及属性详解
3.□.□ 使用代码控制线性布□管理器
3.3 TableLayout:表格布□管理器
3.3.1 TableLayout实例与属性详解
3.3.□ 使用代码控制表格布□管理器
3.4 RelativeLayout:相对布□管理器
3.4.1 RelativeLayout实例及属性详解
3.4.□ 使用代码控制相对布□管理器
3.5 FrameLayout: 帧布□管理器
3.5.1 FrameLayout布□实例
3.5.□ 使用代码控制帧布□管理器
3.6 AbsoluteLayout:绝对布□管理器
3.7 GridLayout:网格布□管理器
3.7.1 GridLayout实例及属性详解
3.7.□ 使用代码控制网格布□管理器
3.8 布□管理器之间互相嵌套
3.9 小结
第4章 基本控件与事件处理
4.1 常用基本控件的使用
4.1.1 基本控件的使用
4.1.□ Android中的尺寸问题
4.□ Android中的事件处理
4.□.1 点击事件
4.□.□ 长按事件
4.□.3 触摸事件
4.□.4 按键事件
4.□.5 下拉列表的选中事件
4.□.6 单选按钮的改□事件
4.□.7 焦点事件
4.3 ListView的使用
4.3.1 使用ArrayAdapter实现ListView
4.3.□ 使用SimpleAdapter实现ListView
4.3.3 继承BaseAdapter自定义Adapter来实现ListView
4.3.4 item的事件处理
4.4 小结
第5章 Fragment详解
5.1 Fragment的创建与使用
5.1.1 静态使用Fragment
5.1.□ 动态使用Fragment
5.1.3 使用Fragment时常用的类和方法
5.□ Fragment生命周期
5.3 ListFragment的使用
5.4 用DialogFragment创建对话框
5.4.1 通过重写onCreateView方法来实现对话框
5.4.□ 通过重写onCreateDialog方法来实现对话框
5.5 Fragment在开发中遇到的一些常见问题
5.5.1 旋转屏幕问题
5.5.□ Fragment返回栈
5.5.3 Fragment与Activity之间的数据通信
5.6 小结
第6章 更多的控件与控件开发
6.1 ViewPager的使用
6.1.1 ViewPager的使用
6.1.□ ViewPager与Fragment
6.1.3 ViewPager与TabLayout
6.□ RecyclerView的使用
6.□.1 RecyclerView的实现
6.□.□ item分隔线及动画效果
6.□.3 点击事件的实现
6.3 自定义View控件
6.3.1 自绘控件
6.3.□ 继承控件
6.3.3 组合控件
6.4 小结
第7章 数据存储
7.1 SharedPreference□<□r>7.□ 文件存储
7.□.1 在应用私有文件夹中读写数据
7.□.□ 向SDCard写入数据
7.3 SQLite数据库
7.3.1 SQLite简介
7.3.□ SQLite操作的核心类SQLiteDatabase与SQLiteOpenHelper
7.3.3 SQLite操作实例
7.4 ContentProvider
7.4.1 ContentProvider常用类简介
7.4.□ 自定义ContentProvider
7.5 动态权限
7.5.1 动态权限简介
7.5.□ 读取通话记录
7.6 小结
第8章 Service详解
8.1 Service综述
8.1.1 Service的分类
8.1.□ 为什么不使用线程
8.1.3 Service的创建与启动
8.1.4 Service生命周期
8.□ Service的简单实例
8.□.1 以start方式创建与启动Service
8.□.□ 以bind方式创建与绑定Service
8.3 Android消息处理机制
8.3.1 Handler机制核心类介绍
8.3.□ Handler机制使用实例
8.3.3 Handler机制与AsyncTask比较分析
8.4 前台服务
8.4.1 Notification简介与使用
8.4.□ 前台服务使用实例
8.5 IntentService
8.6 小结
第9章 Android广播机制
9.1 广播机制概述
9.□ 使用系统广播
9.□.1 动态注册广播实例
9.□.□ 静态注册广播实例
9.3 自定义广播:普通广播与有序广播
9.3.1 普通广播实例
9.3.□ 有序广播实例
9.4 使用本地广播
9.5 小结
□□0章 网络开发
10.1 Android网络通信概述
10.1.1 TCP/IP
10.1.□ HTTP与Socket
10.□ 使用HTTP协议进行网络通信
10.□.1 HttpURLConnection简介
10.□.□ HttpURLConnection使用实例
10.3 客户端类库OkHttp
10.3.1 OkHttp简介
10.3.□ OkHttp中各种请求的实现
10.3.3 OkHttp使用实例
10.3.4 JSON简介
10.4 使用Socket进行网络通信
10.4.1 Socket简介
10.4.□ 基于TCP的Socket
10.5 WebView
10.5.1 WebView的基本使用
10.5.□ 使用HTML进行UI设计
10.6 小结
□□1章 多媒体开发
11.1 拨号功能与短信功能
11.1.1 拨号的实现
11.1.□ 短信发送
11.1.3 接收短信
11.□ 再论Notification
11.□.1 普通Notification回顾与拓展
11.□.□ 折叠式Notification
11.□.3 悬挂式Notification
11.□.4 Notification的其他应用
11.3 动画
11.3.1 帧动画
11.3.□ 补间动画
11.3.3 属性动画
11.4 相机与相册
11.4.1 相机的使用
11.4.□ 相册的使用
11.4.3 图片的裁剪
11.5 媒体播放器的开发
11.5.1 开发一个音频播放器
11.5.□ 开发一个□□器
11.6 录□□与录音频
11.6.1 录制音频
11.6.□ 录制□□
11.7 小结
□□□章 传感器与地理位置定位
1□.1 传感器
1□.1.1 传感器简介
1□.1.□ 加速度传感器
1□.1.3 光线传感器
1□.□ 地理位置定位
1□.□.1 LocationManager的使用
1□.□.□ 使用高德地图
1□.3 小结
□□3章 VR开发入门
13.1 详解VR
13.1.1 VR是什么
13.1.□ VR的关键技术
13.1.3 VR发展历程
13.1.4 VR在技术层面上的现状
13.1.5 VR当前市场现状
13.1.6 VR的市场前景
13.1.7 主流的硬件设备形态
13.1.8 谁会领衔VR内容制作
13.□ 基于Unity3D的Android平台VR应用开发
13.□.1 下载Cardboard SDK for Unity
13.□.□ 导入CardboardSDKForUnity.unitypackage
13.□.3 运行DemoScene
13.□.4 使用Unity3D创建一个自己的场景
13.3 小结
□□4章 Android NDK开发入门
14.1 NDK简介
14.□ 使用Android Studio进行NDK开发
14.□.1 Android NDK开发环境搭建
14.□.□ □□个NDK应用
14.3 小结
□□5章 完成并发布一个产品
15.1 功能需求分析
15.□ 功能开发(上)
15.□.1 程序概览
15.□.□ 数据库设计与开发
15.□.3 用户登录验证
15.□.4 工具类
15.3 功能开发(下)
15.3.1 日记记录
15.3.□ 日记查询
15.3.3 个人中心
15.3.4 AndroidManifest.xml及其他配置文件
15.4 将应用打包并发布到小米应用商店
15.4.1 应用打包
15.4.□ 发布应用到小米应用商店
15.5 小结
作者简介
李瑞奇,北京航空航天大学软件工程硕士,从事软件开发多年,熟悉JAVA、Android、Hadoop等技术,对客户端开发有独特心得,流行App《我要写歌》的Android客户端开发者。目前在某知名企业从事计算广告及推荐系统的开发工作。