- 博客(12)
- 收藏
- 关注
原创 Dagger2使用
Dragger2是安卓使用的依赖注入的方式,开发从IOC控制翻转转换到apt依赖注入。注入方式:构造函数注入,接口方式注入,注解方式注入。第一步:添加lib包compile 'com.google.dagger:dagger:2.12'annotationProcessor 'com.google.dagger:dagger-compiler:2.12'第二步
2017-12-26 13:49:25 190
原创 SharePreference封装使用
/** * Created by malei on 2017/2/8. */public class SharePreferenceUtils { private static final String NAME = "properties"; private static SharedPreferences get(Context context, String us
2017-12-26 13:41:51 415
原创 加快app的启动速度
想要加快app的启动速度,最重要的就是在app启动时候,对第三方插件进行初始化做一些处理。对于我开发的多款软件,我总结了,加快app启动分三步。第一步:在Application中onCreate()进行第三方工具初始化public void onCreate() { super.onCreate(); ApplicationService.start(th
2017-12-20 16:16:46 1063
原创 gradle 区分debug和realse自动化打包
项目也写完了,混淆也做好了,然后就打包呗,打包区分debug版本和realse版本,只需要在gradle中设置下就可。//开发用 yyyy-MM-dd 打包提测 yyyy-MM-dd_HH-mm-ss 因为精确到秒 android studio 就不能自动安装apkdef timeForDebugFileFormater = "yyyy-MM-dd"def timeFor
2017-12-20 14:15:16 5757
原创 手机号输入实时验证
import android.text.Editable;import android.text.TextWatcher;import android.widget.EditText;/** * @author by malei on 2017/12/19. * 手机号实时验证 */public class PhoneFormatUtils implements TextWatc
2017-12-19 13:16:56 1275
原创 Rxjava编程思想
随着android越来越成熟,为了开发更方便出现了不少新的开发框架,其中Rxjava是一个不能被忽视的重点。Rxjava是响应式开发,它是一种特殊观察者模式,被观察者订阅观察者。和bolts框架正好反过来。第一部分:角色Rxjava分成两个角色,观察者和被观察者。1)观察者:Observer类,但是因为该类并不好的可以满足开发的需求。之后推出
2017-12-16 12:24:00 784
原创 Toast的优化操作
当我们在使用Toast的时候,发现如果有连续的10个Toast,需要show,我们就需要等待前9个都show()完成后,才能展示自己的,这样肯定是不好的,我们应该做到当要展示第10个Toast的时候,直接展示,而不是等待,这样我们需要对Toast进行处理下,我们使用下软引用。public void show(Context context){ //如果当前的Toas
2017-12-15 13:55:26 350
原创 使用Proguard进行代码混淆
项目重构已经完成,使用了最新的retrofit框架,现在最后一步就是对代码进行混淆了。代码混淆使用了Proguard技术。第一步:公共不混淆操作########必须的progrud配置#######指定代码的压缩级别-optimizationpasses 5#包明不混合大小写-dontusemixedcaseclassnames#不去忽略非公共的库类-dontskipn
2017-12-15 13:37:58 805
原创 使用Gradle进行统一依赖管理 - 版本,jar包
当我们项目过大,需要进行组件式开发时,会涉及多个项目,每个项目都可能使用第三方提供的jar包,但是如果jar包不统一的话,会造成编译失败。我们可以通过gradle 来对整个项目进行统一版本管理。避免发生一个项目里使用了Rxjava1.0的版本又引入了Rxjava2.0的版本。第一步操作:在项目里创建config.gradle文件ext { android
2017-12-13 10:36:37 5849
原创 算法-冒泡排序
算法有人说难,有些人说容易,其实算法只是一种解决问题的思想。最简单的算法应该就是冒泡排序了。第一部分:什么是冒泡排序 将相邻的两个数据进行比较,并交换的排序算法。从后向前,依次相邻两个元素进行比较,符合条件的话,就进行交换。 f(n) 与 f(n-1) 进行比较,进行n-1次比较过程。 需要进行n-1轮比较,每一次比较都可
2017-12-13 10:32:03 177
原创 算法- 前言
计算机编程 分成两部分:数据结构 + 编程语言。 编程语言是为了实现功能,数据结构是为了更高效的执行程序。第一部分:算法的分类 在开发中,我们将算法分为两类:排序,查找第二部分:排序方法的分类 根据数据的大小将排序分为:内排序,外排序。 内排序:当数据量不大时,可将数据一次性放入内存空间,进行排序,返回结果。 外排序:因为数据量非常的大,一次性无法将
2017-12-11 15:44:03 237
原创 Okhttp内部解析
okhttp是一个网络请求类库,与httpURLconnection是同一级别的,OKHttp比起httpURLconnection做了大量的性能优化和在使用上的优化。第一部分:实例创建okhttp关键的类是OkHttpClient。它有两种构造方式,如下: 1) OkHttpClient client = new OkHttpClient();//使用构造方法直接
2017-12-05 14:16:58 477
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人