Android开发实战经验总结

Android开发实战经验总结

1.好习惯
对于一些字符常量要进行全局变量化和类引用:
//Activity间使用Intent传递数据的两种写法:
//写法①
Intent intent = new Intent(this, DestActivity.class);
intent.putExtra(“param”, “clock”);
SrcActivity.startActivity(intent);

String param = getIntent.getStringExtra(“param”);

//写法②
Intent intent = new Intent(this,DestActivity.class);
intent.putExtra(DestActivity.EXTRA_PARAM, “clock”);
SrcActivity.startActivity(intent);
//DestActivity获取Srcactivity传递过来的数据。
public final static String EXTA_PARAM = “param”;
String param = getIntent.getStringExtra(EXTA_PARAM);
显然第一种写法是入门的小学生。我们要善于整理自己的代码


2.找好框架
网络访问框架:okhttp、retrofit、android-async-http、volley
图片加载框架:Android-Universal-Image-Loader、Glide、Fresco、Picassco
缓存框架:DiskLruCache、 Robospice
Json解析框架:Gson、Fastjson、Jackson
事件总线:EventBus、Otto
ORM框架:GreenDAO、Litepal
还有其他各种各样开源的自定义控件、动画,后期添加。
数据统计:友盟统计,百度统计…
奔溃搜集:腾讯bugly、bugtags…
云存储:七牛…
即使通讯:环信、融云、阿里百川…
推送:小米推送、腾讯推送、百度推送…
安全加固:360加固宝、爱加密…
一般情况下,我在选择是否引入一些开源框架主要基于以下几个因素:
借助搜索引擎,如果网上有一大波资料,说明使用的人多,出了问题好找解决方案;当然,如果普遍出现差评,就可以直接Pass掉了
看框架的作者或团队,如 JakeWharton大神、Facebook团队等。大神和大公司出品的框架质量相对较高,可保证后续的维护和bug修复,不容易烂尾;
关注开源项目的 commit密度,issue的提交、回复、关闭数量,watch数,start数,fork数等。像那种个基本不怎么提交代码、提issue又不怎么回复和修复的项目,最好就pass掉;
针对不开源SDK的选择,也主要基于以下几点去考虑:
借助搜索引擎,查明口碑;
很多第三方SDK的官网首页都会告诉你,多少应用已经接入了此SDK,如果你看到有不少知名应用在上面,那这个SDK可以考虑尝试一下了。诸如,友盟官网:
接入友盟的App:
- 查看SDK使用文档、它们的开发者社区、联系客服。好的SDK,使用文档肯定会详细指引你。出了问题,上开发者社区提问,他们的开发工程师也会社区上回答。实在不行只能联系客服,如果客服的态度都让你不爽,那就可以考虑换别家的SDK了.


3.抽象依赖第三方框架
举例讲解

ImageLoader imageLoader = ImageLoader.getInstance();
imageLoader.displayImage(imageUri, imageView);
imageLoader.loadImage(imageUri, new SimpleImageLoadingListener(){
@Override
    public void onLoadingComplete(String imageUri, View view, Bitmap loaderdImage){
    //Do whatever you want with Bitmap
    }
});

这种做法看似合理,但是带来的问题也最严重的。如果我有几十上百个地方都这么写,到后来;我听说Facebook出了个神器 Fresco,想要换掉 Android-Universal-Image-Loader ,你就会发现你需要丧心病狂的去改动几十上百个地方的代码,不仅工作量大,而且还容易出错。造成这样的原因,就在于项目和加载图片的框架之间形成了强耦合,而实际上,项目本身不应该知道我具体用了哪个加载图片的框架。
GitHup Demo

4.MVC到MVP

MVP
MVP
5.Demo会持续更新,请期待。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值