工程封装整理

作者: 指尖力量 | 来源:发表于2019-08-12 01:18 被阅读0次

    最近在整理项目重构的时候,突然想到,为什么不封装一个常规工程都可以用的library呢?我花了整整一个星期的时间,完成了这个工作,下面就简单的总结一下吧。

    首先先整理项目里面常规的功能:三方登陆分享、网络请求、数据存储、图片加载、极光推送、bugly崩溃日志分析、Eventbus以及一些常用的工具类。因为整个项目是mvp的一个架构模式,通过这一星期的整理,又重新认识了这个模式,才发现之前的理解很多都是片面错误的。

整个工程的目录结构

    我想通过对应的文件夹,大概就能知道里面对应的功能点。先从三方登陆分享说起,我用的是mob的sharesdk,登陆分享遇到的问题,主要的功能代码在mob文件夹下面。网络请求我用的reretrofit+rxjava(目前主流吧),主要的功能代码在network文件夹下面,整个项目的mvp的架构模式,在mvp的文件夹下面,网络请求和mvp架构也算是自己整理总结的收获吧,在使用glide的时候也遇到了一些问题,详情可以看Glide V4 新版中GlideApp配置方法androidx下Glide使用报错,Events使用很简单,这里我就不细说了,在base文件夹下面的内容也是挺重要的,因为所有的界面里面的一些功能逻辑都是直接封装在base文件夹下面的。数据存储是我之前就封装好的一个远程依赖库,数据存储的GitHub地址。这些差不多就是base这个library里面所有的功能了,为什么要把这些功能放在base这个library里面,以为现在比较流行的是模块化开发,可能其它的module会用到这些方法,只要让module依赖这个library,里面的所有功能就都可以实现了,而推送和bugly本身就是针对整个项目而言的,所有我就把它们放在了app module里面了。基本上涉及到的功能我在app module里面都写了测试的代码。特别在从0到1开发新应用的时候,就省了好多的时间和精力,只要拿到对应第三方的appkey之后在base这个library对应替换掉就可以了,这样是不是一劳永逸的事,当然随着功能点增加,后续我也会继续扩充base这个library里面的功能。整个工程的地址链接。因为测试的时候多个环境切换很麻烦,频繁的卸载安装真的很麻烦,刚刚又把多环境切换的工作做完了,在打包的时候可以指定环境。因为我都是按照对应的功能点提交代码的,实在不清楚的可以看我提交的commit信息。

    一抬头已经凌晨一点多了,被自己小小感动了一下,这也算是我一周的辛苦积累吧,特意记录一下,希望可以给浏览的你一点帮助。

相关文章

  • 工程封装整理

    最近在整理项目重构的时候,突然想到,为什么不封装一个常规工程都可以用的library呢?我花了整整一个星期的时...

  • ES6 promise版的Jsonp封装

    前面一篇整理Promise的Ajax的封装,这次做一个JSONP的封装,现在前端工程化的普及,基本上都是前后端分离...

  • iOS 封装SDK Framework遇到的问题

    最近,需要把我们的工程核心代码封装成SDK,给合作公司用,然后学了一下如何封装SDK,以及遇到的一些问题,特意整理...

  • LBXScan封装整理

    参考很多篇博客,整理、并加以注释; 支持多次扫描是需要关联Zying_objectC; 链接: https://p...

  • 数据生成脚本

    创建maven工程 主函数 main开始 for循环 创建json 添加ap 添加cm 封装启动日志 随机封装事件...

  • 汽车电子的硬件设计职责

    作为汽车电子行业的硬件工程师,工作内容很多很杂,最开始时往往只是打杂,清理实验室,整理物料,焊个小电路板,画封装等...

  • DarkNet之VS移植

    网址:Yolo的搭建和在Windows下封装以及工程应用 - CSDN博客封装yolo-windows为动态链接库...

  • unity3d与android交互

    简述 实现unity3d导出到android studio工程并封装为library,供其他工程导入module直...

  • Xcode工程整理

    这两天整理了一下工程,总结一下。 在Xcode工程目录里,有蓝色目录和黄色目录两种,它们的区别是什么? 蓝色是fo...

  • EventBus使用封装整理

    继承类: import org.greenrobot.eventbus.EventBus; import org....

网友评论

    本文标题:工程封装整理

    本文链接:https://www.haomeiwen.com/subject/tfmsjctx.html