AS 3.5 : project needs to be converted to androidx

2019-12-02 12:26:03 +08:00
 raiz
Android Studio 3.5 后,对没有使用 AndroidX 的历史工程,新建 module 时,前置要求把工程转换为 AndroidX。
“project needs to be converted to androidx”

我觉得非常过分,转换 AndroidX 会造成非常多文件变更,开发者可能只是需要维护它,并不想大动干戈,甚至会引起同事的不满。
6746 次点击
所在节点    Android
10 条回复
Goolge
2019-12-02 14:05:16 +08:00
感觉 还是升级比较好
shily
2019-12-02 17:44:28 +08:00
难道我用的假的 AS ? 没有强制要求啊。
强制要求是因为你依赖的库使用了 AndroidX 了吧。
cppgohan
2019-12-02 18:17:04 +08:00
我用的假的 AS 3.5.2 :)
试了一下, 新开一个 google io 2016 项目.. 完全萌大奶

最近给项目切换了 androidx, 不怎么痛. 切换的收益目前看来没什么, 未来应该还是有点好处的.

毕竟开发项目, sdk 这些, 碎片化太多了也不好.
tanranran
2019-12-02 21:26:59 +08:00
升后,没啥问题。挺容易的,不升。很多库现在都用不了
kassadin
2019-12-02 21:31:24 +08:00
那就用老版本维护

androidX 只是包名变化,第三方库 Jetifier 自动转化,几乎无痛升级。
gramyang
2019-12-03 09:21:59 +08:00
不要升级!!!我刚刚就碰到一个诡异的 bug,导致 eventbus 绑定 activity 失败,查了半天连一点线索都没有!!
raiz
2019-12-03 09:51:36 +08:00
@shily @cppgohan
我不知道具体版本什么版本开始,
Android Studio 3.5
Build #AI-191.8026.42.35.5791312, built on August 9, 2019
JRE: 1.8.0_202-release-1483-b03 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 10 10.0

具体点说,我的老工程是从远古时代维护过来的,现在没有启用 AndroidX,Android Studio 可以正常打开,是新建 Module 的时候,提示的,finish 不给点
cppgohan
2019-12-03 10:20:04 +08:00
@raiz 懂了, 用向导创建 module 可能它默认给这个 module 搞成了 androidx. 不过我还是用 2016 那个, 想到新建 module.. 也能 finish, 新建的 module 依赖了 28.0.0 的 support 库, 没有依赖 androidx..

Android Studio 3.5.2
Build #AI-191.8026.42.35.5977832, built on October 31, 2019
JRE: 1.8.0_202-release-1483-b03 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 10 10.0
gramyang
2019-12-03 14:43:53 +08:00
@gramyang 搞错了。。。不是 androidx 的锅(😅)
ApmI00
2019-12-03 14:45:15 +08:00
可能因为你新建 Module 的时候,compileSDK 选择的版本问题,忘记是 28 还是多少来着,就强制使用 androidx.老项目转到 androidx 也简单,不过,有的地方有坑,特别是使用了有些依赖不严谨的第三方库的时候。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/625026

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX