前言
第1篇 高效开发基础
第1章 高效开发工具2
1.1 使用Android Studio进行高效开发2
1.1.1 认识Android Studio2
1.1.2 安装与使用Android Studio7
1.2 常用的Android Studio高效插件13
1.3 Android Studio小技巧19
1.3.1 熟悉Gradle构建流程与脚本19
1.3.2 Lint静态代码分析22
1.3.3 使用Android Studio进行调试23
1.3.4 代码重构26
第2章 提高效率,从“新”开始28
2.1 新布局方式:ConstraintLayout28
2.1.1 相对定位28
2.1.2 边距30
2.1.3 居中定位和偏移31
2.1.4 环形定位32
2.1.5 尺寸约束33
2.1.6 链约束34
2.2 新包引入方式:AndroidX36
2.3 新架构:Jetpack37
2.4 新动画:Lottie40
2.5 新发展:Material Design42
第3章 认识Android相关辅助工具44
3.1 版本控制和源代码管理工具44
3.1.1 SVN的基本用法44
3.1.2 Git的基本用法49
3.2 9-Patch的制作54
3.3 抓包工具Fiddler57
3.4 布局分析器与结构视图工具67
3.5 反编译工具69
第2篇 核心技术详解
第4章 线程与进程IPC76
4.1 Handler与Looper76
4.2 Thread线程79
4.3 IPC进程间通信85
第5章 Android应用安全98
5.1 Android常见漏洞及安全要点98
5.1.1 Android常见漏洞98
5.1.2 Android应用安全要点103
5.2 Android混淆与加固103
5.2.1 Android混淆104
5.2.2 Android应用加固110
5.3 Android数据加密与签名112
5.3.1 Android数据加密112
5.3.2 Android签名115
5.4 Android开发规范118
第6章 Android应用测试135
6.1 Android测试方法和原则135
6.1.1 Android测试方法136
6.1.2 Android测试原则137
6.2 Android应用测试内容140
6.3 编写Android应用测试用例144
6.3.1 编写Android本地测试用例145
6.3.2 编写Android仪器化测试用例151
6.4 Android应用测试主流框架155
6.4.1 Espresso测试框架155
6.4.2 UI Automator测试框架164
6.4.3 Robolectric测试框架166
第7章 定制与适配177
7.1 定制主题与样式177
7.1.1 定义原则177
7.1.2 自定义主题178
7.1.3 自定义样式180
7.2 定制Dialog180
7.3 定制Notification184
7.4 自定义View188
7.5 Android适配与国际化处理196
7.5.1 Android适配196
7.5.2 语言国际化209
第3篇 拓展与实践
第8章 深入探索Android ROM214
8.1 了解Android平台214
8.2 Android系统架构218
8.3 Android平台源码结构221
8.4 编译Linux Kernel229
8.5 编写系统应用233
8.6 Android ROM常用知识点240
第9章 Android TV开发243
9.1 了解Android TV243
9.1.1 Android TV相关技术名词243
9.1.2 了解Android TV机顶盒249
9.2 Android TV开发规范及注意事项250
9.2.1 Android TV设计准则250
9.2.2 Android TV开发注意事项254
9.3 Android TV开发的常用ADB命令257
9.4 构建Android TV应用258
第10章 Flutter从入门到实战263
10.1 认识Flutter263
10.2 Flutter开发环境搭建和调试266
10.2.1 开发环境的搭建266
10.2.2 模拟器的安装与调试273
10.3 Flutter常用的Widget和布局277
10.3.1 Flutter基础Widget279
10.3.2 Flutter基础布局287
10.4 HTTP网络请求详解294
10.4.1 HTTP的请求方式简介294
10.4.2 Flutter HTTP网络请求实现的区别和特点295
10.5 Flutter与Android305
10.6 Flutter的Android和iOS应用打包309
10.6.1 Flutter的Android应用打包309
10.6.2 Flutter的iOS应用打包310
第11章 设计模式详解312
11.1 软件设计原则312
11.1.1 单一职责原则312
11.1.2 里氏替换原则313
11.1.3 依赖倒转原则313
11.1.4 接口隔离原则314
11.1.5 迪米特原则314
11.1.6 开闭原则315
11.1.7 合成复用原则315
11.2 软件设计模式之创建型模式317
11.2.1 单例模式318
11.2.2 工厂模式321
11.2.3 抽象工厂模式322
11.2.4 建造者模式325
11.2.5 原型模式328
11.3 软件设计模式之结构型模式329
11.3.1 适配器模式330
11.3.2 外观模式333
11.3.3 桥接模式334
11.3.4 装饰器模式336
11.3.5 代理模式338
11.3.6 享元模式340
11.3.7 组合模式342
11.4 软件设计模式之行为型模式345
11.4.1 模板方法模式345
11.4.2 策略模式346
11.4.3 命令模式348
11.4.4 责任链模式350
11.4.5 状态模式352
11.4.6 观察者模式354
11.4.7 中介模式356
11.4.8 迭代器模式359
11.4.9 访问者模式361
11.4.10 备忘录模式364
11.4.11 解释器模式366
第12章 项目实践从0到1370
12.1 创建项目370
12.2 项目核心逻辑的实现372
12.3 App项目调试380
12.4 打包签名384
12.5 自动化压力测试387
温馨提示:请使用石家庄市图书馆的读者帐号和密码进行登录