Android Studio导入工程各类问题解决方案

1.报错:Plugin [id: 'com.android.application', version: '7.3.0', apply: false] was not found in any of the following sources:...

解决方法:使gradle与插件保持一致

一、改gradle:首先将项目的gradle-wrapper.properties文件的此一行改成国内镜像

distributionUrl=https\://mirror.nju.edu.cn/gradle/       

在后面的是gradle版本,推荐使用最新AS的推荐版本

注:如果不改为国内镜像则可能报错

二、改gradle插件:改项目的build.gradle文件 有两种文件格式

一种新文件

无法手动设置插件版本,系统自动匹配

一种老文件

手动将数字修改成对应的gradle插件插件版本即可

注:不知道AS版本的具体gradle和插件,可以新建一个项目后从File-》project structure-》project中查看对应的版本

根据官网Android Gradle 插件 8.4 版本说明  |  Android Studio  |  Android Developers匹配gradle和其插件(一般都用最新的的AS、gradle和插件就行)

2.报错:Namespace not specified. Specify a namespace in the module's build file: 

(老项目导入新版本AS时的通病)

解决办法:添加namespace标签

在每一个模块中,都有一个build.gradle文件和AndroidManifest.xml,现在需要做的就是把AndroidManifest.xml中package="com.xxx.xxx"包名添加到模块对应的build.gradle中。
每一个模块都要添加,包括主App模块。

从一个模块的AndroidManifest.xml中复制以下package属性值

复制到根目录\app\中的build.gradle中声明namespace(项目文件排序为Project)

或复制到gradle scripts中的build.gradle中声明namespace(文件排序为Android)

两张方式只是文件显示不一样,修改的文件都是同一个,按自己的界面来即可。

修改完后会有一个提示重建窗口弹出,点击Sync now即可

本方式原文链接:https://blog.csdn.net/ykmeory/article/details/139634020

2.报错:直接跳转到某一switch-case代码的开头

解决办法:将switch-case结构改为if-else结构

由于老版本的AS语法检查不强,可以使用switch-case,但新版本不允许使用,导入老项目后只能做出更改。推荐使用Chat GPT进行更改,以下为例图

其他:

1.报错:Could not resolve gradle:gradle:8.7

解决:有时候Gradle缓存可能损坏。尝试删除用户主目录下的Gradle缓存(c:/user/用户名/.gradle/caches),然后重新运行你的构建。

2.导入项目时不要使用HTTP代理,并且删除.gradle文件下的gradle.properties文件的末尾的几行HTTP代理代码

  • 17
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值