Android 开发时你遇到过什么相见恨晚的工具或网站?

对于很多Android/ios/wp个人移动开发者来说,开发一个具有网络功能的应用不是一件容易的事,不仅需要购买/租赁服务器,还必须掌握一门诸如Java/.net/php这类的服务器开发语言,每开发一款移动应用程序,就必须开发维护对应的服务器程序。这一切对于移动开发者来说,都是一个冗长的噩梦。今天发现现在有这样的云平台可以让开发者只需注册一个帐号,成功后申请创建任意多个数据库,获得对应的Key,下载对应版本的SDK并将其嵌入到移…
关注者
11040
被浏览
386912

在实际Android开发过程确实会有很多相见恨晚的工具或网站出现,下面是我自己的一些分享。

源码网站

github.com/googlesample

Android系统每次推出一些新特性,Google都会写一些Demo放在Github上,对于想要了解新特性怎么玩的同学,肯定不能错过它。

codota.com/

如果你不知道一个Android的类怎么用,可以在Codota上面快速的找到很多不错的示例代码。

android-arsenal.com/

你是否还在为找不到合适的开源库而苦恼,Android Arsenal这个网站已经帮你做了一定的分类,可以帮你提高不少效率。

android.googlesource.com

Android所有的源代码都在这里,只需找到对应想要的模块,用Git克隆下来即可。比如,我想要的framework代码。

androidxref.com/

克隆Android一个模块的代码量是很多的,有时候我只想要几个类的代码怎么办?AndroidXRef这个网站可以让你单独搜索某个类,要哪几个下载哪几个即可。

grepcode.com/

除了AndroidXRef可以查看某个类的源代码外,GrepCode同样也能做到。而且GrepCode不限于Android的源码,这里也推荐一下。

源码分析

源码分析的网站很多,这里举几个比较经典的网站。

a.codekk.com/

国内Android源码分析的先驱,由滴滴的技术专家Trinea发起,坦白的讲,这个项目对我的影响很大,我也从这里开始体会源码解读的魅力的。

0xcc0xcd.com/p/index.ph

老罗,罗升阳的个人博客站点,很多人看过他博客里面是如何分析Android和Chrome的源代码的。非常好的一个网站,以前功力不够没能看懂文章,经过一段时间后再回去翻看一些文章,不得不赞。

gityuan.com/

GitYuan,MIUI系统工程师,他的博客经常分享Android系统源码解读的文章,质量很高。而且,更新频率也很高!

github.com/LittleFriend

CJJ,猪场(网易)的开发者,由他带领发起的Android SDK源码解析,同样推荐。

酷炫动画

github.com/airbnb/lotti

Airbnb开源的动画库,为什么推荐它,是因为它让复杂酷炫的动画效果轻松实现了,不仅提高工程师的效率而且性能非常客观。我在YY工作,内部已经有一套和它实现原理一样的框架,所以看到Lottie的时候,一点不觉得奇怪,考虑可能还有不少童鞋应该还不知道它,这里再推荐一下。(PS:Lottie还有iOS、React Native、Web端的实现哦)

Crash搜集

bugly.qq.com/

Bugly,腾讯出品的SDK,对Crash搜集的体验非常赞,能搜集到JNI层的奔溃以及监控线上的ANR问题。

try.crashlytics.com/

Crashlytics,国外的一个SDK,我自己没用过,但是用过的朋友对它的评价颇高。

github.com/ACRA/acra

ARCA,一个开源的崩溃日志搜集器,轻松让你实现客户端的崩溃日志上传到后台,如果你不喜欢接入别人家的SDK,可以使用它。有一个不足之处,就是它搜集不到JNI层的奔溃。

逆向分析

逆向分析工具太多,举几个经典的做例子。

github.com/skylot/jadx/

Jdax,轻轻一下,立马让apk宽衣解带,下面是我拿知乎开刀的例子。

github.com/google/andro

Classyshark,轻松查看apk内部每个包的方法数,用了哪些开源库,同样拿知乎开刀做例子。

github.com/JesusFreke/s

smali代码调试插件,你以为没有拿到安卓Java源码就不能调试了吗?图样图森破了吧。

hex-rays.com/products/i

IDA Pro,逆向大利器,不管你是smali还是so文件,照样动态调试你。

注意,这些用来涨知识就好,别干坏事!

AS插件

Android Studio插件很多,只推荐两个我常用的。

github.com/mcharmas/and

帮助继承Parcelable的类自动生成相应代码,在没遇见它之前,手动写过大量的Parcelable实现代码,真的好痛苦。

github.com/zzz40500/Gso

根据JSON数据快速生成Java实体类,又一波解放生产力。

调试利器

facebook.github.io/stet

Stetho,来自Facebook,它能做什么?无需root,借助Chrome可以查看SharePreferences和数据库中的数据,此外还有网络抓包以及查看View树等。

性能优化

hukai.me/

胡凯,腾讯开发者,翻译了一系列的Google Android性能优化典范的文章。

hujiaweibujidao.github.io

Hujiawei,魅族开发者,博客最近经常更新Android性能数据搜集统计的相关的文章,本人受益匪浅。

最后

零零散散大致就分享一下这些,顺手也整理到我的技术视界 - 知乎专栏了。

欢迎关注微信公众号:技术视界