android - 为什么“androidx.appcompat”和“android.support.v7”库不兼容某些版本的Android Studio?
问题描述
我在大学讲课时使用 Android Studio 制作了一个 android 应用程序。然后我将项目上传到驱动器,回家后,在我安装了最新的Android Studio后,我打开我的项目,几乎每一行代码都被标记为找不到库。
我发现在我使用的计算机上进行开发时,android.support.v7.app.AppCompatActivity
它在家里无法识别。所以我尝试在家里创建一个空项目,我发现它使用androidx.appcompat.app.AppCompatActivity
.
我尝试的一个解决方案是删除所有导入的库,然后让 Android Studio 导入他需要的东西,但这很愚蠢。每次切换工作站时,我都必须这样做。
为什么不能只有一个图书馆?是否有其他解决方案,而不是重新导入所有库?
解决方案
您的问题是“将项目上传到驱动器”,它还保存了 .idea 文件夹,其中存储了有关 IDE 和计算机的所有内容。因此,您正在另一台计算机上打开一个项目,其中包含通往旧计算机的路线。解决方案:
- 关闭 Android Studio 然后从项目中删除 .idea 和 .gradle 文件夹,重新打开
- 文件/无效缓存并重新启动
推荐的解决方案使用 git 之类的版本控制系统。Android Studio 在与 VCS 集成方面做得非常好。在菜单中查找 VCS/启用版本控制集成,您需要事先安装 git 并知道如何使用 git。
还有一点,新的 AS 版本有一个同步 gradle 图标,是一个带有和箭头的大象,有时 gradle 上的大变化可能会被忽视,所以点击它。还有通常的、干净的项目或重建项目。
问题的另一部分是:不同的库。引入 Androidx 是为了将支持库整合到 1 个库中。建议使用它。如果最新版本的 Android Studio 不支持它,那么您将不得不更新另一个桌面上的 IDE
推荐阅读
- android - ViewModel 的 observe() 方法没有正确观察
- go - 通过 Golang 代码使用服务帐户凭据从 GCR 中提取图像
- python-3.x - 如何跟踪可移动 QTab 的本地位置?
- python - 使用 NEOS 作为 Pyomo 求解器
- swift - 在 Stripe PaymentOptionViewController 中未调用添加新卡
- ios - 如果不推荐使用 NetService,我应该如何在 macOS 上执行 mDNS?
- java - spring boot 用类建模 MySQL 原生查询结果而不创建表实体
- asciidoc - 跨部分共享编号的编号列表
- python - AttributeError:“命名空间”对象没有属性“out_dir”
- pine-script - 如何在 Pine Script 中的特定蜡烛上绘制自动框?