![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
模块化
奈何若何
这个作者很懒,什么都没留下…
展开
-
360外置插件无法加载&360RePlugin AndroidX化后的坑
具体的技术文档可以直接搜索360RePlugin官方技术文档,本文只解决问题问题一:classpath 'com.android.tools.build:gradle:3.1.4'和官方文档一样配置的,但是使用的是外部插件加载也就是说我们把插件plugin下载到sdcard,然后在RePlugin.intsall("xxx")但是发现加载成功了,然后PluginInfo pi = RePlugin.install(fileName);这里我说明下repload最好使用线程,不然直原创 2020-06-14 10:00:01 · 1560 阅读 · 1 评论 -
架构日记(十)Sophix-Hotfix集成中,友盟和阿里系jar包冲突的解决方案-离线集成
友盟推送SDK依赖部分阿里系SDK功能,其中使用并封装了TNet SDK、Network SDK、ACCS SDK三个SDK,如果与以上三个SDK冲突,必须去掉您自己使用的三个中的SDK,同时使用了alicloud httpdns SDK、alicloud utls SDK、utdid SDK ,如果与以上三个SDK冲突,您可以去掉冲突中的一个即可(注意版本兼容)。感谢您的支持与厚爱!友盟Android Push SDK与阿里集团其他库出现集成冲突的解决办法引导Android Push当前使用到的阿里原创 2020-06-03 18:46:14 · 567 阅读 · 0 评论 -
架构日记(八)Android热修复框架的集成
至于AndFix和SoPhix的原理,机制我就不赘言了,网上大把的资料,阿里云上也有非常详细的说明。本文注意介绍集成的步骤一· AndFix集成config.gradle dependencies = [ ... andfix : "com.alipay.euler:andfix:0.5.0@aar" ]base.gradleapi rootProject.ext.dependencies[原创 2020-06-02 11:03:52 · 183 阅读 · 0 评论 -
架构日记(七)Android屏幕适配分辨率限定符与smallestWidth 限定符适配原理
最终效果:在 Android Studio 中安装 ScreenMatch 插件下载插件 ScreenMatch 到本地,点击菜单栏上的 File -> Settings -> Plugins -> Install plugin from disk,然后选择我们刚刚下载的插件,最后点击 “OK”,重启 Andorid Studio 即可。如下在项目的默认 values 文件夹中需要一份 dimens.xml 文件新项目没有的话我这里提供一下<?xml ver.原创 2020-05-24 17:16:59 · 397 阅读 · 0 评论 -
架构日记(六)新建Gradle Task实现打包后上传到蒲公英
前面的文章中提到了脚本自动执行打包和安装,其实将脚本重组也是可以做到一键发布的,只是每一篇文章都有自己需要解决的问题,所以没有完全串起来实现一键打包发布。首先下面贴出蒲公英的官网地址https://www.pgyer.com蒲公英开放api地址https://www.pgyer.com/doc/view/api我们需要用到的蒲公英上传的post请求的地址https://www.pgyer.com/apiv2/app/upload剩下的细节可以自己去官网查看,接下来看代码吧原创 2020-05-22 15:11:46 · 441 阅读 · 0 评论 -
架构日记(五)多渠道打包配置
AndroidManifest.xml 里设置动态渠道变量<!--多渠道打包配置--> <meta-data android:name="UMENG_APPKEY" android:value="" /> <meta-data android:name="UMENG_CHANNEL" android:value="${UMENG_CHANNEL_原创 2020-05-22 11:45:31 · 234 阅读 · 0 评论 -
架构日记(四)命令行打签名包和Gradle DSL 自动化构建(未完)
首先来解决一些问题:本文是Mac下AndroidStudio的命令行打包 adb: command not found解决方案:打开Android Studio 启动终端 Terminal;echo $HOMEtouch .bash_profileopen -e .bash_profile//配置自己的环境变量export ANDROID_HOME=/Users/mac/Library/Android/sdkexport PATH=${PATH}:${ANDROID_HOM原创 2020-05-21 16:50:05 · 152 阅读 · 0 评论 -
架构日记(三)模块化结构中的RxJava+Retrofit的搭建MVP模式
说到RxJava,最先想到的就是观察者模式,对于rxjava2还不了解的朋友们,可以通过这个链接先去了解一下https://www.jianshu.com/p/cd3557b1a474老规矩先来看看工程结构首先我的项目中使用了两款很不错的插件 Android ButterKinfe Plugin Plus 和 MVPPlugin第一步导入依赖,在base的gradle中//RxJava+Retrofit+okhttp3 api rootProject.ext.depend.原创 2020-05-20 23:04:53 · 196 阅读 · 0 评论 -
模块通信模块间服务调用ARouter-IProvider
新建工程,首先来看一下工程结构模块化是一种思想:实现它的方式有组件化,插件化等等。(模块化,多分包dex,热修复,SPI(ARouter))关键词app是主工程,base是所有模块都需要依赖,其他的属于普通模块,功能单一。这样的结构比起传统的工程结构更加高内聚低耦合。模块之间的通信其实也可以采用EventBus来传递数据,需要回调数据的时候可以将xxEventBus定义成interface也是可以的。EventBus的缺点:1.一经发出所有的接收器都可以接受,功能较为单一。2.Eve原创 2020-05-18 15:50:59 · 2480 阅读 · 0 评论