android studio导入外部项目

问题

这里是为了导入教材的项目,其中该教程代码使用Android studio2019编写,本人使用的是Android studio 2023。

在Android studio中直接导入其他人写的项目时,由于路径原因会出现问题,无法构建项目,我这里报错是:

text 复制代码
Caused by: org.gradle.api.internal.plugins.PluginApplicationException: Failed to apply plugin [id 'com.android.internal.application']

解决

首先在项目文件夹中删除.gradle 和.idea文件夹。

接着打开Android studio ,选择导入项目

选中该项目后导入。如果提示

点击ok即可,该操作是修改项目下local.properties中sdk.dir设置,如果先修改就不会提示,不过android studio可以自动检查就没必要手动修改了。

接着可以在项目中看到build.gradle文件。

该文件是配置gradle和sdk版本,可以直接手动修改

bash 复制代码
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    ext {
        agp_version = '你的agp版本'
    }
    repositories {
        google()
        jcenter()
    }
    dependencies {
    //"$agp_version修改为gradle版本"
        classpath "com.android.tools.build:gradle:$agp_version"

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

不过这里手动修改有点麻烦,而且可能出错。

这里推荐的是直接修改项目结构中agp和gradle version属性,修改agp版本后文件build.gradle会被自动修改。(这里修改agp目的是为了自动更新该build.gradle文件)

修改好的agp版本的gradle 版本后如果出现下面对的问题,这是因为gradle版本不匹配只需要修改gradle版本,修改为推荐版本。上图中是7.2。在项目结构中修改后再次加载。发现成功构建

项目成功运行。

相关推荐
mmsx7 小时前
Android 签名校验为什么能拦住二次打包:指纹与完整性校验
android·签名
jason.zeng@15022078 小时前
使用vscode+flutter开发android程序(入门)
android·vscode·flutter
事圆则缓8 小时前
Kotlin学习导航:从知识树走到项目与面试
android·开发语言·kotlin
天空之城--8 小时前
近一周Android开发动态:AI编码、Compose与自适应实践
android
mmsx8 小时前
Android 混淆挡不住二次打包:一条完整的攻击链与突破口
android·混淆
jason.zeng@15022079 小时前
路由 + 登录页面 + Token 持久化
android studio
聚美智数17 小时前
智能结构化识别-图片结构解析-图像结构化解析-照片结构化解析
android·java·数据库
devilnumber20 小时前
避坑_IDEA 提取方法(Extract Method)工具
java·ide·intellij-idea
mmsx1 天前
Android 插件化架构:40 个 Gradle 模块的拆分、通信与共存
android·kotlin