图书介绍
Android编程权威指南 第3版【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

- (美)比尔·菲利普斯,克里斯·斯图尔特,克莉丝汀·马西卡诺 著
- 出版社: 北京:人民邮电出版社
- ISBN:9787115457592
- 出版时间:2017
- 标注页数:578页
- 文件大小:73MB
- 文件页数:597页
- 主题词:移动终端-应用程序-程序设计
PDF下载
下载说明
Android编程权威指南 第3版PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章Android开发初体验1
1.1 Android开发基础2
1.2创建Android项目2
1.3 Android Studio使用导航6
1.4用户界面设计6
1.4.1视图层级结构10
1.4.2组件属性10
1.4.3创建字符串资源11
1.4.4预览布局12
1.5从布局XML到视图对象13
1.6组件的实际应用16
1.6.1引用组件17
1.6.2设置监听器17
1.7创建提示消息19
1.8使用模拟器运行应用21
1.9深入学习:Android编译过程23
1.10关于挑战练习25
1.11挑战练习:定制toast消息25
第2章Android与MVC设计模式26
2.1创建新类26
2.2 Android与MVC设计模式29
2.3更新视图层31
2.4更新控制器层33
2.5在物理设备上运行应用37
2.5.1连接设备37
2.5.2配置设备用于应用开发37
2.6添加图标资源38
2.6.1向项目中添加资源39
2.6.2在XML文件中引用资源41
2.7挑战练习:为TextView添加监听器42
2.8挑战练习:添加后退按钮42
2.9挑战练习:从按钮到图标按钮42
第3章activity的生命周期45
3.1日志跟踪理解activity生命周期46
3.1.1输出日志信息46
3.1.2使用LogCat48
3.1.3 activity生命周期实例解析50
3.2设备旋转与activity生命周期52
3.3保存数据以应对设备旋转56
3.4再探activity生命周期58
3.5深入学习:activity内存清理现状59
3.6深入学习:日志记录的级别与方法60
3.7挑战练习:禁止一题多答61
3.8挑战练习:评分61
第4章Android应用的调试62
4.1异常与栈跟踪63
4.1.1诊断应用异常64
4.1.2 记录栈跟踪日志65
4.1.3设置断点66
4.1.4使用异常断点68
4.2 Android特有的调试工具70
4.2.1使用Android Lint70
4.2.2 R类的问题71
4.3挑战练习:探索布局检查器72
4.4挑战练习:探索内存分配跟踪72
第5章 第二个activity74
5.1创建第二个activity75
5.1.1创建新的activity75
5.1.2创建新的activity子类78
5.1.3在manifest配置文件中声明activity78
5.1.4为QuizActivity添加CHEAT按钮79
5.2启动activity81
5.3 activity间的数据传递83
5.3.1使用intent extra83
5.3.2从子activity获取返回结果86
5.4 activity的使用与管理91
5.5挑战练习:堵住漏洞93
第6章Android SDK版本与兼容94
6.1 Android SDK版本94
6.2 Android编程与兼容性问题95
6.2.1比较合理的版本95
6.2.2 SDK最低版本96
6.2.3 SDK目标版本97
6.2.4 SDK编译版本97
6.2.5安全添加新版本API中的代码97
6.3使用Android开发者文档100
6.4挑战练习:报告编译版本101
6.5挑战练习:限制作弊次数102
第7章U I fragment与fragment管理器103
7.1 UI设计的灵活性需求104
7.2引入fragment104
7.3着手开发CriminalIntent105
7.3.1创建新项目107
7.3.2两类fragment108
7.3.3在Android Studio中增加依赖关系108
7.3.4创建Crime类111
7.4托管UI fragment112
7.4.1 fragment的生命周期112
7.4.2托管的两种方式113
7.4.3定义容器视图113
7.5创建UI fragment115
7.5.1定义CrimeFragment的布局115
7.5.2创建CrimeFragment类117
7.6向FragmentManager添加UI fragment122
7.6.1 fragment事务123
7.6.2 FragmentManager与fragment生命周期125
7.7采用fragment的应用架构126
7.8深入学习:fragment与支持库127
7.9深入学习:为什么优先使用支持库版fragment128
第8章 使用RecyclerView显示列表129
8.1升级CriminalIntent应用的模型层130
8.2使用抽象activity托管fragment132
8.2.1通用型fragment托管布局133
8.2.2抽象activity类133
8.3 RecyclerView、 ViewHolder和Adapter137
8.3.1 ViewHolder和Adapter138
8.3.2使用RecyclerView141
8.3.3 列表项视图142
8.3.4实现ViewHolder和Adapter143
8.4绑定列表项145
8.5响应点击147
8.6深入学习:ListView和G ridView148
8.7深入学习:单例148
8.8挑战练习:RecyclerView ViewType149
第9章 使用布局与组件创建用户界面150
9.1使用图形布局工具151
9.2引入ConstraintLayout151
9.2.1使用ConstraintLayout152
9.2.2约束编辑器153
9.2.3腾出空间155
9.2.4添加组件157
9.2.5约束的XML形式159
9.2.6编辑属性160
9.2.7动态设置列表项162
9.3深入学习布局属性163
9.3.1 dp、 sp以及屏幕像素密度163
9.3.2边距与内边距165
9.3.3样式、主题及主题属性166
9.3.4 Android应用的设计原则166
9.4图形布局工具使用小结167
9.5挑战练习:日期格式化167
第10章 使用fragment argument168
10.1从fragment中启动activity168
10.1.1附加extra信息169
10.1.2获取extra信息170
10.1.3使用Crime数据更新CrimeFragment视图171
10.1.4直接获取extra信息的缺点172
10.2 fragment argument172
10.2.1附加argument给fragment173
10.2.2获取argument174
10.3刷新显示列表项174
10.4通过fragment获取返回结果176
10.5深入学习:为何要用fragment argument177
10.6挑战练习:实现高效的RecyclerView刷新178
10.7挑战练习:优化CrimeLab的表现178
第11章 使用ViewPager179
11.1创建CrimePagerActivity180
11.1.1 ViewPager与PagerAdapter181
11.1.2整合并配置使用CrimePagerActivity182
11.2 FragmentStatePagerAdapter与FragmentPagerAdapter184
11.3深入学习:ViewPager的工作原理186
11.4深入学习:以代码的方式创建视图187
11.5挑战练习:恢复CrimeFragment的边距187
11.6挑战练习:添加Jump to First按钮和Jump to Last按钮188
第12章 对话框189
12.1创建DialogFragment190
12.1.1显示DialogFragment192
12.1.2设置对话框的显示内容194
12.2 fragment间的数据传递196
12.2.1传递数据给DatePickerFragment197
12.2.2返回数据给CrimeFragment199
12.3挑战练习:更多对话框205
12.4挑战练习:实现响应式DialogFragment205
第13章 工具栏207
13.1 AppCompat207
13.2工具栏菜单209
13.2.1在XML文件中定义菜单210
13.2.2创建菜单214
13.2.3响应菜单项选择217
13.3实现层级式导航218
13.4可选菜单项219
13.4.1切换菜单项标题220
13.4.2“还有个问题”222
13.5深入学习:工具栏与操作栏224
13.6挑战练习:删除crime记录224
13.7挑战练习:复数字符串资源224
13.8挑战练习:用于RecyclerView的空视图225
第14章SQLite数据库226
14.1定义schema226
14.2创建初始数据库227
14.2.1使用Android Device Monitor查看文件230
14.2.2处理数据库相关问题231
14.3修改CrimeLab类232
14.4写入数据库233
14.4.1使用ContentValues233
14.4.2插入和更新记录234
14.5读取数据库235
14.5.1使用CursorWrapper236
14.5.2创建模型层对象238
14.6深入学习:数据库高级主题介绍241
14.7深入学习:应用上下文241
14.8挑战练习:删除crime记录242
第15章 隐式intent243
15.1添加按钮组件244
15.2添加嫌疑人信息至模型层244
15.3使用格式化字符串246
15.4使用隐式intent248
15.4.1隐式intent的组成248
15.4.2发送消息249
15.4.3获取联系人信息252
15.4.4检查可响应任务的activity254
15.5挑战练习:ShareCompat256
15.6挑战练习:又一个隐式intent256
第16章 使用intent拍照258
16.1布置照片258
16.2文件存储260
16.2.1使用FileProvider261
16.2.2指定照片存放位置262
16.3使用相机intent263
16.4缩放和显示位图265
16.5功能声明268
16.6挑战练习:优化照片显示269
16.7挑战练习:优化缩略图加载269
第17章 双版面主从用户界面270
17.1增加布局灵活性271
17.1.1修改SingleFragment-Activity272
17.1.2创建包含两个fragment容器的布局272
17.1.3使用别名资源274
17.1.4创建平板设备专用可选资源275
17.2 activity: fragment的托管者276
17.3深入学习:设备屏幕尺寸的确定284
17.4挑战练习:添加滑动删除功能285
第18章 应用本地化286
18.1资源本地化286
18.1.1默认资源289
18.1.2检查资源本地化完成情况291
18.1.3区域修饰符292
18.2配置修饰符294
18.2.1可用资源优先级排定295
18.2.2多重配置修饰符296
18.2.3寻找最匹配的资源297
18.3测试备选资源298
18.4挑战练习:日期本地化298
第19章Android辅助功能299
19.1 TalkBack299
19.1.1点击浏览301
19.1.2线性浏览301
19.2实现非文字型元素可读303
19.2.1添加内容描述303
19.2.2实现组件可聚焦305
19.3提升辅助体验305
19.4深入学习:使用辅助功能扫描器309
19.5挑战练习:优化列表项311
19.6挑战练习:补全上下文信息311
19.7挑战练习:事件主动通知311
第20章 数据绑定与M VV M313
20.1为何要用MVVM架构314
20.2创建BeatBox应用314
20.3导入assets319
20.4处理assets321
20.5使用assets323
20.6绑定数据325
20.6.1创建视图模型327
20.6.2绑定至视图模型328
20.6.3绑定数据观察330
20.7访问assets332
20.8深入学习:数据绑定再探333
20.8.1 lambda表达式333
20.8.2更多语法糖333
20.8.3 BindingAdapter333
20.9深入学习:为何使用assets334
20.10深入学习:什么是non-assets334
第21章 音频播放与单元测试335
21.1创建SoundPool335
21.2加载音频文件336
21.3播放音频337
21.4添加测试依赖338
21.5创建测试类339
21.6实现测试类341
21.7编写测试方法342
21.8数据绑定回调346
21.9释放音频346
21.10设备旋转和对象保存347
21.10.1保留fragment348
21.10.2设备旋转和已保留的fragment349
21.11深入学习:是否保留fragment351
21.12深入学习:Espresso与整合测试351
21.13深入学习:虚拟对象与测试352
21.14挑战练习:播放进度控制353
第22章 样式与主题354
22.1颜色资源354
22.2样式355
22.3主题357
22.4添加主题颜色359
22.5覆盖主题属性361
22.6修改按钮属性364
22.7深入学习:样式继承拾遗367
22.8深入学习:引用主题属性367
第23章XML drawable368
23.1统一按钮样式368
23.2 shape drawable369
23.3 state list drawable371
23.4 layer list drawable372
23.5深入学习:为什么要用XML drawable373
23.6深入学习:使用mipmap图像374
23.7深入学习:使用9-patch图像375
23.8挑战练习:按钮主题379
第24章 深入学习intent和任务380
24.1创建NerdLauncher项目380
24.2解析隐式intent382
24.3在运行时创建显式intent386
24.4任务与回退栈388
24.4.1在任务间切换389
24.4.2启动新任务389
24.5使用NerdLauncher应用作为设备主屏幕392
24.6挑战练习:应用图标393
24.7深入学习:进程与任务393
24.8深入学习:并发文档395
第25章HTTP与后台任务398
25.1创建PhotoGallery应用399
25.2网络连接基本401
25.3使用AsyncTask在后台线程上运行代码403
25.4线程与主线程405
25.5从Flickr获取JSON数据407
25.6从AsyncTask回到主线程413
25.7清理AsyncTask416
25.8深入学习:AsyncTask再探416
25.9深入学习:AsyncTask的替代方案417
25.10挑战练习:Gson418
25.11挑战练习:分页418
25.12挑战练习:动态调整网格列418
第26章Looper、 Handler和HandlerTh read420
26.1配置RecyclerView以显示图片420
26.2批量下载缩略图422
26.3与主线程通信423
26.4创建并启动后台线程424
26.5 Message与message handler426
26.5.1剖析Message426
26.5.2剖析Handler427
26.5.3使用handler428
26.5.4传递handler431
26.6深入学习:AsyncTask与线程436
26.7深入学习:解决图片下载问题436
26.8深入学习:StrictMode437
26.9挑战练习:预加载以及缓存438
第27章 搜索439
27.1搜索Flickr网站439
27.2使用Sea rchView443
27.3使用shared preferences实现轻量级数据存储447
27.4优化应用451
27.5挑战练习:深度优化PhotoGalle应用451
第28章 后台服务452
28.1创建IntentService452
28.2服务的作用454
28.3查找最新返回结果456
28.4使用AlarmManager延迟运行服务458
28.4.1合理控制服务启动的频度460
28.4.2 PendingIntent461
28.4.3使用PendingIntent管理定时器461
28.5控制定时器462
28.6通知信息464
28.7挑战练习:可穿戴设备上的通知466
28.8深入学习:服务之细节467
28.8.1服务的能与不能467
28.8.2服务的生命周期467
28.8.3 non-sticky服务467
28.8.4 sticky服务468
28.8.5绑定服务468
28.9深入学习:JobScheduler和JobSe rvice469
28.10挑战练习:在Lollipop设备上使用JobService472
28.11深入学习:sync adapter472
第29章broadcast intent474
29.1普通intent和broadcast intent474
29.2接收系统broadcast:重启后唤醒475
29.2.1创建并登记standalone receiver475
29.2.2使用receiver477
29.3过滤前台通知消息479
29.3.1发送broadcast intent479
29.3.2创建并登记动态receiver480
29.3.3使用私有权限限制broadcast482
29.3.4使用有序broadcast收发数据484
29.4 receiver与长时运行任务488
29.5深入学习:本地事件488
29.5.1使用EventBus489
29.5.2使用RxJava490
29.6深入学习:探测fragment的状态490
第30章 网页浏览492
30.1最后一段Flickr数据492
30.2简单方式:隐式intent494
30.3较难方式:使用WebView496
30.4处理WebView的设备旋转问题502
30.5深入学习:注入JavaScript对象502
30.6深入学习:WebView升级503
30.7挑战练习:使用后退键浏览历史网页504
30.8挑战练习:非HTTP链接支持504
第31章 定制视图与触摸事件505
31.1创建DragAndDraw项目505
31.2创建定制视图507
31.3处理触摸事件509
31.4 onDraw(…)方法内的图形绘制513
31.5挑战练习:设备旋转问题515
31.6挑战练习:旋转矩形框515
第32章 属性动画516
32.1建立场景516
32.2简单属性动画519
32.2.1视图属性转换521
32.2.2使用不同的interpolator523
32.2.3色彩渐变523
32.3播放多个动画525
32.4深入学习:其他动画API527
32.4.1传统动画工具527
32.4.2转场527
32.5挑战练习527
第33章 地理位置和Play服务528
33.1地理位置和定位类库528
33.2创建Locatr项目529
33.3 Play服务定位和模拟器530
33.4创建Locatr应用532
33.5配置Google Play服务534
33.6使用Google Play服务536
33.7基于地理位置的Flickr搜索538
33.8获取定位数据539
33.9获取运行时权限542
33.10寻找并显示图片546
33.11挑战练习:权限使用理由548
33.12挑战练习:进度指示器549
第34章 使用地图550
34.1导入Play地图服务库550
34.2 Android上的地图服务550
34.3获取Maps API key550
34.4创建地图552
34.5获取更多地理位置数据553
34.6使用地图556
34.7深入学习:团队开发和API key560
第35章material design562
35.1 material surface562
35.1.1 elevation和Z值564
35.1.2 state list animator565
35.2动画工具566
35.2.1 circular reveal567
35.2.2 shared element transition568
35.3新的视图组件571
35.3.1 card571
35.3.2 floating action button572
35.3.3 snackbar573
35.4深入学习material design574
第36章 编后语575
36.1终极挑战575
36.2关于我们575
36.3致谢576
热门推荐
- 3153734.html
- 2987100.html
- 1961082.html
- 285948.html
- 2708707.html
- 146193.html
- 2018689.html
- 1833631.html
- 2105403.html
- 2945719.html
- http://www.ickdjs.cc/book_1617839.html
- http://www.ickdjs.cc/book_203812.html
- http://www.ickdjs.cc/book_1166202.html
- http://www.ickdjs.cc/book_649587.html
- http://www.ickdjs.cc/book_1528452.html
- http://www.ickdjs.cc/book_3430123.html
- http://www.ickdjs.cc/book_477184.html
- http://www.ickdjs.cc/book_799917.html
- http://www.ickdjs.cc/book_2807950.html
- http://www.ickdjs.cc/book_355995.html