封装之路(一) BaseApp

架构基于 Dagger2 + RxJava + Retrofit + Material Design + MVVM 目标:简化开发app难度,轻松容易的实现自定义app 1:封装BaseApp 主要完成全局对象的构造,这里当前支持 Bus xmPreferences xmCompositeSubscription Logger 各个部分的作用: Bus 事件总线 ,为了相互之间传递消息使用 xmPreferences 存储简单数据 xmCompositeSubscription 为了Rx系列使用,后面会隐藏到内部,对外不需要知道这个。

Logger 输出log使用

BaseApp在构造函数里面完成: 1:判断是否是测试版本,如果是,启动性能测试,UI和内存。 默认开启 2:初始化Logger 3:初始化Component 如何使用。 1:实现自定义的Component

继承这个,然后组件里面连接 BaseAppModule.class ,将Base的功能提供上来。 自己的app继承自BaseApp,带入自己的Component,然后复写几个方法。

可以复写的函数:

initCanaryOpen() 开启是否需要性能测试 (这个到时分测试版本和release版本) initAppComponent() 初始化全局Dagger2,可以选择不用Dagger2,则丧失本框架的设计意义了,不建议。因为我做的就是基于Dagger2来实现app的基础功能支持,后续要做BaseViewModelBaseActivity来降低开发难度,直接继承去写即可。

暂时支持这些,BaseApp则写完了。各个功能后续会增加demo演示,可以直接拿来使用。

项目地址:

https://github.com/luxiaoming/xmCore

后续Baseapp添加 异常捕获功能。欢迎大家关注,支持。

原文发布于微信公众号 - 代码GG之家(code_gg_home)

原文发表时间:2016-08-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Gaussic

使用 Spring HATEOAS 开发 REST 服务

原文地址:http://www.ibm.com/developerworks/cn/java/j-lo-SpringHATEOAS/

1132
来自专栏安富莱嵌入式技术分享

【RL-TCPnet网络教程】第26章 RL-TCPnet之DHCP应用

本章节为大家讲解RL-TCPnet的DHCP应用,学习本章节前,务必要优先学习第25章的DHCP基础知识。有了这些基础知识之后,再搞本章节会有事半功倍的效果。

991
来自专栏阿杜的世界

聊聊单元测试

单元测试(unit testing):是指对软件中的最小可测试单元进行检查和验证。

1151
来自专栏JAVA高级架构

Java面试分享(题目+答案)

2873
来自专栏java学习

关于Spring 和 Spring MVC的43个问题【问题汇总】

通过Spring提供的IoC容器,可以将对象之间的依赖关系交由Spring进行控制,避免硬编码所造成的过度程序耦合。

931
来自专栏技术墨客

Hazelcast集群服务(1)——Hazelcast介绍

    “分布式”、“集群服务”、“网格式内存数据”、“分布式缓存“、“弹性可伸缩服务”——这些牛逼闪闪的名词拿到哪都是ITer装逼的不二之选。在Javaer的...

3333
来自专栏邹立巍的专栏

Linux进程间通信:共享内存 (下)

使用文件或管道进行进程间通信会有很多局限性,比如效率问题以及数据处理使用文件描述符而不如内存地址访问方便,于是多个进程以共享内存的方式进行通信就成了很自然要实现...

9050
来自专栏云霄雨霁

Java虚拟机--(互斥同步与非阻塞同步)和锁优化

2074
来自专栏JAVA同学会

Zookeeper应用之——栅栏(barrier)

barrier的作用是所有的线程等待,知道某一时刻,锁释放,所有的线程同时执行。举一个生动的例子,比如跑步比赛,所有

993
来自专栏大魏分享(微信公众号:david-share)

如何使用模拟框架测试微服务? | 微服务系列第八篇

作为开发人员尝试创建集成测试时,会遇到许多复杂问题。出现的两个最常见的问题包括与:

4422

扫码关注云+社区

领取腾讯云代金券