- 网页设计
- 整站网页设计
- 网站模板设计
- 网站开发
- 综合门户网开发
- 企业网站开发
- 电子商务网站开发
- 资讯网站开发
- 团购网站开发
- 手机网站开发
- 宣传展示网站
- 网站功能开发
- 网站特效制作
- 应用软件开发
- 手机应用软件
- 计算机应用软件
- 软件美工
- 程序修改
- 仿网站开发
- 脚本插件
- 软件测试
- 网站改版
- 企业办公系统
- 软件汉化
- 软件界面皮肤
- 企业办公系统界面
- 应用移植
- Android开发
- IOS开发
- 应用汉化
- 安卓系统定制
- 网店装修
现货正版包邮 第一行代码 Android 第2版郭霖 Android7.0开发 studio 手机app开发安卓从入门到精通开发编程教程书籍jsl人邮.
- 产品名称:第一行代码Android
- 是否是套装:否
- 书名:第一行代码Android
- 定价:79.00元
- 出版社名称:人民邮电出版社
- 出版时间:2014年8月
- 作者:郭霖
- 作者地区:中国大陆
- 书名:第一行代码Android
基本信息
书名:第一行代码 Android 第2版
原价:79.(咨询特价)
作者:郭霖
出版社:人民邮电出版社
出版日期:2016-(咨询特价)
ISBN(咨询特价)
字数:(咨询特价)
页码:570
版次:2
装帧:平装
开本:16开
商品标识
- CSDN超人气博主、CSDN十大博客之星、Android开发者郭霖力作
- 基于Android 7.0、Android Studio 2.2全新升级
- Android初学者入门,Android开发者进阶
- 涵盖Material Design、运行时权限、RecyclerView、百分比布局等全新特性
- 首版重印数十次,经典畅销,好评如潮,以超高质量的内容赢得了开发者的广泛认可,被誉为Android学习经典书
第1章 开始启程——你的第一行Android代码 1 |
1.1 了解全貌——Android王国简介 2 |
1.1.1 Android系统架构 2 |
1.1.2 Android已发布的版本 3 |
1.1.3 Android应用开发特色 4 |
1.2 手把手带你搭建开发环境 5 |
1.2.1 准备所需要的工具 5 |
1.2.2 搭建开发环境 5 |
1.3 创建你的第一个Android项目 9 |
1.3.1 创建HelloWorld项目 9 |
1.3.2 启动模拟器 12 |
1.3.3 运行HelloWorld 15 |
1.3.4 分析你的第一个Android程序 16 |
1.3.5 详解项目中的资源 22 |
1.3.6 详解build.gradle文件 23 |
1.4 前行必备——掌握日志工具的使用 26 |
1.4.1 使用Android的日志工具Log 26 |
1.4.2 为什么使用Log而不使用System.out 27 |
1.5 小结与点评 29 |
第2章 先从看得到的入手——探究活动 30 |
2.1 活动是什么 30 |
2.2 活动的基本用法 30 |
2.2.1 手动创建活动 31 |
2.2.2 创建和加载布局 32 |
2.2.3 在AndroidManifest文件中注册 35 |
2.2.4 在活动中使用Toast 37 |
2.2.5 在活动中使用Menu 38 |
2.2.6 销毁一个活动 40 |
2.3 使用Intent在活动之间穿梭 41 |
2.3.1 使用显式Intent 41 |
2.3.2 使用隐式Intent 44 |
2.3.3 更多隐式Intent的用法 46 |
2.3.4 向下一个活动传递数据 50 |
2.3.5 返回数据给上一个活动 51 |
2.4 活动的周期 53 |
2.4.1 返回栈 53 |
2.4.2 活动状态 54 |
2.4.3 活动的生存期 55 |
2.4.4 体验活动的周期 56 |
2.4.5 活动被回收了怎么办 62 |
2.5 活动的启动模式 63 |
2.5.1 standard 64 |
2.5.2 singleTop 65 |
2.5.3 singleTask 67 |
2.5.4 singleInstance 68 |
2.6 活动的最佳实践 71 |
2.6.1 知晓当前是在哪一个活动 71 |
2.6.2 随时随地退出程序 72 |
2.6.3 启动活动的最佳写法 74 |
2.7 小结与点评 75 |
第3章 软件也要拼脸蛋——UI开发的点点滴滴 76 |
3.1 如何编写程序界面 76 |
3.2 常用控件的使用方法 77 |
3.2.1 TextView 77 |
3.2.2 Button 80 |
3.2.3 EditText 82 |
3.2.4 ImageView 86 |
3.2.5 ProgressBar 88 |
3.2.6 AlertDialog 91 |
3.2.7 ProgressDialog 93 |
3.3 详解4种基本布局 94 |
3.3.1 线性布局 94 |
3.3.2 相对布局 100 |
3.3.3 帧布局 103 |
3.3.4 百分比布局 105 |
3.4 系统控件不够用?创建自定义控件 108 |
3.4.1 引入布局 109 |
3.4.2 创建自定义控件 111 |
3.5 最常用和最难用的控件——ListView 113 |
3.5.1 ListView的简单用法 114 |
3.5.2 定制ListView的界面 115 |
3.5.3 提升ListView的运行效率 119 |
3.5.4 ListView的点击事件 120 |
3.6 更强大的滚动控件——RecyclerView 122 |
3.6.1 RecyclerView的基本用法 122 |
3.6.2 实现横向滚动和瀑布流布局 125 |
3.6.3 RecyclerView的点击事件 130 |
3.7 编写界面的最佳实践 132 |
3.7.1 制作Nine-Patch图片 132 |
3.7.2 编写精美的聊天界面 135 |
3.8 小结与点评 141 |
第4章 平板要兼顾——探究碎片 142 |
4.1 碎片是什么 142 |
4.2 碎片的使用方式 144 |
4.2.1 碎片的简单用法 144 |
4.2.2 动态添加碎片 147 |
4.2.3 在碎片中模拟返回栈 150 |
4.2.4 碎片和活动之间进行通信 151 |
4.3 碎片的周期 151 |
4.3.1 碎片的状态和回调 151 |
4.3.2 体验碎片的周期 153 |
4.4 动态加载布局的技巧 156 |
4.4.1 使用限定符 156 |
4.4.2 使用最小宽度限定符 159 |
4.5 碎片的最佳实践——一个简易版的新闻应用 160 |
4.6 小结与点评 169 |
第5章 全局大喇叭——详解广播机制 170 |
5.1 广播机制简介 170 |
5.2 接收系统广播 171 |
5.2.1 动态注册监听网络变化 171 |
5.2.2 静态注册实现开机启动 174 |
5.3 发送自定义广播 177 |
5.3.1 发送标准广播 177 |
5.3.2 发送有序广播 179 |
5.4 使用本地广播 183 |
5.5 广播的最佳实践——实现强制下线功能 185 |
5.6 Git时间——初识版本控制工具 192 |
5.6.1 安装Git 192 |
5.6.2 创建代码仓库 193 |
5.6.3 提交本地代码 195 |
5.7 小结与点评 195 |
第6章 数据存储全方案——详解持久化技术 196 |
6.1 持久化技术简介 196 |
6.2 文件存储 197 |
6.2.1 将数据存储到文件中 197 |
6.2.2 从文件中读取数据 201 |
6.3 SharedPreferences存储 203 |
6.3.1 将数据存储到SharedPreferences中 203 |
6.3.2 从SharedPreferences中读取数据 206 |
6.3.3 实现记住密码功能 208 |
6.4 SQLite数据库存储 211 |
6.4.1 创建数据库 211 |
6.4.2 升级数据库 216 |
6.4.3 添加数据 219 |
6.4.4 更新数据 222 |
6.4.5 删除数据 224 |
6.4.6 查询数据 225 |
6.4.7 使用SQL操作数据库 228 |
6.5 使用LitePal操作数据库 229 |
6.5.1 LitePal简介 229 |
6.5.2 配置LitePal 230 |
6.5.3 创建和升级数据库 231 |
6.5.4 使用LitePal添加数据 236 |
6.5.5 使用LitePal更新数据 237 |
6.5.6 使用LitePal删除数据 240 |
6.5.7 使用LitePal查询数据 241 |
6.6 小结与点评 243 |
第7章 跨程序共享数据——探究内容提供器 244 |
7.1 内容提供器简介 244 |
7.2 运行时权限 245 |
7.2.1 Android权限机制详解 245 |
7.2.2 在程序运行时申请权限 249 |
7.3 访问其他程序中的数据 254 |
7.3.1 ContentResolver的基本用法 254 |
7.3.2 读取系统 256 |
7.4 创建自己的内容提供器 260 |
7.4.1 创建内容提供器的步骤 261 |
7.4.2 实现跨程序数据共享 265 |
7.5 Git时间——版本控制工具进阶 275 |
7.5.1 忽略文件 275 |
7.5.2 查看修改内容 276 |
7.5.3 撤销未提交的修改 278 |
7.5.4 查看提交记录 279 |
7.6 小结与点评 280 |
第8章 丰富你的程序——运用多媒体 281 |
8.1 将程序运行到上 281 |
8.2 使用通知 283 |
8.2.1 通知的基本用法 283 |
8.2.2 通知的进阶技巧 289 |
8.2.3 通知的高级功能 291 |
8.3 调用摄像头和相册 293 |
8.3.1 调用摄像头拍照 294 |
8.3.2 从相册中选择照片 298 |
8.4 播放多媒体文件 303 |
8.4.1 播放音频 303 |
8.4.2 播放视频 307 |
8.5 小结与点评 311 |
第9章 看看精彩的世界——使用网络技术 312 |
9.1 WebView的用法 312 |
9.2 使用HTTP协议访问网络 314 |
9.2.1 使用HttpURLConnection 315 |
9.2.2 使用OkHttp 319 |
9.3 解析XML格式数据 321 |
9.3.1 Pull解析方式 324 |
9.3.2 SAX解析方式 326 |
9.4 解析JSON格式数据 329 |
9.4.1 使用JSONObject 330 |
9.4.2 使用GSON 331 |
9.5 网络编程的最佳实践 334 |
9.6 小结与点评 338 |
第10章 后台默默的劳动者——探究服务 339 |
10.1 服务是什么 339 |
10.2 Android多线程编程 340 |
10.2.1 线程的基本用法 340 |
10.2.2 在子线程中更新UI 341 |
10.2.3 解析异步消息处理机制 345 |
10.2.4 使用AsyncTask 347 |
10.3 服务的基本用法 349 |
10.3.1 定义一个服务 349 |
10.3.2 启动和停止服务 352 |
10.3.3 活动和服务进行通信 355 |
10.4 服务的周期 359 |
10.5 服务的更多技巧 359 |
10.5.1 使用前台服务 359 |
10.5.2 使用IntentService 361 |
10.6 服务的最佳实践——完整版的下载示例 365 |
10.7 小结与点评 378 |
第11章 Android特色开发——基于位置的服务 379 |
11.1 基于位置的服务简介 379 |
11.2 申请API Key 380 |
11.3 使用百度定位 384 |
11.3.1 准备LBS SDK 384 |
11.3.2 确定自己位置的经纬度 386 |
11.3.3 选择定位模式 391 |
11.3.4 看得懂的位置信息 393 |
11.4 使用百度地图 395 |
11.4.1 让地图显示出来 395 |
11.4.2 移动到我的位置 397 |
11.4.3 让“我”显示在地图上 400 |
11.5 Git时间——版本控制工具的高级用法 402 |
11.5.1 分支的用法 403 |
11.5.2 与远程版本库协作 404 |
11.6 小结与点评 406 |
第12章 最佳的UI体验——MaterialDesign实战 407 |
12.1 什么是Material Design 407 |
12.2 Toolbar 408 |
12.3 滑动菜单 415 |
12.3.1 DrawerLayout 415 |
12.3.2 NavigationView 418 |
12.4 悬浮按钮和可交互提示 423 |
12.4.1 FloatingActionButton 424 |
12.4.2 Snackbar 427 |
12.4.3 CoordinatorLayout 428 |
12.5 卡片式布局 430 |
12.5.1 CardView 431 |
12.5.2 AppBarLayout 437 |
12.6 下拉刷新 440 |
12.7 可折叠式标题栏 443 |
12.7.1 CollapsingToolbarLayout 443 |
12.7.2 充分利用系统状态栏空间 453 |
12.8 小结与点评 456 |
第13章 继续进阶——你还应该掌握的高级技巧 457 |
13.1 全局获取Context的技巧 457 |
13.2 使用Intent传递对象 461 |
13.2.1 Serializable方式 461 |
13.2.2 Parcelable方式 463 |
13.3 定制自己的日志工具 464 |
13.4 调试Android程序 466 |
13.5 创建定时任务 469 |
13.5.1 Alarm机制 469 |
13.5.2 Doze模式 471 |
13.6 多窗口模式编程 472 |
13.6.1 进入多窗口模式 473 |
13.6.2 多窗口模式下的周期 475 |
13.6.3 禁用多窗口模式 479 |
13.7 Lambda表达式 481 |
13.8 总结 485 |
第14章 进入实战——开发酷欧天气 486 |
14.1 功能需求及技术可行性分析 486 |
14.2 Git时间——将代码托管到GitHub上 489 |
14.3 创建数据库和表 494 |
14.4 遍历全国省市县数据 499 |
14.5 显示天气信息 509 |
14.5.1 定义GSON实体类 509 |
14.5.2 编写天气界面 514 |
14.5.3 将天气显示到界面上 520 |
14.5.4 获取必应每日一图 526 |
14.6 手动更新天气和切换城市 532 |
14.6.1 手动更新天气 532 |
14.6.2 切换城市 535 |
14.7 后台自动更新天气 540 |
14.8 修改图标和名称 542 |
14.9 你还可以做的事情 543 |
第15章 最后一步——将应用发布到360应用商店 545 |
15.1 生成正式签名的APK文件 545 |
15.1.1 使用Android Studio生成 546 |
15.1.2 使用Gradle生成 548 |
15.1.3 生成多渠道APK文件 551 |
15.2 申请360开发者账号 554 |
15.3 发布应用程序 556 |
15.4 嵌入广告进行盈利 560 |
15.4.1 注册腾讯广告联盟账号 560 |
15.4.2 新建媒体和广告位 562 |
15.4.3 接入广告SDK 564 |
15.4.4 重新发布应用程序 569 |
15.5 结束语 570 |
虽然我从事Android开发工作已经很多年了,但是之前从来没有想过自己要去写一本Android技术相关的书。在我看来,写一本书可以算是一个很庞大的工程,写一本好书的难度并不亚于开发一款好的应用程序。
由于我长期坚持在CSDN上发表技术博文,因而得到了大量网友的认可,也积累了一定的名气。很荣幸的是,人民邮电出版社图灵公司的前副总编辑陈冰老师上了我,希望我可以写一本关于Android开发技术的书,这着实让我受宠若惊。
在写本书第1版的时候,我可以说是费了相当大的心思。写书和写博客最大的区别在于,书的内容不能像博客那样散乱,不能想到哪里写到哪里,而是一定要系统化,要循序渐进,基本上在写第1章的时候就应该把全书的内容都确定下来了。
令我非常欣慰的是,本书的第1版在推出之后获得了广大读者的强烈认可,在短短两年时间内,已经成为了国内最畅销的Android技术书。各大书店、图书馆都能看到《第一行代码》的身影,许多学校和培训机构也纷纷将《第一行代码》选为Android课程的教材。
不过,在科技高速发展的今天,各种技术的发展都是日新月异的。在两年的时间里,Android操作系统经历了5.0、6.0、7.0的飞速升级。不可否认的是,本书第1版中的不少知识点都已经过时,而且这两年间出现的很多新知识,第1版中也没有涵盖。因此,这让我坚定了写作本书第2版的想法。
刚开始写的时候,我以为只是小修小补,但事实上并没有我想象得那么轻松。除了介绍新知识点以外,书中之前的所有项目都需要重新编写和测试,以保证代码在新老系统上的兼容性。另外,由于Android从5.0系统开始,UI风格变化很大,因此第1版中所有的截图都需要更新。毫不夸张地说,我几乎重写了整本书。
而现在,你手中捧着的正是全新版的《第一行代码》,同时这也竖内第一本基于Android 7.0系统写作的技术书。我真诚地希望你可以用心去阅读这本书,因为每多掌握一份知识,你就会多一份喜悦。Enjoy it!
第2版的变化
由于第2版修改内容繁多,因此这里我只列举出最主要的变化。首先是开发工具上的改变,本书第1版使用的开发工具是Eclipse,而第2版使用了目前最新的Android Studio 2.2版本。另外,本书第1版是基于Android 4.x系统的,而第2版是基于Android 7.0系统的,其中囊括了新系统中的诸多知识点,包括Android 5.0系统中引入的Material Design、Android 6.0系统中引入的运行时权限和Doze模式、Android 7.0系统中引入的多窗口模式等。
除此之外,第2版还加入了Gradle、RecyclerView、百分比布局、OkHttp、Lambda表达式等全新知识点的讲解,内容将前所未有地充实。
读者对象
本书内容通俗易懂,由浅入深,既适合初学者阅读,也同样适合专业人员。学习本书内容之前,你并不需要有任何的Android基础,但是你需要有一定的Java基础,因为Android开发都是使用Java语言的,而本书并不会去专门介绍Java方面的知识。
阅读本书时,你可以根据自身的情况来决定如何阅读。如果你是初学者的话,建议你从第1章开始循序渐进地阅读,这样理解起来就不会感到吃力。而如果你已经有了一定的Android基础,那么就可以选择某些你感兴趣的章节进行跳跃式的阅读。但请记住,很多章最后的最佳实践部分一定是你不想错过的。
本书内容
正如前面所说,本书的内容是非常系统化的,不仅全面介绍了那些你必须掌握的知识,而且保证了各章的难度都是梯度式上升的。全书一共分为15章,涵盖了四大组件、UI、碎片、数据存储、多媒体、网络、定位服务等方方面面的知识。为了让你在学完所有内容之后还可以有综合运用的能力,本书的尾声部分还会带你一起开发一个天气预报程序,并教会你如何将程序发布到应用商店,以及如何在程序中嵌入广告盈利。
除此之外,本书的第5章、第7章、第11章、第14章中都穿插有对Git的讲解,如果想要掌握它的用法,这几章的内容是绝对不能错过的。
本书中各个章节的内容都相对比较独立,因此除了可以循序渐进地学习之外,你还可以把它当成一本参考手册,随时查阅。
源码下载
首先,我建议你在学习本书的时候将所有项目的源码都亲手敲上一遍,因为只有这样才能加深你对代码的理解。不过为了方便于你的学习,我还是提供了书中所有项目的源码,请仅在需要的时候再去参考(如下载项目中的图片资源)。切勿直接将源码复制粘贴就当成自己的东西了,只有亲手敲过的代码才真正是你自己的。
源码下载地址:http://pic.witcp.com/pic/github.com/guolindev/booksource。
-
最近销售:4 掌柜:碧丹枫图书专营店¥87 元