目录

推荐序

前言

第1章 程序员小窝——搭建高效的开发环境 1.1 搭建高效的开发环境之操作系统

1.2 搭建开发环境之高效配置 基本环境配置

基本开发工具

1.3 搭建程序员的博客平台 开发者为什么要写作

写作平台

第三方博客平台

自建博客平台

开发论坛

1.4 Geek PPT Presentation impress.js

Strut

reveal.js

Slides

1.5 开发文档 Markdown

项目文档生成器

第2章 版本控制神器——Git 2.1 Git的前世今生 Git是什么

Git安装与配置

2.2 创建Git仓库 Git init

Git clone

2.3 提交修改 add&&commit

追加修改

查看代码仓库状态

追溯版本历史

2.4 工作区与暂存区 Git操作区域

2.5 Git回退 checkout&&reset

回退版本

2.6 操作历史

2.7 Git文件操作 git rm

文件暂存

2.8 远程仓库 身份认证

同步协作

Clone远程仓库

2.9 分支管理 创建分支

查看分支

合并分支

删除分支

查看远程分支

推送分支

分支管理思想

2.10 Git图解

2.11 Tag 创建Tag

创建带标签的Tag

查看Tag

删除标签

推送Tag到远程

删除远程Tag

2.12 Git图形化工具 Git for Windows

Github Desktop

SourceTree

Android Studio

2.13 Git学习资料 Git练习

第3章 Android Studio奇技淫巧 3.1 Android Studio使用初探 Project面板

Structure面板

Android Monitor

Keymap

Tip of the Day

快速查找

Search Action

演示模式

3.2 Android Studio使用进阶 操作与导航

快速重构

代码模板

内置模板

自定义代码注释模板

代码分析

在Android Studio中进行版本管理

3.3 Android Studio新功能 项目模板

ThemeEditor

Image Asset&&Vector Asset

Android Monitor

Instant Run

Productivity Guide

3.4 Android Studio插件 Ignore

自动生成代码类插件

主题插件

3.5 Android Studio资源网站 Android Studio中文社区

Android Studio问答社区

第4章 与Gradle的爱恨情仇 4.1 如何学习Gradle

4.2 Gradle初探 项目全局build.gradle

Module build.gradle

local.properties

Gradle Task

4.3 Gradle进阶 更改项目结构

构建全局配置

构建defaultConfig

构建buildTypes

构建signingConfigs

生成签名

Android领域中的可选配置

构建Proguard

Gradle动态参数配置

System.properties方式

多渠道打包

脚本优化

生成重命名包

为不同版本添加不同代码

4.4 Gradle多项目依赖 jar包依赖

SO库依赖

本地库项目依赖

远程仓库依赖

本地aar依赖

使用Gradle上传aar到Maven库

4.5 Gradle依赖管理 Gradle依赖库缓存

利用Gradle的通知机制

利用Gradle的依赖检查

Gradle依赖传递

Gradle依赖统一管理

4.6 Gradle使用技巧 生成Gradle编译脚本

Gradle peer not authenticated

Gradle性能检测

Gradle加速

增加编译内存

Gradle调用终端指令

使用Gradle精简资源

清除Gradle缓存

使用Gradle本地缓存

Gradle版本问题导致的编译错误

Gradle资源冲突

4.7 Gradle自定义插件 构建默认插件

构建自定义插件

4.8 Gradle思考 Grovvy初探

Gradle项目架构

Gradle生命周期

4.9 使用Android Studio的图形化界面

第5章 深藏功与名的开发者工具 5.1 AAPT AAPT初探

AAPT基本使用方法

查看AAPT命令格式

AAPT源代码

5.2 Lint

5.3 ADB指令 Help指令

无线调试

截图与录屏

帧率分析

dumpsys

Logcat

Bugreport

5.4 Android Device Monitor

5.5 9Patch工具

5.6 Hierarchy Viewer 在真机上使用Hierarchy Viewer

使用Hierarchy Viewer分析页面

5.7 UI Automator Viewer

5.8 DDMLib 其他SDK工具

5.9 开发者选项 Process Stats

Show Touches&&Pointer Location

Show Layout Bounds

Animation Scale

Simulate Secondary Displays

Debug GPU Overdraw

Show CPU Usage

Profile GPU Rending

Strick Mode

不保留活动

第6章 App背后的故事——性能检测与分析工具 6.1 性能优化之前

6.2 Google的技术指导

6.3 UI性能分析 16ms黄金准则

Android系统对UI的提升

布局核心准则

RelativeLayout VS LinearLayout

HierarchyViewer

Merge与ViewStub

图形重绘Overdraw

Tracer for OpenGL

GPUProfiler

Profile GPU Rendering

Framestats

Logcat

traces.txt

Android Studio GPU Monitor

Systrace

CPU区域

SurfaceFlinger

应用区域

Alert

6.4 Traceview In Source Code

In DDMS

Traceview分析

图形列表

详细列表

6.5 应用启动时间计算 启动时间定义

ADB计算启动时间

使用相机分析

6.6 内存探究 内存区分

系统内存分析工具

获取内存信息

GC系统

ActivityManager.MemoryInfo

Debug.MemoryInfo

Runtime

获取更多内存

6.7 系统内存警告

6.8 onLowMemory ComponentCallbacks

onTrimMemory

6.9 内存泄漏检测

6.10 Logcat

6.11 Dump Heap

6.12 Allocation Tracker In Android Studio

In DDMS

6.13 Android Studio Memory Monitor

6.14 内存泄漏分析

6.15 Memory Analysis Tool(MAT) 准备Dump Heap文件

分析

6.16 LeakCanary 引用LeakCanary

初始化LeakCanary

检测

6.17 CPU Performance

6.18 Top 总览

详细

6.19 Show CPU Usage

6.20 Android Studio CPU Monitor

6.21 Method Tracing

6.22 BatteryPerformance 电量消耗计算

耗电元凶

电量分析

6.23 综合测试工具

6.24 Android Device Monitor Threads

System Information

6.25 高通性能工具 Trepn Profiler

App Tune-up Kit

6.26 云测平台

第7章 一个人的寂寞与一群人的狂欢 7.1 如何解决问题 Chrome

Google搜索

Github

Stackoverflow

代码检索工具

7.2 如何简化开发 移动后端服务

云存储服务

数据分析服务

云测试服务

Proguard自动生成工具

gitignore自动生成工具

7.3 如何学习 思维导图

explainshell

Tldr

vim-adventures

7.4 如何演示 手机投视工具

录制Gif

MP4转Gif

7.5 如何协作 Git

Code Review

Gitlab

Maven服务器

自动化测试

持续集成与自动化

Bug管理

新员工指南

7.6 如何设计 AndroidAssetStudio

Shape生成器

ICON资源

设计资源

AngryTools

MateriaPalette

Google Design Spec

附录A AndroidStudio快捷键

返回总目录