使用环境
项目中用了融云的IMKit库,这个库原本是support版,而我的项目是AndroidX版本.虽然项目中会爆红线但是不影响正常阅读和编译代码,但是看着还是很不爽.
所以要把依赖库也改成AndroidX的
方法一
一些库由纯代码组成,比如:
还以融云举例,CallKit库由代码组成,将它转为AndroidX的库步骤:
右键 CallKit 模块,点击 Refactor > Migrate to AndroidX
单击后出现如下图提示信息,建议去掉勾选(不备份)。单击 Migrate 。
点击 Do Refactor 确认迁移,Android Studio 自动执行 CallKit 迁移 AndroidX 的替换过程。
CallKit 迁移完成后,Callkit模块中 AudioPlugin、VideoPlugin 会报引用错误,删除报错的 import 语句并重新导入引用
方法二
三方库中主要代码以jar包为主,我们需要将jar包从support转为AndroidX
比如融云的IMKit项目,主要业务都在Rong_IMKit.jar中
Android 开发者官网 下载 Jetifier 工具,具体使用环境要求以页面内文档为主 下载链接
2.下载好的jetifier文件解压后,打开命令行工具.进入jetifier-standalone\bin文件夹, 使用jetifier-standalone -i -o 命令
例: jetifier-standalone -i Rong_IMKit.jar -o Rong_IMKit_For_AndroidX.jar
Rong_IMKit.jar是原本support的引入包,重新生成的Rong_IMKit_For_AndroidX.jar就是AndroidX的包了,转换成功后没有任何提示,这里因为我已经转换过了,所以会提示WARNING: [Main] No references were rewritten. You don't need to run Jetifier.
或者在项目引入IMKit包之前将IMKit文件夹复制到jetifier-standalone\bin文件夹,
使用jetifier-standalone -i IMKit/src/main/libs/Rong_IMKit.jar -o IMKit/src/main/libs/Rong_IMKit.jar命令,
即可将Rong_IMKit.jar被新生成的AndroidX版本jar包直接覆盖
3.重复方法一中的第四步即可
其他任何三方库照本宣科即可