Android 开发周报:性能优化从入门到精通

  • 郭亮

2015 年 4 月 19 日

话题:移动Android语言 & 开发架构

新闻

  1. 《Android 新功能:用谷歌搜索寻找丢失手机》:谷歌 Android 近日推出一项新功能,用户可通过谷歌搜索引擎,来寻找丢失的手机。如果想尝试这一新功能,需安装最新版本 Android 应用。在使用谷歌搜索时,用户只需在搜索框输入“寻找我的手机”,就可以定位自己的爱机了。
  2. 《谷歌回应欧盟反垄断指控:Android 也将遭调查》:北京时间 4 月 15 日上午消息,由于欧盟委员会即将对谷歌发起反垄断指控,因此该公司将面临一场硬仗。不过,从网上泄密的谷歌内部备忘录来看,这家搜索巨头已经做好了准备。欧盟还有可能对 Android 展开正式调查,而谷歌则在备忘录中表示,这项调查”刚刚开始,欧盟委员会未必会采取行动“。
  3. 《谷歌升级 Android for Work App》:Google 在今年 2 月份的时候推出了 Android for Work 应用套件,以便企业客户能够在一个可管理的 IT 环境中,安全地访问联系人、电子邮件、日历、以及文件等内容。近日谷歌将该服务进行了升级,目前已经能够在 Android 5.0 Lollipop 平台上运行。

教程

  1. 《那些年我们错过的响应式编程》:相信大家在学习响应式编程这个新技术的时候都会充满好奇,特别是它的一些变体,例如:Rx 系列、Bacon.js、RAC 等。Rx 对于像前端和 App 这样需要处理大量的编程效果是非常棒的。本文是响应式编程入门的优秀教程,作者从是什么、为什么的角度带领读者入门,然后通过实例的方式教会读者如何以响应式编程方式去思考。
  2. 《Facebook 的 Android 调试工具 Stetho 介绍》:Stetho 是 Facebook 出品的一个强大的 Android 调试工具,使用该工具你可以在 Chrome Developer Tools 查看 App 的布局,网络请求,sqlite,preference,一切都是可视化的操作,无须自己在去使用 adb,也不需要 root 你的设备。本文对该工具进行了演示。
  3. 《Apk 防止反编译技术第三篇 - 加密》:最近和小伙伴探讨移动开发的痛点,大家多次提到安全问题。笔者也反编译过别人的代码,但只是纯技术探究。如果你的 Apk(甚至 ipa)没有做好加密工作,那么很有可能被别人重新打包,往往还会在新的包里添加广告代码。我们可以通过第三方安全应用加固自己的 Apk,也可以手工加密 Apk。本文作者提供了一种伪加密解决方案。
  4. 《 Android 深入理解 Android 中的自定义属性》:对于自定义属性,大家肯定都不陌生,参考 Android 源码的实现步骤,可以很轻松的进行自定义。但很多同学仅仅停留在会使用的阶段。知其所以然才会有质的提升。本文作者对 Android 自定义属性中的多种参数、属性进行了深度分析。
  5. 《基与 MAT 的 Android 内存优化系列》:MAT(Memory Analyzer Tool)是一个基于 Eclipse 的内存分析工具,是一个快速、功能丰富的 Java heap 分析工具,它可以帮助我们查找内存泄漏和减少内存消耗。使用内存分析工具从众多的对象中进行分析,快速的计算出在内存中对象的占用大小,看看是谁阻止了垃圾收集器的回收工作,并可以通过报表直观的查看到可能造成这种结果的对象。作者目前更新了三篇通过 MAT 进行内存优化的文章,对于我们优化性能大有参考价值。
  6. 《Android 性能优化系列》:Google 近期在 Udacity 上发布了 Android 性能优化的在线课程,目前有三个篇章,分别从渲染,运算、内存与电量四个方面介绍了如何去优化性能,这些课程是 Google 之前在 Youtube 上发布的 Android 性能优化典范专题课程的细化与补充。该系列文章对视频中的内容进行了详细解析。
  7. 《实现 Instagram 的 Material Design 概念设计》:笔者在之前的周报中进行过本文英文版的报道,近日有小伙伴将该文章翻译成了中文。作者完整的实现了一个基于 Material Design 的 App,如果你还没有接触 Material Design,那么本文是一篇入门佳作。

开源项目

  1. awesome-android-ui:该项目整理了 Github 上比较受欢迎的 UI 组件,包括 Material、ViewPager、Dialog 等等。作者的另外一个项目awesome-android-libraries汇总了 Android 的优秀开源库。如果你发现了未被收藏的优秀组件、类库,欢迎联系作者补充。
  2. FlipViewPager.Draco:该项目实现了在 ListView 中进行滑动翻页的效果,非常的酷。
  3. RecyclerView Animators:RecyclerView Animators 是一款为 RecyclerView 添加动画的开源库,不过目前只支持添加、移除动画。

工具

  1. 在线 Apk 反编译工具:反编译如此成熟的时代,不需要去敲命令、去找各种工具,上传 Apk 到网站,然后起身泡杯茶,1 分钟后回来 Apk 就帮你反编译好了。该工具支持在线阅览 AndroidManifest 文件,如果要看源码需要下载到本地。

感谢崔康对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们,并与我们的编辑和其他读者朋友交流。

移动Android语言 & 开发架构