AGP 支持正式版 Compose 的最低版本

简介: AGP 支持正式版 Compose 的最低版本

之前写了一篇 《Compose 与 AGP、KGP 的关系》的文章,其中我说了这么一段话:


其实,AGP 对 Compose 的影响仅仅只作用于 TaskManager 中是否有无添加 compose-compiler 依赖,如果 AGP 有,则 Compose 与 AGP 版本无关。所以,大家如果想了解自己老项目是否能直接接入 Compose ,可以看下自己项目的 AGP 版本,然后看下这个版本的 TaskManager 源码,目前我查看的 AGP 4.1.0 版本是有的。笔者的项目是 4.2.2 的 AGP ,已成功接入 Compose 1.1.0 版本并跑起来


这段话中描述 AGP 4.1.0 支持 Compose 有点用词不准确,我先说下结论 : AGP 4.1.0 是支持 Compose 的,但 Compose 的正式版本是从 AGP 4.2.0 开始支持的

在我发掘  AGP 4.1.0 版本的 TaskManager 类时发现:


image.png

如果不仔细看的话真的发现不了问题,你看 compose-compier 这个依赖的 group 是 androidx.compose,然后去官方文档看下 compose-compiler 依赖的 group :

image.png

怎么变成了 androidx.compose.compiler 了,然后我去 mvnrepository 上看了下 androidx.compose:compose-compiler 发布的有哪些版本:


image.png


最高的版本止步于  1.0.0-alpha03 版本,这也太坑了,这也就说明,我在上篇文章中说的通过 composeOptions 来配置 Compose 不同的正式版本在 AGP 4.1.0 及其以下是没有作用的。


然后说下我是怎么发现这个问题的,我在依赖 AGP 4.1.0 版本看源码时,突然想看下  Compose-Compiler 的源码,然后为了好复制,我就直接把  TaskManager 类中配置 Compose-Compiler 的依赖给复制了过来,在 build.gradle 中我给配置了个 1.2.0 版本,然后怎么配置版本都无法把依赖下载下来,我就去官方文档复制了个 Compose-Compiler 版本,然后对比一看,居然依赖的 Group 不一样,然后我就赶紧对比了下 AGP 4.2.0 版本是没问题的,这时确定,AGP 4.1.0 配置的 Compose-Compiler 不是正式版的依赖。

目录
相关文章
|
3月前
|
SQL 安全 关系型数据库
SQLynx 发布 3.0.0 版本
SQLynx 发布 3.0.0 版本
113 1
|
7月前
|
小程序 IDE 开发工具
社区每周丨基础库更新至 2.8.8及IDE3.6.3 Beta 版本上线(4.3-4.7)
社区每周丨基础库更新至 2.8.8及IDE3.6.3 Beta 版本上线(4.3-4.7)
82 11
|
7月前
|
资源调度 大数据 流计算
CloudEon V1.3.0版本发布!
CloudEon V1.3.0版本发布!2023 年最后一个版本了,感谢朋友们的支持,祝大家新年快乐🎉🎉,咱们明年再见!
|
Kubernetes 大数据 Java
CloudEon V1.2.0版本发布!
CloudEon V1.2.0版本发布!实现用k8s job进行初始化服务任务,替换原来用ssh执行命令的方式,提高兼容性和更好监听状态和获取日志等
132 1
|
数据建模 Windows
会声会影2023最新版本号是多少?有哪些新功能
平时大家可能会经常听到有人说会声会影,但是很多人都不知道这是什么软件。其实听它的名字就知道这是一款和声音、影像有关系的软件。下面,小编就来给大家具体介绍一下这款软件吧。
202 0
|
定位技术 ice
OSGeoLive 15.0 版本发布
OSGeoLive 15.0 版本发布
156 0
|
Web App开发 数据安全/隐私保护 iOS开发
【干货分享】说说测试版iOS(Beta)系统怎么装吧!
【干货分享】说说测试版iOS(Beta)系统怎么装吧!
367 0
|
安全 iOS开发 开发者
iOS 6版本与之前版本差异总结
iOS 6版本与之前版本差异总结
130 0
|
应用服务中间件
2.55.0 版本发布
信息摘要: 1. Dubbo 服务治理 公网体验 专业版试用 跨账号访问 EDAS 日志功能优化适用客户: EDAS 全体客户版本/规格功能: 1. Dubbo 服务治理。支持动态配置、权重调整、负载均衡、全局配置服务治理功能。
584 0
|
Web App开发 JavaScript 前端开发