IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> Android组件化 -> 正文阅读

[移动开发]Android组件化

研究主流的组件化后,优化了下自己搭建的组件化架构,项目实现以kotlin+mmvm+协程+组件化+composingBuild,看网上很多用buildSrc的方式依赖库,其实也没啥改变,某个依赖改版本整个都要同步,用composingBuild方式就是将版本依赖的配置全部放置到另一个module中,它以插件库的代码形式与项目根文件夹同级。

想说下注意事项
1.用composingBuild的依赖初始搭建时经常依赖不成功,配置脚本写错等,实在是经常爆红。。。那么其实也别担心,来回就是那几板斧。

  • a.注意脚本文件的配置settings.gradle,这里需要配置module,因为组件太多的使用其实不应该和功能库module同级,我就把它套了层文件夹coreLib,每次创建新的module都需要修改此文件;

  • b.修改同级项目根的build.gradle,这里统一配置组件化是集成模式library还是组件化单独运行com.android.application,我的As版本是3.6.3,会有apply
    plugin: 'kotlin-android-extensions’升级的4自行替换高版本;

  • c.当出现依赖找不到,先看库有没正常依赖写好,然后不行关闭As,到项目的文件夹中将缓存生成的文件手动删除,包括
    /build,/.gradle,/.idea,*iml,包括versions库也要删除;

  • d.依赖库下载问题是头疼的,因为公司外网都在被墙的基础上又限制了一拨,普通的等待下载依赖库基本失败,在项目根gradle.properties文件内设置代理的端口,我是用免费代理软件https://s3.amazonaws.com/psiphon/web/mjr4-p23r-puwl/zh/index.html;在设置–本地代理端口–随机写固定的端口就行,文件gradle.properties要应用此端口的/Http/https
    64991 ; SOCKS 64990;

    2.组件化中都会有组件引用Application的问题,我研究下网上的做法都是反射获取,可问题app壳组件在非集成模式是没法获取module组件的代码类引用,所以非集成模式下会爆红,但是集成下就正常此时我们就一般在versions库设置isDebug=false,如果同步后爆红请退出As重启就行。(同步按图标大象,sync project with gradle files)

    3.这里没有用databing,牛油刀,这两个我确实不想用在xml文件下写代码读码时非常难受,至于jetpack其实liferecycle,viewmodel,livedata,room,workmanager,paging,navigation用过都差不多,可是老项目也没太多必要。至于数据存储结构响应界面变化,一般做法都是数据库room管理用Repository处理每张数据表的操作函数,然后viewModel又对应复写Repository的数据管理并关联livedata响应界面,我觉得架构很清晰,大家可以玩下,我这里只用mmkv封装了下保存参数。
    项目组件化架构
    项目代码:https://github.com/1006245347/component_android
    记录下~

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-03-12 17:41:04  更:2022-03-12 17:41:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 18:56:23-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码