作品简介

本书是作者多年App开发的经验总结,从App架构的角度,重点总结了Android应用开发中常见的实用技巧和疑难问题解决方法,为打造高质量App提供有价值的实践指导,迅速提升应用开发能力和解决疑难问题的能力。本书涉及的问题有:Android基础建设、网络底层框架设计、缓存、网络流量优化、制定编程规范、模块化拆分、Crash异常的捕获与分析、持续集成、代码混淆、App竞品技术分析、项目管理和团队建设等。本书以“问题/解决方案”的形式给出疑难问题的解决方案,同时结合示例代码,深入剖析这些实用的编程技巧和模式,旨在帮助移动开发人员和管理人员提高编程效率,改进代码质量,打造高质量的App。

包建强,毕业于复旦大学数学系。先后在多家互联网公司担任无线部门技术总监。在And roid、iOS、WP等多门无线技术中跋涉过,在App的项目管理上也有多年的实践经验。他是微软2008年MVP。曾经翻译出版《.NET探秘MSIL权威指南》,并有一个坚持写了6年的技术客博客:http://jax.cnblOgs.com/

作品目录

  • 序一
  • 序二
  • 序三
  • 前言
  • 第一部分 高效App框架设计与重构
  • 第1章 重构,夜未眠
  • 1.1 重新规划Android项目结构
  • 1.2 为Activity定义新的生命周期
  • 1.3 统一事件编程模型
  • 1.4 实体化编程
  • 1.5 Adapter模板
  • 1.6 类型安全转换函数
  • 1.7 本章小结
  • 第2章 Android网络底层框架设计
  • 2.1 网络低层封装
  • 2.2 App数据缓存设计
  • 2.3 MockService
  • 2.4 用户登录
  • 2.5 HTTP头中的奥妙
  • 2.6 本章小结
  • 第3章 Android经典场景设计
  • 3.1 App图片缓存设计
  • 3.2 对网络流量进行优化
  • 3.3 城市列表的设计
  • 3.4 App与HTML5的交互
  • 3.5 消灭全局变量
  • 3.6 本章小结
  • 第4章 Android命名规范和编码规范
  • 4.1 Android命名规范
  • 4.2 Android编码规范
  • 4.3 统一代码格式
  • 4.4 本章小结
  • 第二部分 App开发中的高级技巧
  • 第5章 Crash异常收集与统计
  • 5.1 异常收集
  • 5.2 异常收集与统计
  • 5.3 本章小结
  • 第6章 Crash异常分析
  • 6.1 Java语法相关的异常
  • 6.2 Activity相关的异常
  • 6.3 序列化相关的异常
  • 6.4 列表相关的异常
  • 6.5 窗体相关的异常
  • 6.6 资源相关的异常
  • 6.7 系统碎片化相关的异常
  • 6.8 SQLite相关的异常
  • 6.9 不明觉厉的异常
  • 6.10 其他情况的异常
  • 6.11 本章小结
  • 第7章 ProGuard技术详解
  • 7.1 ProGuard简介
  • 7.2 ProGuard工作原理
  • 7.3 如何写一个ProGuard文件
  • 7.4 其他注意事项
  • 7.5 本章小结
  • 第8章 持续集成
  • 8.1 版本管理策略
  • 8.2 使用Ant脚本打包
  • 8.3 Monkey包的生成
  • 8.4 自动打包
  • 8.5 批量打渠道包
  • 8.6 Android发版流程
  • 8.7 分类打渠道包
  • 8.8 灵活切换服务器
  • 8.9 单元测试
  • 8.10 本章小结
  • 第9章 App竞品技术分析
  • 9.1 竞品分析概述
  • 9.2 App安装包的结构
  • 9.3 竞品技术一瞥:开机速度
  • 9.4 竞品技术二瞥:HTML5页面的打开速度
  • 9.5 竞品技术三瞥:安装包的大小
  • 9.6 竞品技术四瞥:性能优化
  • 9.7 竞品技术五瞥:数据采集工具
  • 9.8 竞品技术六瞥:热修补
  • 9.9 竞品技术七瞥:曲径通幽
  • 9.10 竞品技术八瞥:模块化拆分
  • 9.11 竞品技术九瞥:第三方SDK
  • 9.12 竞品技术十瞥:版本策略与App彩蛋
  • 9.13 本章小结
  • 第三部分 项目管理和团队建设
  • 第10章 项目管理决定了开发速度
  • 10.1 项目管理中的三驾马车
  • 10.2 优化团队结构,让敏捷流程跑得更快
  • 10.3 App敏捷开发流程
  • 10.4 项目经理的百宝箱
  • 10.5 迭代中的测试工作
  • 10.6 高层对敏捷流程的干预
  • 10.7 本章小结
  • 第11章 日常工作中的问题解决
  • 11.1 使用二分法排查问题
  • 11.2 找到能稳定重现问题的人
  • 11.3 小流量包
  • 11.4 建立全国范围的测试群
  • 11.5 如何与用户沟通
  • 11.6 日志与App性能
  • 11.7 从新人入职作业入手
  • 11.8 本章小结
  • 第12章 无线团队的组建和管理
  • 12.1 从面试谈起
  • 12.2 无线团队必备的10份文档
  • 12.3 一对一沟通
  • 12.4 每周技术分享
  • 12.5 代码评审
  • 12.6 对Android团队Leader的定位
  • 12.7 Android应用开发所需技能自我评测
  • 12.8 App开发人员的学习路线
  • 12.9 本章小结
展开全部