Android 开发如何选择轮子(转)
一个项目的开发,我们不可能一切从0做起,如果真是这样,那同样要哭瞎。因此,善于借用已经做好的 “车轮” 非常重要,如:
- 网络访问框架:OKHttp、retrofit、android-async-http、volley
- 图片加载框架:Android-Universal-Image-Loader、Glide、Fresco、Picasso
- 缓存框架:DiskLruCache、 Robospice
- Json解析框架:Gson、Fastjson、Jackson
- 事件总线:EventBus、Otto
- ORM框架:GreenDAO、Litepal
- 还有其他各种各样开源的自定义控件、动画等。除了以上提到的开源框架,也包括一些不开源的SDK
- 数据统计:友盟统计,百度统计…
- 奔溃搜集:腾讯bugly、bugtags…
- 云存储:七牛…
- 即使通讯:环信、融云、阿里百川…
- 推送:小米推送、腾讯推送、百度推送…
- 安全加固:360加固宝、爱加密…
一般情况下,我在选择是否引入一些开源框架主要基于以下几个因素:
- 借助搜索引擎,如果网上有一大波资料,说明使用的人多,出了问题好找解决方案;当然,如果普遍出现差评,就可以直接Pass掉了
- 看框架的作者或团队,如 JakeWharton大神、Facebook团队等。大神和大公司出品的框架质量相对较高,可保证后续的维护和bug修复,不容易烂尾;
- 关注开源项目的 commit密度,issue的提交、回复、关闭数量,watch数,start数,fork数等。像那种个基本不怎么提交代码、提issue又不怎么回复和修复的项目,最好就pass掉;
针对不开源SDK的选择,也主要基于以下几点去考虑:
- 借助搜索引擎,查明口碑;
- 很多第三方SDK的官网首页都会告诉你,多少应用已经接入了此SDK,如果你看到有不少知名应用在上面,那这个SDK可以考虑尝试一下了。诸如,友盟官网:
- 查看SDK使用文档、它们的开发者社区、联系客服。好的SDK,使用文档肯定会详细指引你。出了问题,上开发者社区提问,他们的开发工程师也会社区上回答。实在不行只能联系客服,如果客服的态度都让你不爽,那就可以考虑换别家的SDK了。
Android 开发如何选择轮子(转)的更多相关文章
- Fedora15下安装Android开发环境
		Fedora15下安装Android开发环境需要以下步骤: 完整步骤. 1. 安装正确版本的JDK. 2. 安装Eclipse. 3. 安装ADT. 4. 安装Android SDK. 5. 安 ... 
- IntelliJ IDEA —— Android开发的另一个选择
		IntelliJ IDEA —— Android开发的另一个选择 很早就听过Eclipse的大名,但在我初学Java的时候,一位前辈推荐的IDE却是IntelliJ IDEA.因为之前用过JetBra ... 
- Android开发用过的十大框架
		http://blog.csdn.net/u011200604/article/details/51695096 本文系多方综合与转载整合,意在Android开发中能够知道和使用一些好用的第三方支持, ... 
- [转]Android开发最佳实践
		——欢迎转载,请注明出处 http://blog.csdn.net/asce1885 ,未经本人同意请勿用于商业用途,谢谢—— 原文链接:https://github.com/futurice/and ... 
- 【转】Android开发规范
		转自:https://github.com/Blankj/AndroidStandardDevelop 摘要 1 前言 2 AS 规范 3 命名规范 4 代码样式规范 5 资源文件规范 6 版本统一规 ... 
- 【转】Android 开发规范(完结版)
		摘要 1 前言 2 AS 规范 3 命名规范 4 代码样式规范 5 资源文件规范 6 版本统一规范 7 第三方库规范 8 注释规范 9 测试规范 10 其他的一些规范 1 前言 为了有利于项目维护.增 ... 
- [Android实例] 最全的Android开发资源整理--进阶必备
		本帖最后由 一切随枫 于 2014-6-9 12:08 编辑 原文链接: http://stormzhang.github.io/android/2014/06/05/android-awesome- ... 
- [转]Android开发要看的网站(不断更新中)
		Android网址或Blog Android官网 身为Android开发者不知道这个网站就太说不过去了,上面有你任何你需要的东西 Android Developers Blog Android官网博客 ... 
- Android 开发最佳实践
		原文地址:https://github.com/futurice/android-best-practices/blob/master/translations/Chinese/README.cn.m ... 
随机推荐
- matlab GUI界面编程总结
			去年做了一些关于Matlab GUI的程序,现在又要做相关的东西,回想起来,当时很多经验没有记录下来,现在回顾起来始终觉得不爽,所以从现在开始,一定要勤写记录. 从简单的例子说起吧. 创建Matlab ... 
- Centos 6.5安装bugzilla 5.0.2
			1. 下载bugzilla 下载地址:https://ftp.mozilla.org/pub/webtools/ 因为我在github上搜了一下“bugzilla cn”提示有中文语言包就下了5.0. ... 
- WCF简单使用(分别部署在控制台和IIS上)
			WCF部署到控制台 1.下面通过一个简单的服务示例来认识WCF1.新建项目,名称IBLL,解决方案名称WcfDemo,模板选择类库2.修改Class1.cs文件名称为 IUserInfoService ... 
- Beginner's Guide to Python-新手指导
			Refer English Version: http://wiki.python.org/moin/BeginnersGuide New to programming? Python is free ... 
- setAlpha与View Layer关系
			如果开启了硬件加速,它们两者是没有关系的.一个先执行,一个后执行. 如果View Layer type is VIEW_LAYER_NONE, 生成display list,然后加上alpha送入GP ... 
- PHP就业班心得:PHP的基本含义与功能特点
			PHP的含义 PHP的原始含义:Personal Home Page 个人主页 最开始是加拿大的一哥们,开发了一个在线脚本工具,用来记录有多少人访问过他的在线简历,很受欢迎,于是他就开始开发自己的工 ... 
- 用友ERP-U8最新破解(再次更新版本,附安装过程中的解决办法)
			新版用友u8.70下载地址:http://ftp.shangyuchem.com/应用软件/用友ERP-U8管理软件(8.70版).rar 准备好安装环境,因为需要SQLSERVER和IIS支持,而个 ... 
- 在eclipse上开发nodejs
			首先到官网下载nodejs.地址:https://nodejs.org/en,可根据自己的操作系统选择下载. 安装好后.进入命令行输入node ,然后输入console.log("hello ... 
- php 自动绑定di容器实现
			<?php class Bim { public function doSth() { echo __METHOD__.PHP_EOL; } } class Bar { protected $b ... 
- 65279 !!!BOM
			java.lang.NumberFormatException: For input string: "1".莫名其妙的String的第一个字符,是个空格样的东西,但绝对不是空格, ... 
