行代码 Android 第3版
全新正版 现货速发
¥
45.6
4.6折
¥
99
全新
库存52件
作者郭霖 著
出版社人民邮电出版社
ISBN9787115524836
出版时间2020-04
装帧平装
开本16开
定价99元
货号1202038161
上书时间2024-12-05
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
郭霖,Android开发工程师。从事Android开发工作9年,有着丰富的项目实战经验,负责及参与开发过多款移动应用与游戏,同时还是多个开源项目的作者,对Android系统架构及应用层开发有着深入的理解。
2013年3月开始,在CSDN上发表Android技术相关博文,很快获得了大量网友的好评。目前博客访问量已超过1000万次,评论超过10000条。荣获CSDN认证专家,并连续多年被评选为CSDN年度博客之星。
目录
第1章开始启程——你的第一行Android代码1
1.1了解全貌,Android王国简介2
1.1.1Android系统架构2
1.1.2Android已发布的版本3
1.1.3Android应用开发特色4
1.2手把手带你搭建开发环境5
1.2.1准备所需要的工具5
1.2.2搭建开发环境5
1.3创建你的第一个Android项目9
1.3.1创建HelloWorld项目9
1.3.2启动模拟器11
1.3.3运行HelloWorld14
1.3.4分析你的第一个Android程序15
1.3.5详解项目中的资源20
1.3.6详解build.gradle文件22
1.4前行必备:掌握日志工具的使用25
1.4.1使用Android的日志工具Log25
1.4.2为什么使用Log而不使用println()26
1.5小结与点评28
第2章探究新语言,快速入门Kotlin编程30
2.1Kotlin语言简介31
2.2如何运行Kotlin代码32
2.3编程之本:变量和函数35
2.3.1变量35
2.3.2函数37
2.4程序的逻辑控制41
2.4.1if条件语句41
2.4.2when条件语句42
2.4.3循环语句45
2.5面向对象编程48
2.5.1类与对象49
2.5.2继承与构造函数50
2.5.3接口55
2.5.4数据类与单例类58
2.6Lambda编程61
2.6.1集合的创建与遍历61
2.6.2集合的函数式API65
2.6.3Java函数式API的使用69
2.7空指针检查71
2.7.1可空类型系统72
2.7.2判空辅助工具73
2.8Kotlin中的小魔术77
2.8.1字符串内嵌表达式77
2.8.2函数的参数默认值78
2.9小结与点评81
第3章先从看得到的入手,探究Activity82
3.1Activity是什么82
3.2Activity的基本用法82
3.2.1手动创建Activity83
3.2.2创建和加载布局85
3.2.3在AndroidManifest文件中注册88
3.2.4在Activity中使用Toast90
3.2.5在Activity中使用Menu92
3.2.6销毁一个Activity96
3.3使用Intent在Activity之间穿梭96
3.3.1使用显式Intent96
3.3.2使用隐式Intent99
3.3.3更多隐式Intent的用法101
3.3.4向下一个Activity传递数据105
3.3.5返回数据给上一个Activity106
3.4Activity的生命周期108
3.4.1返回栈108
3.4.2Activity状态109
3.4.3Activity的生存期110
3.4.4体验Activity的生命周期111
3.4.5Activity被回收了怎么办117
3.5Activity的启动模式118
3.5.1standard119
3.5.2singleTop120
3.5.3singleTask122
3.5.4singleInstance123
3.6Activity的最佳实践126
3.6.1知晓当前是在哪一个Activity126
3.6.2随时随地退出程序127
3.6.3启动Activity的最佳写法129
3.7Kotlin课堂:标准函数和静态方法130
3.7.1标准函数with、run和apply130
3.7.2定义静态方法133
3.8小结与点评137
第4章软件也要拼脸蛋,UI开发的点点滴滴138
4.1该如何编写程序界面138
4.2常用控件的使用方法139
4.2.1TextView139
4.2.2Button142
4.2.3EditText144
4.2.4ImageView149
4.2.5ProgressBar151
4.2.6AlertDialog154
4.3详解3种基本布局156
4.3.1LinearLayout156
4.3.2RelativeLayout163
4.3.3FrameLayout166
4.4系统控件不够用?创建自定义控件169
4.4.1引入布局169
4.4.2创建自定义控件172
4.5最常用和最难用的控件:ListView174
4.5.1ListView的简单用法174
4.5.2定制ListView的界面176
4.5.3提升ListView的运行效率179
4.5.4ListView的点击事件180
4.6更强大的滚动控件:RecyclerView182
4.6.1RecyclerView的基本用法183
4.6.2实现横向滚动和瀑布流布局186
4.6.3RecyclerView的点击事件191
4.7编写界面的最佳实践193
4.7.1制作9-Patch图片193
4.7.2编写精美的聊天界面196
4.8Kotlin课堂:延迟初始化和密封类201
4.8.1对变量延迟初始化201
4.8.2使用密封类优化代码204
4.9小结与点评206
第5章手机平板要兼顾,探究Fragment207
5.1Fragment是什么207
5.2Fragment的使用方式209
5.2.1Fragment的简单用法210
5.2.2动态添加Fragment212
5.2.3在Fragment中实现返回栈215
5.2.4Fragment和Activity之间的交互216
5.3Fragment的生命周期217
5.3.1Fragment的状态和回调217
5.3.2体验Fragment的生命周期219
5.4动态加载布局的技巧221
5.4.1使用限定符221
5.4.2使用最小宽度限定符224
5.5Fragment的最佳实践:一个简易版的新闻应用225
5.6Kotlin课堂:扩展函数和运算符重载234
5.6.1大有用途的扩展函数234
5.6.2有趣的运算符重载236
5.7小结与点评240
第6章全局大喇叭,详解广播机制242
6.1广播机制简介242
6.2接收系统广播243
6.2.1动态注册监听时间变化243
6.2.2静态注册实现开机启动245
6.3发送自定义广播249
6.3.1发送标准广播249
6.3.2发送有序广播252
6.4广播的最佳实践:实现强制下线功能255
6.5Kotlin课堂:高阶函数详解261
6.5.1定义高阶函数261
6.5.2内联函数的作用265
6.5.3noinline与crossinline268
6.6Git时间:初识版本控制工具271
6.6.1安装Git271
6.6.2创建代码仓库272
6.6.3提交本地代码274
6.7小结与点评274
第7章数据存储全方案,详解持久化技术275
7.1持久化技术简介275
7.2文件存储276
7.2.1将数据存储到文件中276
7.2.2从文件中读取数据279
7.3SharedPreferences存储281
7.3.1将数据存储到SharedPre-ferences中282
7.3.2从SharedPreferences中读取数据284
7.3.3实现记住密码功能285
7.4SQLite数据库存储288
7.4.1创建数据库289
7.4.2升级数据库295
7.4.3添加数据297
7.4.4更新数据300
7.4.5删除数据302
7.4.6查询数据304
7.4.7使用SQL操作数据库307
7.5SQLite数据库的最佳实践307
7.5.1使用事务308
7.5.2升级数据库的最佳写法309
7.6Kotlin课堂:高阶函数的应用312
7.6.1简化SharedPreferences的用法312
7.6.2简化ContentValues的用法314
7.7小结与点评317
第8章跨程序共享数据,探究ContentProvider318
8.1ContentProvider简介318
8.2运行时权限319
8.2.1Android权限机制详解319
8.2.2在程序运行时申请权限322
8.3访问其他程序中的数据326
8.3.1ContentResolver的基本用法326
8.3.2读取系统联系人329
8.4创建自己的ContentProvider332
8.4.1创建ContentProvider的步骤332
8.4.2实现跨程序数据共享336
8.5Kotlin课堂:泛型和委托345
8.5.1泛型的基本用法345
8.5.2类委托和委托属性347
8.5.3实现一个自己的lazy函数350
8.6小结与点评352
第9章丰富你的程序,运用手机多媒体353
9.1将程序运行到手机上353
9.2使用通知355
9.2.1创建通知渠道355
9.2.2通知的基本用法357
9.2.3通知的进阶技巧362
9.3调用摄像头和相册367
9.3.1调用摄像头拍照367
9.3.2从相册中选择图片371
9.4播放多媒体文件374
9.4.1播放音频374
9.4.2播放视频377
9.5Kotlin课堂:使用infix函数构建更可读的语法381
9.6Git时间:版本控制工具进阶383
9.6.1忽略文件384
9.6.2查看修改内容385
9.6.3撤销未提交的修改387
9.6.4查看提交记录388
9.7小结与点评389
第10章后台默默的劳动者,探究Service390
10.1Service是什么390
10.2Android多线程编程391
10.2.1线程的基本用法391
10.2.2在子线程中更新UI392
10.2.3解析异步消息处理机制395
10.2.4使用AsyncTask396
10.3Service的基本用法399
10.3.1定义一个Service399
10.3.2启动和停止Service401
10.3.3Activity和Service进行通信404
10.4Service的生命周期408
10.5Service的更多技巧408
10.5.1使用前台Service409
10.5.2使用IntentService411
10.6Kotlin课堂:泛型的高级特性415
10.6.1对泛型进行实化415
10.6.2泛型实化的应用417
10.6.3泛型的协变418
10.6.3泛型的逆变422
10.7小结与点评425
第11章看看精彩的世界,使用网络技术427
11.1WebView的用法427
11.2使用HTTP访问网络429
11.2.1使用HttpURLConnection430
11.2.2使用OkHttp433
11.3解析XML格式数据436
11.3.1Pull解析方式438
11.3.2SAX解析方式441
11.4解析JSON格式数据444
11.4.1使用JSONObject445
11.4.2使用GSON446
11.5网络请求回调的实现方式448
11.6最好用的网络库:Retrofit451
11.6.1Retrofit的基本用法452
11.6.2处理复杂的接口地址类型456
11.6.3Retrofit构建器的最佳写法459
11.7Kotlin课堂:使用协程编写高效的并发程序461
11.7.1协程的基本用法461
11.7.2更多的作用域构建器467
11.7.3使用协程简化回调的写法471
11.8小结与点评474
第12章最佳的UI体验,Material Design实战475
12.1什么是Material Design475
12.2Toolbar476
12.3滑动菜单483
12.3.1DrawerLayout483
12.3.2NavigationView486
12.4悬浮按钮和可交互提示491
12.4.1FloatingActionButton491
12.4.2Snackbar494
12.4.3CoordinatorLayout496
12.5卡片式布局498
12.5.1MaterialCardView498
12.5.2AppBarLayout504
12.6下拉刷新507
12.7可折叠式标题栏510
12.7.1CollapsingToolbarLayout510
12.7.2充分利用系统状态栏空间519
12.8Kotlin课堂:编写好用的工具方法522
12.8.1求N个数的最大最小值522
12.8.2简化Toast的用法524
12.8.3简化Snackbar的用法526
12.9Git时间:版本控制工具的高级用法528
12.9.1分支的用法528
12.9.2与远程版本库协作530
12.10小结与点评532
第13章高级程序开发组件,探究Jetpack533
13.1Jetpack简介533
13.2ViewModel534
13.2.1ViewModel的基本用法536
13.2.2向ViewModel传递参数539
13.3Lifecycles541
13.4LiveData545
13.4.1LiveData的基本用法545
13.4.2map和switchMap549
13.5Room554
13.5.1使用Room进行増删改查555
13.5.2Room的数据库升级562
13.6WorkManager565
13.6.1WorkManager的基本用法566
13.6.2使用WorkManager处理复杂的任务568
13.7Kotlin课堂:使用DSL构建专有的语法结构571
13.8小结与点评577
第14章继续进阶,你还应该掌握的高级技巧579
14.1全局获取Context的技巧579
14.2使用Intent传递对象582
14.2.1Serializable方式582
14.2.2Parcelable方式583
14.3定制自己的日志工具584
14.4调试Android程序586
14.5深色主题589
14.6Kotlin课堂:Java与Kotlin代码之间的转换596
14.7总结600
第15章进入实战,开发一个天气预报App601
15.1功能需求及技术可行性分析601
15.2Git时间:将代码托管到GitHub上605
15.3搭建MVVM项目架构612
15.4搜索全球城市数据615
15.4.1实现逻辑层代码615
15.4.2实现UI层代码620
15.5显示天气信息626
15.5.1实现逻辑层代码626
15.5.2实现UI层代码631
15.5.3记录选中的城市645
15.6手动刷新天气和切换城市647
15.6.1手动刷新天气648
15.6.2切换城市650
15.7制作App的图标654
15.8生成正式签名的APK文件659
15.8.1使用Android Studio生成660
15.8.2使用Gradle生成663
15.9你还可以做的事情666
第16章编写并发布一个开源库,PermissionX669
16.1开发前的准备工作669
16.2实现PermissionX开源库673
16.3对开源库进行测试678
16.4将开源库发布到jcenter仓库681
16.5体验我们的成果688
16.6结束语691
内容摘要
《第一行代码Android:第3版》被Android开发者誉为“Android学习第一书”。全书系统全面、循序渐进地介绍了Android软件开发的必备知识、经验和技巧。《第一行代码Android:第3版》基于Android 10.0对第2版进行了全面更新,不仅将所有知识点都在Android 10.0系统上进行了重新适配,同时加入Kotlin语言的全面讲解,使用Kotlin对全书代码进行重写,而且还介绍了最新系统特性以及Jetpack架构组件的使用,使本书更加实用。《第一行代码Android:第3版》内容通俗易懂,由浅入深,既是Android初学者的入门必备,也是Android开发者的进阶首选。
主编推荐
1. CSDN知名博主郭霖新作,基于Android 10全面升级,使用Kotlin语言进行讲解,Android开发者入门常备
2. 前两版累计销售25万册,Android开发者广为推荐
3. 赠送源代码、思维导图和PPT教学课件
第3版的主要变化
·首先是编程语言上的改变,本书前两版都是使用Java 作为应用程序的开发语言,而第3 版使用了Kotlin,这是目前Google 公司最推荐我们使用的开发语言。
·本书的前两版中也没有涉及过语言方面的讲解,默认读者是有Java 语言基础的。而第3 版中对Kotlin 语言进行了非常全面的讲解,不需要读者有任何Kotlin 语言的基础。
·另外,本书第1 版是基于Android 4.x 系统的,第2 版是基于Android 7.0 系统的,现在第3版基于Android 10.0 系统。其中囊括了新系统中的诸多知识点,包括Android 8.0 系统中引入的通知渠道和应用图标适配、Android 9.0 系统中引入的明文网络传输限制适配、Android 10.0 系统中引入的深色主题模式等。
·除此之外,第3 版还加入了两个实战项目以及Retrofit、协程、Jetpack、MVVM等全新知识点的讲解,内容将前所未有地充实。
— 没有更多了 —
以下为对购买帮助不大的评价