Android Studio 打开项目时基础组件报红(如AppCompatActivity),提示Cannot resolve symbol的解决方案

Android Studio 打开项目时基础组件报红的解决方案

1. 问题现象

在这里插入图片描述
无法import androidx 组件,提示Cannot resolve symbol。
在这里插入图片描述
使用activity继承AppCompatActivity报红,后续所有activity 函数全部报错。

2. 产生原因

AndroidX 为Google提供的组件,需要从Google仓库下载,由于国内网络问题,下载或更新时中断,导致jar/aar缺失,编译器无法识别相关函数和类。

3. 解决方法

知道了问题产生的原因,只需要让程序重新下载相关库文件即可。在build.gradle(:app)文件中找到buildTypes配置
Android Studio 打开项目时基础组件报红(如AppCompatActivity),提示Cannot resolve symbol的解决方案_第1张图片
在release同级下添加一条

repositories { maven { url "https://maven.aliyun.com/repository/google" } }

添加后如图所示:
Android Studio 打开项目时基础组件报红(如AppCompatActivity),提示Cannot resolve symbol的解决方案_第2张图片
这个配置使编译器下载Google仓库的组件时转到阿里云的镜像去下载,由于阿里云镜像链接可能改动,url应根据阿里云仓库更新。

后续

若你已经使用过上述方法,但一段时间后再次出现了相同的问题,可以采用如下方法:
同样在build.gradle中:
Android Studio 打开项目时基础组件报红(如AppCompatActivity),提示Cannot resolve symbol的解决方案_第3张图片

在dependencies块中修改appcompat依赖的版本:
Android Studio 打开项目时基础组件报红(如AppCompatActivity),提示Cannot resolve symbol的解决方案_第4张图片

可用的版本可以在开发者官网查询:
Android Studio 打开项目时基础组件报红(如AppCompatActivity),提示Cannot resolve symbol的解决方案_第5张图片
如果修改版本导致你的代码出现一些奇怪的问题,你可用在sync新版本后再次改回原版本,一样能解决问题。
注意:下载新API可能需要添加阿里云镜像仓库。

你可能感兴趣的:(android,studio,gradle,ide)