android support包和 androidx 冲突解决方式:
android support v4包和 androidx 冲突解决方式
最近集成百度地图API后发现与现有开发框架存在冲突。编译过程中出现无法通过的情况。进一步调查后发现具体问题源于Android支持v4包和AXDK之间的冲突。
如果你愿意花费时间。
对整个工程进行改造。
所有项目均采用androidx框架。
如果你不想过于繁琐。
采用以下方法实现兼容性:
1.首先 先让你的工程 兼容 support v4包和 androidx
在你的工程中,在 gradle.properties 文件中(如果没有新建的话,在工程最外层)添加这个代码块: enable Jetifier 启用 Android 启用 Android X

在第2步工程中进行操作:首先检查错误日志内容(若您使用的安卓 Studio 版本较高,则可直接查看具体的冲突软件包;由于我的安卓 Studio 版本较低,则直接参考错误日志)。完成上述操作后,在构建文件中通过 "排除模块:"(需特别注意应带有括号)的方式去除已知出现过的软件包干扰项。(以下仅为举例说明,请根据实际遇到的问题进行调整):
例如:
排除模块:"com.example pack1"
请根据实际情况修改具体的模块名称。
implementation files('libs/slidingMenulibrary.jar')
implementation ('androidx.core:core-ktx:1.2.0'){
exclude module: 'support-v4'
exclude module: 'support-media-compat'
exclude module: 'support-compat'
exclude module: 'core'
}
在编译过程中引入androidx.core:core-ktx:1.2.0这个包时,请注意避免导入下面列出的四个包。
尝试进行编译操作。如果成功的话那就太好了。
像我自己一样肯定还是不行。因为我的 core 包被我自己排除了。但是实际上我要使用这个 core 的包吗?这样绝对不可能发生呢。怎么办呢?似乎别无选择但得采取笨办法手动引入了吧。
请定位到gradle的配置文件夹位置,在C:\Users\lin.gradle\caches处。

接着,在输入栏输入"core"以便定位到相应的核心文件。(请注意不要找错类型为".arr"的文件而非".jar"。确定后点击获取按钮后在弹出的对话框中选择复制选项。)

复制一份到桌面后。用压缩包的方式打开。找到里面的class.jar文件

然后再复制一份到另一处
然后尝试通过压缩包的方式打开
你会感到沮丧地发现文件中存在安卓 和安卓 项目的文件夹
没有搞错的情况出现
问题源于此

删除原本Android项目的存储目录。
随后将类jar文件复制到目标工程的lib子目录中。
并将其导入目标工程的lib子目录中。
这样就完成了整个操作流程。

反正我通过这样 整了几轮之后。。。工程就能正常运行了
