描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302455301丛书名: 移动开发丛书
本书并不是一本循序渐进的学习书籍,而更像是一本Cookbook,读者需要有目的地去阅读。当遇到问题或者想了解某个工具如何使用时,可直接定位到相关的章节进行阅读。
本书适用于Android开发、测试以及想学习Android开发的相关从业人员,适合放在床头案边时常翻阅。
第1章 初识Android
Studio 1
1.1 什么是Android
Studio 1
1.1.1
Android Studio简介 1
1.1.2
系统要求 2
1.1.3
下载地址 2
1.1.4
为什么要用Android Studio 2
1.2
Android Studio的特点 3
1.3
macOS环境配置 7
1.3.1
配置JDK 7
1.3.2
下载Android Studio 8
1.3.3
配置Android的环境变量 8
1.4
Windows环境配置 9
1.4.1
配置JDK 9
1.4.2
配置Android Studio 10
1.4.3
配置Android的环境变量 11
1.5
Linux 环境配置 12
1.5.1
配置JDK 12
1.5.2
配置Android Studio 12
1.5.3
配置Android的环境变量 13
1.6 认识欢迎界面 13
1.6.1
近打开的项目 14
1.6.2
开始一个项目 14
1.7 认识配置界面 15
1.8 帮助和教程 19
1.9 更新Android
Studio版本 22
1.10
配置Android Studio更新通道 23
1.10.1
在偏好设置中配置更新通道 23
1.10.2
在检测结果对话框中配置更新通道 23
1.10.3
单独下载近更新的版本 23
1.10.4
四种版本的区别 24
1.11
在Android Studio中使用代理 25
1.12
认识偏好设置 26
1.12.1
基础配置 27
1.12.2
个性化配置 28
1.13
认识工作台 30
1.14
认识工具窗口 33
第2章 项目与模块 37
2.1
Android Studio的项目结构 37
2.1.1
项目和模块 37
2.1.2
基本的项目结构 38
2.2 导入项目和模块 40
2.2.1
导入Android Studio项目 40
2.2.2
导入Eclipse项目 40
2.2.3
导入Android示例代码 44
2.2.4
导入模块 44
2.2.5
导入.JAR/.AAR 46
2.2.6
从VCS检出项目 47
2.3 创建项目和模块 49
2.3.1
创建项目 49
2.3.2
创建应用程序模块 53
2.3.3
创建Android公共库模块 55
2.4 删除模块 57
2.5 添加so文件 58
2.6 创建类和文件 59
2.7 创建Activity 61
2.7.1
Activity模板列表 61
2.7.2
Activity Gallery 61
2.7.3
新建一个Activity 62
2.8 创建Fragment文件 64
2.9 创建Service文件 65
2.9.1
创建Service文件 66
2.9.2
创建Intent Service文件 66
2.10
创建自定义组件 67
2.11
创建App Widget 69
2.12
创建可编译的资源文件 70
2.12.1
可编译的资源文件 70
2.12.2
创建可编译的资源文件 72
2.12.3
资源限定符 74
2.13
创建不同分辨率的图标 77
2.13.1
启动图标 78
2.13.2
活动栏和选项卡图标 79
2.13.3
通知图标 80
2.14
创建矢量图 81
2.14.1
使用定义好的素材图标 81
2.14.2
使用本地的SVG文件 81
2.15
创建AIDL文件 82
2.16
创建Android文件夹 83
2.17
创建Resource Bundle文件 84
第3章 布局 86
3.1 认识布局 86
3.1.1
Android中定义布局的方法 86
3.1.2
快速开始 87
3.2 设计布局 88
3.2.1
文本编辑器 88
3.2.2
可视化布局编辑器 89
3.3 组件列表 90
3.4 预览 94
3.4.1
设置控件属性 94
3.4.2
警告和错误提示 94
3.4.3
界面缩放 96
3.4.4
控件操作 96
3.5 结构树 96
3.5.1
快速转换布局属性 97
3.5.2
选择控件 97
3.5.3
跳到源码 97
3.6 属性 97
3.7 工具栏 99
第4章 管理 103
4.1 项目窗口 103
4.1.1
视图模式 103
4.1.2
常用设置和操作 105
4.2 项目管理 110
4.2.1
打开和关闭项目 110
4.2.2
管理近打开的项目 111
4.3 文件管理 112
4.3.1
文件同步 112
4.3.2
导出到HTML 112
4.3.3
切换文件编码方式 113
4.3.4
切换行分隔符 113
4.3.5
使文件只读 114
4.3.6
使用省电模式 114
4.3.7
打开文件/文件夹所在磁盘目录 114
4.4
Android Studio管理 115
4.4.1
隐藏/显示/退出Android Studio 115
4.4.2
清除缓存/重启Android Studio 116
4.5 收藏夹 116
4.5.1
添加到收藏夹 116
4.5.2
管理收藏夹 118
4.6
TODO 119
4.6.1
添加TODO任务 119
4.6.2
查看TODO任务 120
4.6.3
TODO工具窗口常用操作 120
4.6.4
设置TODO 122
4.6.5
使用TODO分配代码Review任务 123
第5章 编辑 126
5.1 撤消/重做/剪切/复制/粘贴 126
5.2 复制技巧 127
5.2.1
复制为纯文本 127
5.2.2
复制引用 127
5.2.3
从复制历史中选择粘贴 127
5.2.4
设置粘贴历史记录的个数 128
5.2.5
复制行 128
5.3 合并两行内容 129
5.4 选择技巧 129
5.4.1
扩大选择范围 129
5.4.2
缩小选择范围 130
5.4.3
使用列选择模式 130
5.5 缩进设置 131
5.6 自动补全当前的语句 131
5.7 一键切换大小写字母 132
5.8 查找工具栏 132
5.8.1
打开查找工具栏 132
5.8.2
快速查找 133
5.8.3
查找范围设置 133
5.9 在查找结果中跳转 134
5.10
选择查找结果 134
5.11
指定查找路径 135
5.12
替换 136
5.13
指定替换路径 137
5.14
在结构中查找和替换 139
5.15
查找用法 141
5.16
设置查找用法的过程和范围 141
5.17
显示用法 144
5.18
查看在当前文件中的用法 144
5.19
在文件中高亮显示字符 145
5.20
近查找 145
5.21
Macros (宏) 146
第6章 视图 148
6.1 工具窗口 148
6.1.1
显示/隐藏工具窗口 148
6.1.2
快速切换工具窗口 149
6.2 工作台管理 150
6.3 查看定义 151
6.4 查看同胞元素 152
6.5 查看文档 152
6.6 查看方法的参数信息 154
6.7 查看表达式的类型 155
6.8 查看上下文信息 155
6.9 查看源码 156
6.10
查看近打开过的文件 156
6.11
查看近改动过的文件 156
6.12
查看近的改动 156
6.13
对比任意文件 158
6.14
将选中的文件和正在编辑的文件进行对比 160
6.15
将选中的文件和剪切板上的内容进行对比 160
6.16
切换编辑器配色方案 161
6.16.1
快速切换编辑器配色方案 161
6.16.2
切换编辑器配色方案 161
6.17
切换代码风格 161
6.18
切换键盘映射 162
6.19
快速切换视图模式 163
6.20
快速切换主题 164
6.21
设置编辑器是否显示空格 164
6.22
设置编辑器是否显示行号 165
6.23
设置编辑器是否显示缩进向导 166
6.24
设置编辑器是否使用自动换行 167
6.25
设置编辑器是否弹出导入提示 168
6.26
使用演示模式 169
6.27
使用免打扰模式 170
6.28
使用全屏模式 171
第7章 导航 172
7.1 搜索并打开类文件 172
7.2 搜索并打开某个文件 173
7.3 搜索并打开某个文件或方法
174
7.4 使用自定义代码块 174
7.5 快速跳转到某一行代码
176
7.6 快速跳转到光标的历史位置
177
7.7 快速跳转到编辑过的历史位置
178
7.8 标记书签 178
7.9 使用助记符标记书签 179
7.10
管理书签 179
7.10.1
在书签管理界面管理书签 180
7.10.2
在收藏夹中管理书签 181
7.11
快速跳转到导航栏 181
7.12
快速跳转到声明 181
7.13
快速跳转到实现 182
7.14
快速跳转到类型声明 182
7.15
快速跳转到父类 183
7.16
类和测试类之间快速跳转 184
7.17
查看相关联的文件 186
7.18
查看文件结构 187
7.19
查看类的层次结构图 188
7.20
查看方法类型的层次结构 189
7.21
查看方法调用层次结构 190
7.22
快速跳转到错误代码的位置 190
7.23
在方法间前后跳转 191
7.24
使用翻页功能 191
7.25
选择当前文件在哪里显示 192
7.26
光标快速跳转到编辑器 192
7.27
光标快速跳转到页首/页尾 193
第8章 编码 194
8.1 覆写或实现方法 194
8.2 实现接口方法 196
8.3 实现代理方法 196
8.4 生成构造函数 199
8.5 生成Getter和Setter方法 200
8.6 覆写equals和hashcode方法 200
8.7 覆写toString方法 201
8.8 插入版权信息 203
8.8.1
插入版权信息 203
8.8.2
配置版权信息 204
8.8.3
共享版权信息配置 207
8.9 提取或删除代码 208
8.10
自动补全提示 209
8.11
代码补全 210
8.12
补全循环扩展词 212
8.13
展开或折叠代码 213
8.13.1
展开或折叠当前代码块 213
8.13.2
展开或折叠当前代码块中的所有子模块 213
8.13.3
展开和折叠全部代码块 214
8.13.4
展开和折叠当前文件中的所有注释 214
8.13.5
指定展开层级 214
8.13.6
展开和折叠选中区域 215
8.13.7
折叠代码片段 215
8.14
插入代码模板 215
8.14.1
类中常用的缩写 215
8.14.2
方法中常用的缩写 216
8.15
使用代码模板包裹代码 218
8.16
查看和编辑代码模板 219
8.17
使用常用代码模板包裹代码 220
8.18
注释代码 222
8.19
格式化代码 222
8.20
自动缩进行 224
8.21
优化导入 224
8.22
重新排列代码 225
8.23
移动一段代码 225
8.24
移动一行代码 226
8.25
操作意图提示 227
8.26
正则表达式操作意图提示 228
第9章 检查 229
9.1 代码检查工具 229
9.2 全面了解Lint 230
9.2.1
Lint是什么 230
9.2.2
为什么要用Lint 230
9.2.3
Lint会检查哪些错误 230
9.2.4
Lint工作流程 231
9.2.5
报告中的Issue和Category 232
9.2.6
Lint使用场景 232
9.2.7
如何配置Lint检查 233
9.2.8
Lint命令行用法介绍 233
9.2.9
Lint命令行用法举例 235
9.3 执行一次代码检查 237
9.4 指定检查范围 239
9.4.1
先执行检查再指定范围 239
9.4.2
选定范围再执行检查 239
9.5 代码检查结果及辅助工具
240
9.6 详解代码检查结果辅助工具
242
9.6.1
重新执行代码检查 242
9.6.2
全部展开或折叠检查结果 242
9.6.3
在检查结果中快速上下跳转 243
9.6.4
自动定位到问题的源码 243
9.6.5
导出代码检查结果 243
9.6.6
按严重程度分组排查问题 244
9.6.7
按目录分组排查问题 244
9.6.8
过滤已解决的问题 244
9.6.9
高亮显示不同和仅显示不同 244
9.6.10
快速设置
245
9.6.11
快速解决问题 245
9.6.12
对检查出的问题进行操作 246
9.7 禁用和启用某项检查 247
9.7.1
在检查结果中禁用和启用某项检查 247
9.7.2
在偏好设置中禁用和启用某项检查 248
9.8 忽略检查 249
9.9 在指定范围内执行某项检查
252
9.10
解决检查出的问题 252
9.11
管理代码检查配置文件 253
9.12
配置代码检查规则 255
9.13
Android类目的所有检查项 259
9.14
Android Lint类目的检查项 260
9.15
在lint.xml文件中配置Lint检查 264
9.16
在Gradle中配置Lint检查 264
9.17
使用Gradle执行Lint检查 267
9.17.1
命令行执行Lint检查 267
9.17.2
Gradle工具窗口执行Lint检查 267
9.18
在Java和XML源码中配置Lint检查 267
9.18.1
在Java源码中配置Lint检查 267
9.18.2
在XML源码中配置Lint检查 268
9.19
代码清理 269
9.20
通过名字来指定代码检查项 271
9.21
配置当前文件自动检查的规则 272
9.22
导入并查看离线检查结果 274
9.23
自动添加是否可为空注解 275
9.24
分析依赖 276
9.25
分析反向依赖 277
9.26
分析模块依赖 278
9.27
分析循环依赖 279
9.28
分析数据流 279
9.29
分析堆栈信息 280
第10章 重构 282
10.1
重命名 282
10.1.1
重命名类 282
10.1.2
重命名变量 283
10.1.3
重命名文件 283
10.2
更改方法签名 284
10.3
迁移变量类型 284
10.4
转成静态方法 286
10.5
静态方法转为实例方法 287
10.6
移动类 288
10.7
移动静态方法 289
10.8
移动静态字段 290
10.9
复制 291
10.10
安全删除 291
10.11
提取变量 294
10.12
提取常量 295
10.13
提取字段 296
10.14
提取参数 298
10.15
提取函数式参数 300
10.16
提取参数对象 301
10.17
提取方法 303
10.18
提取方法对象 304
10.19
提取委托 304
10.20
提取接口 306
10.21
提取父类 307
10.22
内联方法 309
10.23
内联临时变量 310
10.24
查找并替换重复代码 311
10.25
反转布尔值 312
10.26
把成员拉到父类 313
10.27
把成员推到子类 314
10.28
尽可能使用接口 316
10.29
使用委托替换继承 318
10.30
移除中间人 321
10.31
包装方法返回值 323
10.32
将匿名类转成内部类 325
10.33
封装字段 326
10.34
使用查询替换临时变量 327
10.35
使用工厂方法替换构造方法 329
10.36
使用构建器替换构造方法 330
10.37
泛型化 332
10.38
国际化 333
第11章 构建 335
11.1
认识Gradle 335
11.1.1
Gradle是什么 335
11.1.2
Gradle中依赖的仓库 336
11.2
配置Gradle环境 338
11.3
Gradle Wrapper 339
11.4
查看和执行Gradle任务 340
11.4.1
查看当前项目支持的Gradle任务 340
11.4.2
执行Gradle任务 342
11.4.3
常用Gradle任务 342
11.4.4
Gradle工具窗口 343
11.5
构建项目和模块 345
11.5.1
编译项目 345
11.5.2
编译模块 346
11.5.3
设置自动编译项目 347
11.5.4
重新构建项目 347
11.5.5
Make Project与Rebuild Project的区别 348
11.5.6
清理项目 348
11.6
Gradle Script 348
11.6.1
Gradlew配置文件gradle-wrapper.properties 349
11.6.2
项目全局配置文件settings.gradle 350
11.6.3
本地属性配置文件local.properties 350
11.6.4
Gradle配置文件gradle.properties 351
11.6.5
代码混淆规则配置文件proguard-rules.pro 351
11.6.6
项目构建配置文件build.gradle 354
11.6.7
模块构建配置文件build.gradle 355
11.7
在项目结构中配置模块构建 357
11.7.1
配置应用程序属性 357
11.7.2
配置应用程序签名 358
11.7.3
配置应用程序特性 359
11.7.4
配置应用程序构建类型 361
11.7.5
配置应用程序依赖 364
11.8
签名和打包 365
11.8.1
创建签名证书 365
11.8.2
生成签名的APK 366
11.8.3
自动打包和签名 370
11.8.4
混淆打包 371
11.8.5
多渠道打包 372
11.9
配置开发者服务 377
第12章 运行和调试 378
12.1
运行和调试配置 378
12.1.1
运行和调试配置 378
12.1.2
Android应用程序配置 379
12.2
运行应用程序 383
12.3
调试应用程序 384
12.4
断点 388
12.4.1
行断点 388
12.4.2
方法断点 388
12.4.3
字段观察点 389
12.4.4
条件断点 390
12.4.5
临时断点 390
12.4.6
异常断点 391
12.4.7
日志断点 391
12.4.8
禁用断点 392
12.4.9
断点设置 392
12.5
帧调试窗口 393
12.6
变量调试窗口 394
12.7
监视窗口 397
12.7.1
添加变量或表达式到监视窗口 398
12.7.2
快捷工具 399
12.8
调试控制工具 399
12.9
步进调试工具 403
12.10
计算表达式 405
12.10.1
在堆栈帧中计算表达式或代码片段 405
12.10.2
计算任意表达式 407
12.10.3
快速计算表达式的值 407
12.10.4
选中表达式立即显示表达式的值 408
12.11
关联调试到Android进程 408
12.12
配置和运行单元测试 409
12.12.1
配置和运行本地单元测试 409
12.12.2
使用命令行运行单元测试 412
12.12.3
配置Android单元测试 412
第13章 工具 414
13.1
任务 414
13.1.1
任务介绍和配置 414
13.1.2
打开任务 417
13.1.3
创建新任务 418
13.1.4
任务变更列表 419
13.1.5
切换/关闭任务 420
13.1.6
管理上下文 420
13.2
JavaDoc 421
13.2.1
配置JavaDoc 421
13.2.2
生成JavaDoc 422
13.3
将当前文件保存为模板 424
13.4
IDE Scripting Console 425
13.5
管理Android SDK 425
13.5.1
管理Android SDK平台 426
13.5.2
管理SDK开发工具和更新站点 428
13.6
管理Android模拟器 429
13.6.1
认识模拟器 429
13.6.2
创建模拟器 430
13.6.3
启动模拟器 431
13.7
即时运行 433
13.8
Android监视器 436
13.9
截图 440
13.10
录像 440
13.11
捕获系统信息 441
13.12
布局解析 443
13.13
Logcat监视器 445
13.14
内存监视器 450
13.14.1
Dump Java Heap 452
13.14.2
Allocation Tracking 456
13.15
CPU监视器 458
13.16
网络监视器 460
13.17
GPU监视器 460
13.18
APK分析器 461
13.19
主题编辑器 462
第14章 版本控制 466
14.1
版本控制系统 466
14.2
Git偏好设置 469
14.3
配置GitHub账户信息 470
14.4
从GitHub克隆代码 470
14.5
将本地项目共享到GitHub 471
14.6
查看本地变更历史 472
14.7
Git添加文件 474
14.8
Git提交变更 475
14.9
Git文件逐行追溯 476
14.10
显示当前修订版本 477
14.11
Git文件比较 478
14.12
Git撤销操作 479
14.13
Git版本回退 480
14.14
Git查看提交历史 481
14.15
Git分支管理 483
14.16
Git创建标签 486
14.17
Git合并分支 487
14.18
解决Git合并中的冲突 488
14.19
Git使用Rebase合并分支 489
14.20
Git暂存/恢复暂存变更 494
14.21
Git获取内容 496
14.22
Git合并内容 497
14.23
Git更新项目 497
14.24
刷新文件状态 499
14.25
Git补丁 500
14.26
Git搁置变更 501
14.27
查看Git项目的提交信息 502
第15章 窗口 504
15.1
小化和化窗口 504
15.2
保存和恢复窗口布局 504
15.3
工具窗口的显示和隐藏 505
15.4
工具窗口的隐藏技巧 506
15.5
工具窗口调整技巧 507
15.6
移动工具窗口的位置 508
15.7
工具窗口的查看模式 509
15.8
编辑器标签设置 512
15.9
快速切换编辑器标签 513
15.10
关闭编辑器标签 514
15.11
管理编辑器标签 514
15.12
标签显示位置 515
15.13
拆分编辑器窗口 516
15.14
多个项目之间切换 517
第16章 偏好设置 518
16.1
外观与行为 518
16.1.1
设置工具提示的延迟时间 518
16.1.2
设置在状态栏显示内存状态 519
16.1.3
对菜单选项和工具栏的工具进行增/删改 519
16.2
系统设置 519
16.3
键盘映射 522
16.4
编辑器常规设置 523
16.4.1
设置单击编辑器光标定位在一行的结尾或定位在单击的位置 523
16.4.2
设置鼠标悬停在元素上会显示文档提示 523
16.4.3
设置是否自动换行 524
16.4.4
设置使用command 鼠标控制代码的缩放 526
16.4.5
开启使用驼峰单词 526
16.4.6
关闭单词拼写检查 527
16.4.7
设置代码折叠规则 527
16.5
设置自动导入 528
16.5.1
设置粘贴时自动导入包 528
16.5.2
设置自动导入需要的包 528
16.5.3
设置是否弹出导入提示 529
16.6
编辑器外观 530
16.6.1
设置编辑器一直显示行号 530
16.6.2
设置编辑器显示方法分隔符 530
16.6.3
设置编辑器显示空格 530
16.6.4
设置编辑器显示缩进向导 531
16.7
代码补全 531
16.7.1
设置自动补全时是否区分大小写 531
16.7.2
加快自动弹出代码补全提示的速度 532
16.7.3
关闭自动弹出代码补全提示 533
16.7.4
设置查看方法参数信息的时候显示方法签名 533
16.8
文件标签 534
16.8.1
设置用星号标记修改过的文件标签 534
16.8.2
设置打开的文件标签可以多行显示 534
16.8.3
设置文件标签的显示位置 535
16.8.4
设置文件标签超过一定数量时的关闭规则 535
16.9
编辑器颜色 536
16.9.1
设置是否显示条标和条标的显示颜色 536
16.9.2
设置控制台的颜色 537
16.9.3
设置控制台的字体 538
16.9.4
自定义代码的颜色 539
16.10
代码风格 541
16.10.1
设置Java注释按缩进显示 541
16.10.2
设置语句不要都显示在一行 541
16.10.3
设置Java简单的类合并为一行 542
16.10.4
设置Java字段和变量列对齐 542
16.10.5
设置自动生成字段名称时添加前缀 542
16.11
文件和代码模板 543
16.11.1
设置新建文件的注释模板 543
16.11.2
模板中内置的变量 544
16.11.3
设置新建类文件模板 544
16.11.4
设置IDE和项目的编码 545
16.11.5
对动态模板进行增删改查 545
16.11.6
设置展开代码的按键 547
16.11.7
给一个文件类型添加匹配规则 547
16.11.8
添加一个自定义的文件类型 547
16.11.9
设置忽略某类文件或文件夹 548
16.12
插件 549
16.12.1
安装插件 550
16.12.2
禁用插件 553
16.12.3
卸载插件 554
16.12.4
常用插件 555
16.13
编译和构建 556
16.13.1
设置Android Studio的内存参数 556
16.13.2
设置自动编译项目 556
16.13.3
设置并行编译 557
16.13.4
调整编译内存大小 557
附录 Android Studio重要版本发布时间线 559
参考资料 560
勘误与反馈本书已经尽可能全面地适配了当前的2.2版本,但是由于IntelliJ IDEA在持续更新,Android Studio也在持续更新,再加上笔者能力有限,书中难免会有遗漏、理解错误或者表达不清晰的地方。如果你在阅读本书时发现了这些问题,请发邮件([email protected])或者直接提交BUG到Github:https://github.com/bxiaopeng/AndroidStudio/issues。本书的所有勘误及版本适配都会更新在Github上。致谢好多次,在出门前,儿子都会问“爸爸,你跟我们一起去吗?”或者问“爸爸,你去哪里?”妈妈会抢着说“爸爸加班,晚上陪你玩”。现在儿子已经快3岁了,有时候会问“爸爸怎么老是加班啊”,我总是说“因为爸爸忙啊”。写书不是一件轻松的事情,这本书几乎用掉了我所有的休息时间。每个礼拜天我都会雷打不动地在星巴克写啊写,如果没有家人的理解和支持,没有老婆和儿子莫大的支持和鼓励,我是无法完成这本书的,感谢他们的付出。感谢楼主、友哥、猴哥、炜哥、战老师对本书的校对,他们都是非常资深的Android开发工程师,感谢他们对本书提出的修改建议。感谢已经买了电子书的1000多位读者,他们见证了这本书的的成长,没有他们的支持和鼓励,我也没有信心出版这本书。感谢所有的读者,感谢你对本书的关注。
毕小朋2016年9月22日下午改于双城国际的星巴克
export PATH=$ANDROID_SDK/platform-tools:$ANDROID_SDK/tools:$PATH如果你的电脑上也需要配置,请把SDK路径换成自己的。1.6 认识欢迎界面安装完成后打开Android Studio首先会进入欢迎界面(见图1-30)。欢迎界面提供了一个项目开始前所有可能的操作入口,比如查看版本信息、近打开项目列表、新建项目、打开项目、导入项目、配置、帮助等。 图1-301.6.1 近打开的项目在近打开项目列表中可以方便地对近打开过的项目进行管理,快速执行打开、删除、分组等操作,如图1-31所示。 图1-311.6.2 开始一个项目在欢迎界面可以快速开始一个新项目,包括新建、打开已经存在的项目、从版本控制系统中检出、导入项目和导入一个示例代码(见图1-32)。? Start a new Android Studio project:新建一个Android Studio项目。? Open an existing Android Studio project:打开一个已存在的Android Studio项目。? Check out project from Version Control:从版本控制系统中导出一个项目。? Import project(Eclipse ADT,Gradle,etc.):从Eclipse或Gradle中导入项目。? Import an Android code sample:导入一个Android示例代码。具体操作在第2章有详细的介绍。 图1-321.7 认识配置界面Android Studio提供了快速配置功能,可以在不打开项目的情况下进行配置(在Android Studio欢迎界面单击【Configure】可进入配置界面)。1. 配置功能概览配置功能如图1-33所示。? SDK Manager:管理SDK。? Preferences:偏好设置。? Plugins:插件。? Import Settings:导入设置。? Export Settings:导出设置。? Settings Repository:设置仓库。? Check for Update:检查更新。? Project Defaults:项目默认设置。2. 管理Android SDK在Android Studio中需要通过SDK Manager来安装、更新和卸载Android SDK和开发工具。(1)在欢迎界面直接启动SDK Manager操作步骤:欢迎界面→Configure→SDK Manager。打开的SDK Manager界面如图1-34所示。(2)其他启动方法 在工具栏直接启动,如图1-35所示。 图1-34 SDK Manager 图1-35 在偏好设置中启动:Preferences→Appearance & Behavior→System Settings→Android SDK→SDK Platforms。如果无法更新SDK就设置代理。3. 偏好设置操作步骤:欢迎界面→Configure→Preferences。关于偏好设置更详细的内容请看第16章。4. 插件操作步骤:欢迎界面→Configure→Plugins。打开的插件管理界面如图1-36所示。Android Studio有着非常丰富且强大的插件支持,更多插件管理的内容请看第16章。5. 导出设置Android Studio支持将偏好设置文件以jar包的形式进行共享,因此我们可以将设置导出。操作步骤:欢迎界面→Configure(或者菜单栏File)→Export Settings。进入导出设置界面,然后选择你要导出的设置,默认是全选,如图1-37所示。如果想把代码风格(约定好的代码规范)导出共享给合作团队,就只选择一个Code Style,然后保存为codestyle.jar,其他人导入这个jar包即可。 图1-36 图1-376. 导入设置操作步骤:欢迎界面→Configure→Import Settings→选择settings.jar,或者是菜单栏→File→Import Settings。然后会提示选择要导入的设置选项,如图1-38所示。 图1-38单击OK按钮后成功导入。7. 设置仓库Settings Repository(设置仓库)使用GitHub/Gitlab来存储设置,可以共享设置文件给所有基于JetBrains平台的产品(Android Studio、Intellij IDEA、Pycharm等)。操作步骤:欢迎界面→Configure→Settings Repository或者“菜单栏”→File→Settings Repository,然后弹出配置对话框, 如图1-39所示。可以在Upstream URL中输入用于共享设置的Git仓库的地址。当需要同步设置的时候,可以选择本地的设置覆盖远程(Overwrite Remote),或远程的设置覆盖本地(Overwrite Local),也可以合并本地和远程的设置(Merge)。同步设置可以选择手动或自动。自动同步:? 执行“Update Project”或“Push”。? 关闭软件或关闭项目。手动同步:“菜单栏”→VCS→Sync Settings同步有风险,操作需谨慎。更多请参考:https://github.com/JetBrains/intellij-community/tree/ master/plugins/settings-repository。8. 检查更新操作步骤:欢迎界面→Configure→Check for Update。具体操作请参考第1.9节。9. 项目默认设置操作步骤:欢迎界面→Configure→Project Defaults。进入项目默认配置界面,可以根据需要调整相关配置,如图1-40所示。 ( a ) 项目结构 (b)偏好设置 (c)运行配置图1-401.8 帮助和教程1. 查看帮助文档Android Studio的文档非常齐全,如果你直接读英文没有什么障碍,强烈建议你多看看帮助文档。操作步骤:欢迎界面→Get Help(菜单栏→Help)→Help→打开IntelliJ IDEA的帮助文档。另外,还可以到IntelliJ IDEA的官方网站去查看帮助文档:https://www.jetbrains.com/help/idea/2016.1/meet-intellij-idea.htmlAndroid Studio的帮助文档:https://developer.android.com/studio/intro/index.html2. 每天一个技巧提示Tips of The Day会提示一些实用的操作技巧,如图1-41所示。勾选【Show Tips on Startup】后会在每次启动Android Studio时都显示这个提示。操作步骤:欢迎界面→Get Help(菜单栏→Help)→Tip of The Day。3. 查看快捷键操作步骤:欢迎界面→Get Help(菜单栏→Help)→Keymap Reference这里会显示Android Studio对应平台的默认快捷键,如图1-42所示。这里使用的电脑系统是macOS,所以会显示Mac上的快捷键。 图1-42这些快捷键全部都可以自定义,后面介绍快捷键设置的时候会讲到。4. 插件开发没有人能开发出一个IDE能满足所有开发者的需求,因此一个优秀的IDE一定是支持插件开发的。如果想为Android Studio开发插件,可以参考下面的插件开发文档。操作步骤:欢迎界面→Get Help(菜单栏→Help)→Plugin Development。5. 搜索菜单选项当我们忘记某个菜单选项在哪里的时候,可以通过搜索来找到这个选项。例如,忘记了打开Captures的选项在哪里,就可以利用搜索来找到。操作步骤:菜单栏→Help→Search→输入capture→光标移动到菜单选项上→菜单会自动打开,且有蓝色箭头的指示指到Captures,如图1-43所示。 图1-43再举个例子:搜索commit选项在哪里,如图1-44所示。 图1-446. 全局查找操作查找操作功能会搜索Android Studio中所有能匹配到的操作,包括菜单选项、设置、工具等。对于没有设置快捷键或者忘记快捷键的菜单或者操作,可以通过输入名字快速调用。例如,搜索Captures选项,操作步骤如下:第1步:调出操作窗口。菜单栏:Help→Find Action。快捷键:shift command A(macOS)或Ctrl Shift A(Windows/Linux)。第2步:输入关键字。输入capture→光标移动到下拉列表上,选中后执行操作,如图1-45所示。再举个例子:搜索 commit相关操作,如图1-46所示。 图1-45 图1-467. 效率指南效率指南统计使用Android Studio工作的一些效率情况。操作步骤:菜单栏→Productivity Guide→弹出效率统计窗口,如图1-47所示。 图1-47我们来看一下统计的结果:Android Studio运行:5小时,空闲3小时45分钟。从2014年11月17日以来,Android Studio的代码补全功能已经至少帮你输入了10.8KB字符(平均每个工作日269个)。从2014年11月14日以来Android Studio帮你快速解决了32个可能的BUG(平均每个工作日2个)。图1-48所示是一些功能的使用情况 统计。1.9 更新Android Studio版本1. 关于Android Studio当我们想查看当前Android Studio的版本和使用的JDK版本时,选择菜单栏中的Android Studio→About Android Studio(macOS)或者Help→About(Windows/Linux),然后会弹出一个对话框显示Android Studio的版本号、构建日期以及JDK版本,如图1-49所示。2. 检测版本更新在欢迎界面单击底部Check for updates now的Check,或者在菜单栏中选择Android Studio(macOS)或Help→Check for Updates(Windows/Linux),Android Studio就会开始检测是否有更新。 图1-50 图1-51 3. 版本更新过程下面以更新到Dev Channel的版本为例进行介绍。当有新版本可以更新时(见图1-52),单击【Update and Restart】按钮后会开始更新并重启(见图1-53)。 图1-52 图1-53更新完成后会提示你是否要导入之前版本的设置(见图1-54),单击【OK】按钮就可以了! 图1-541.10 配置Android Studio更新通道Android Studio提供了不同的更新通道,我们可以在偏好设置中指定更新通道。1.10.1 在偏好设置中配置更新通道操作步骤:偏好设置→Appearance & Behavior→System Settings→Updates,然后显示更新通道配置界面,如图1-55所示。 图1-55在Updates界面上显示了当前版本的信息和上次检查更新的时间,可以在这里配置Android Studio和Android SDK的更新通道,然后立即检查更新。1.10.2 在检测结果对话框中配置更新通道当我们执行检测更新以后,弹出的检测结果对话框中也是可以配置更新通道的。操作步骤:菜单栏→Android Studio(macOS)或Help→Check for Updates(Windows/Linux),在弹出的对话框中选择Updates,进入更新通道配置界面,如图1-56所示。1.10.3 单独下载近更新的版本有四种通道的版本可供我们下载,如图1-57所示。(下载地址为http://tools.android.com/ download/studio。) 图1-56 图1-571.10.4 四种版本的区别Android Studio提供了四种更新通道(见图1-58),在检测更新时会分别检测不同的版本。 图1-58 这四种版本更新频率从Canary往上逐渐递减:Canary大概1或者2周会更新一次,Beta则为相对稳定的发布版,Stable则是正式版。稳定性与其更新频率相反,稳定性从Canary往上逐渐递增。环境问题经常会困扰着我们,所以如果不是特别需要,好使用稳定版本。如果想尝鲜,可以使用Canary Channel。图1-59所示为Canary Channel近的更新信息(地址为http://tools.android.com/download/ studio/canary/latest)。 图1-591.11 在Android Studio中使用代理1. 为什么使用代理Android Studio中默认选中【No proxy】,意思是不使用代理。但是作为开发人员,特别是Android开发人员,如果不用代理好多事情是做不了的,例如查看Android开发文档、查找英文资料等,也会出现好多组件无法下载或下载速度很慢以及SDK无法更新等问题,如图1-60所示。 图1-60因此需要通过设置代理(自动检测代理设置和手动配置代理)来更加顺畅地使用Android Studio,更加方便地使用Google提供的各种服务。2. 设置代理操作步骤:偏好设置→Appearance & Behavior→System Settings→HTTP Proxy,然后显示HTTP代理设置界面,如图1-61所示。 图1-613. 配置手动代理配置手动代理的界面如图1-62所示。根据需要配置好代理以后,单击【Check connection】来检查是否能正常连接。 图1-621.12 认识偏好设置macOS上是Preferences(偏好设置),Windows/Linux上是Settings,因为这里是用macOS做演示,所以关于设置的内容在本书中统一称为偏好设置。Android Studio的偏好设置默认被分为八大类,如图1-63所示。 图1-63? Appearance & Behavior:外观与行为。? Keycap:键盘映射。? Editor:编辑器。? Plugins:插件。? Version Control:版本控制。? Build,Execution,Deployment:构建,执行,部署。? Languages & Frameworks:语言与框架。? Tools:工具。当我们需要进行偏好设置的时候,通过分类可以快速找到对应的配置项。除此之外,Android Studio还提供了非常便捷的配置搜索功能,可以通过模糊匹配来找到对应的配置项,如图1-64所示。 图1-641.12.1 基础配置在开始使用Android Studio开发项目之前,需要做一些基础的配置。1. 设置代理只有设置了代理以后,更新IDE、更新SDK、使用示例代码、使用Google提供的服务才能够畅通无阻,因此学会设置代理是一切的前提。当然,不设置代理,除了Google的服务不能用之外,其他的问题都是有方法解决的。例如,IDE和SDK更新可以使用国内搬运工搬进来,示例代码能在GitHub上找到。操作步骤:偏好设置→Appearance & Behavior→System Settings→HTTP Proxy,然后配置手动代理(参见图1-62)。2. 配置SDK/JDK路径配置SDK/JDK路径如图1-65所示。 图1-653. 下载SDK找一个网络好的地方,下载所需要的SDK,如图1-66所示。 图1-664. 编码方式编码方式不匹配会导致乱码,我们需要知道在哪里设置编码方式(见图1-67)。操作步骤:偏好设置→Editor→File Encodings。 图1-671.12.2 个性化配置1. 主题个性化的配置不能少了主题,Android Studio默认的主题如图1-68所示。如果我们想把Android Studio设置为如图1-69所示的主题,应该怎么设置呢?操作步骤:偏好设置→Appearance & Behavior→Appearance→Theme设为【Darcula】。 图1-68 图1-692. 字体和大小操作步骤:偏好设置→Appearance & Behavior→Appearance→勾选【Override default fonts by(not recommended)】→选择所要的字体和字号,如图1-70所示。 图1-70注意,不推荐自己去设置字体和字号。3. 更新想尝鲜就使用Canary Chanel,想稳定就使用Stable Chanel。操作步骤:偏好设置→Appearance & Behavior→System Settings→Updates,如图1-71所示。 图1-71更多设置技巧请看第16章。1.13 认识工作台Android Studio的工作窗口称为工作台,工作台通常是由菜单栏、工具栏、导航条、编辑器、工具窗口、状态栏组成的。1. 整体布局打开一个Android项目进入编辑界面,能够看到Android Studio的整体布局,如图1-72所示。 图1-722. 菜单栏菜单栏提供了文件、编辑、视图、导航、代码、分析、重构、构建、运行、工具、版本控制系统、窗口、帮助等功能菜单,如图1-73所示。每个菜单都包含了很多非常实用的子功能,大部分功能都有快捷键。这使得我们可以快速地编写代码以及对项目进行管理。 图1-733. 工具栏工具栏的工具都是从菜单栏中提取出来的一些常用的功能,为的是能够快速操作,如图1-74所示。4. 导航条导航条用来辅助查看打开的项目和文件。通过菜单栏中的View→勾选Navigation Bar可以显示导航条,去掉勾选Navigation Bar即可关闭导航条。 图1-745. 编辑器编辑器(见图1-75)是基于标签的,在Android Studio中打开一个文件编辑时会打开一个新的文件标签。 图1-75(1)编辑区在编辑区进行编码工作,编辑器提供了辅助编码的功能。(2)左边栏左边栏显示了代码的附加信息,并显示不同的图标来区别代码结构、书签、断点、范围指示符、变化标记和代码折叠线。(3)右边栏右边栏显示了代码的警告或错误信息,黄色为警告,红色为错误。将鼠标放到上面可以查看警告和错误数量,单击警告可以跳转到对应的代码。(4)文件标签打开一个文件就显示一个标签,我们可以通过标签在多个已打开的文件中快速切换。单击文件标签就相当于打开一个文件,文件的内容会显示出来且处于可编辑状态。如果编辑器处于活跃状态(文件处于打开状态),当焦点不在编辑器时,按下Esc键可以让焦点从任何其他工具窗口返回活跃的编辑器。6. 工具条工具条(见图1-76)是用来放置工具的,单击后可以展开工具窗口(详细介绍参见1.14节)。Android Studio 中的工具条分布在主界面的左右两边和底部(状态栏上面)。可以通过菜单栏→View→Tool Windows→查看Android Studio支持的所有工具列表。7. 状态栏状态栏通常在界面的底部,主要显示Android Studio当前的状态和执行任务,如图1-77所示。 图1-771.14 认识工具窗口工具窗口寄居在工具条上,通过一定的规则显示和隐藏,主要提供某个工具的操作功能。下面介绍一下Android Studio中常用的工具窗口。1. 项目工具窗口:Project项目工具窗口提供了多种视图模式来查看项目结构,在项目工具窗口中可以对项目中的文件和目录进行各种操作,如图1-78所示。 图1-782. 收藏夹工具窗口:Favorites在使用Android Studio的日常编码中,如果某个文件或某段代码是我们经常需要查看或使用的,就可以将其添加到收藏夹中,以便快速查看,如图1-79所示。从中可以看到收藏夹中支持收藏项目中的文件、书签和断点。3. 结构工具窗口:Structure结构工具窗口会以树状形式展现文件中元素的层次结构,如图1-80所示。单击元素可以跳转到编辑器中对应代码的位置。 图1-804. 待处理任务工具窗口:TODO在Android Studio中待处理的任务可以在注释中使用TODO来标识。它表明了这个地方是需要注意的,有可能是未完成的功能,也有可能是需要解决的BUG或者需要优化的代码。在项目开发的过程中,团队成员们可以通过TODO来关注这些问题,以便更好地完成开发。例如,在下面这个方法中添加TODO注释(见图1-81)。打开待处理任务工具窗口TODO就会显示所有待处理的任务(见图1-82)。 图1-81 图1-825. Android监控工具窗口:Android MonitorAndroid监控工具窗口提供了非常丰富的工具来查看日志、截图、录屏、监控性能(CPUMemoryNetworkGPU),如图1-83所示。 图1-83 已连接到电脑上的设备列表,在这里选择我们需要使用的设备。 手机上运行的App的进程列表。 针对手机操作的工具栏,从上到下依次是截图、录像、系统信息、终止应用、布局解析、帮助工具。 Logcat日志过滤工具栏,从左到右依次是日志级别、关键字、是否使用正则匹配、过滤配置。 Logcat日志输出面板。 Logcat日志工具栏。 内存、CPU、网络、GPU监控。6. 快照工具窗口:Captures快照工具窗口中存放Android Monitor中dump处的heap、allocation、系统信息、布局解析等文件。Android Studio为每一种文件都提供了相应的解析器,可以直接打开进行分析,如图1-84所示。7. 运行工具窗口:Run运行工具窗口主要显示Android Studio的运行过程,如图1-85所示。 图1-84 图1-858. 终端工具窗口:Terminal在终端工具窗口中可以直接执行终端命令,使用起来非常方便,如图1-86所示。 图1-869. 构建变体工具窗口:Build Variants构建变体工具窗口用来选择当前多渠道版本的构建,执行Build APK会构建出选中的渠道版本,如图1-87所示。10. Gradle工具窗口:Gradle projectGradle工具窗口列出了当前项目和模块中支持的所有Gradle任务和运行配置,以便快速操作,如图1-88所示。 图1-87 图1-8811. 版本控制工具窗口:Version Control版本控制工具窗口提供了版本控制的操作功能(Git/SVN),如图1-89所示。 图1-95关于这些工具的具体用法,我们会在后续的章节中详细介绍。
评论
还没有评论。