IM 即时通讯 (441)
Android (208)
- 初始化&链接 (8)
- 事件&监听处理 (7)
- 用户信息 (13)
- 会话列表 (15)
- 聊天会话 (26)
- 消息处理 (35)
- 自定义消息 (6)
- 音视频 (2)
- 推送&通知 (34)
- 扩展功能 (4)
- 第三方地图 (3)
- 依赖&配置 (9)
- 升级说明 (3)
- 其他 (43)
iOS (168)
- SDK 导入 (10)
- 连接 (8)
- 事件处理 (2)
- 用户信息 (3)
- 会话列表 (14)
- 聊天会话 (44)
- 消息处理 (25)
- 自定义消息 (8)
- 推送&通知 (19)
- 扩展功能 (5)
- 国际化 (4)
- 音视频 (3)
- 其他 (23)
Web (36)
Server (29)
Android IM SDK 转成 AndroidX 版本说明文档
回答:
IMSDK 转 AndroidX
本文档只针对==Android 的 IM SDK======
由于目前 IM 官方提供的 SDK 版本所引用的都为正常 support 包下的 class,所以当用户使用 androidx 环境编写项目的时候引用的 sdk 会出现包找不到的现象
androidx 概述:
Google 2018 IO 大会推出了扩展库 AndroidX,AndroidX 是对 android.support.xxx 包的整理后产物。由于之前的support包过于混乱,所以,google推出了 androidX 用于替换support包。其只是将原来的android.替换成androidx.,只有包名和Maven工件名受到影响,原来的类名、方法名和字段名不会更改。由于在后续版本中,会逐步放弃对 support 的升级和维护,所以,我们必须尽快迁移到 androidX
转换思路概述:
其实只是谷歌的类迁移了包名,本质是上 class 跟之前没有差异,所以我们把包名替换调就行
转换步骤(基于 AndroidStudio)
目前 AndroidStudio 已经提供了只能替换包名的方式
1、新建一个 demo 将需要转换的 sdk moudle 引入到此项目中
2、转换步骤
1)修改 gradle.properties android.useAndroidX=true android.enableJetifier=true 其中:
android.useAndroidX=true 表示当前项目启用 androidx
android.enableJetifier=true 表示将依赖包也迁移到androidx。如果取值为false,表示不迁移依赖包到androidx,但在使用依赖包中的内容时可能会出现问题。
2)将AS更新至 AS 3.2 及以上 将 Gradle 插件版本改为 4.6 及以上 将 compileSdkVersion、targetSdkVersion,28以上,buildToolsVersion 版本改为 28.0.2及以上
3)在AndroidStudio 3.2 或更高版本中执行如下操作: Refactor > Migrate to AndroidX 如果你的项目 compileSdkVersion 低于28,点击Migrate to AndroidX...会提示: You need to have at least have compileSdk 28 set in your module build.gradle to refactor to androidx