Android Studio中的基本视图活动错误

uurv41yg  于 2023-10-14  发布在  Android
关注(0)|答案(8)|浏览(138)

大家好,我试图在Android Studio中使用Java制作新项目,但当我想运行该项目时,出现了一些问题:

  • 检查AAR元数据时发现4个问题:

1.依赖项“androidx.navigation:navigation-common:2.7.0”要求依赖于它的库和应用程序针对版本34或更高版本的Android API进行编译。

:app is currently compiled against android-33.

此外,Android Gradle插件8.1.0的最大推荐编译SDK版本为33。
建议采取的行动:将此项目的Android Gradle插件版本更新为支持34的版本,然后更新此项目以使用至少为34的compileSdk。
请注意,更新库或应用程序的compileSdk(允许使用较新的API)可以与更新targetSdk(选择应用程序进入新的运行时行为)和minSdk(确定应用程序可以安装在哪些设备上)分开进行。
1.依赖项“androidx.navigation:navigation-runtime:2.7.0”要求依赖于它的库和应用程序针对版本34或更高版本的Android API进行编译。

:app is currently compiled against android-33.

此外,Android Gradle插件8.1.0的最大推荐编译SDK版本为33。
建议采取的行动:将此项目的Android Gradle插件版本更新为支持34的版本,然后更新此项目以使用至少为34的compileSdk。
请注意,更新库或应用程序的compileSdk(允许使用较新的API)可以与更新targetSdk(选择应用程序进入新的运行时行为)和minSdk(确定应用程序可以安装在哪些设备上)分开进行。
1.依赖项“androidx.navigation:navigation-fragment:2.7.0”要求依赖于它的库和应用程序针对版本34或更高版本的Android API进行编译。

:app is currently compiled against android-33.

此外,Android Gradle插件8.1.0的最大推荐编译SDK版本为33。
建议采取的行动:将此项目的Android Gradle插件版本更新为支持34的版本,然后更新此项目以使用至少为34的compileSdk。
请注意,更新库或应用程序的compileSdk(允许使用较新的API)可以与更新targetSdk(选择应用程序进入新的运行时行为)和minSdk(确定应用程序可以安装在哪些设备上)分开进行。
1.依赖项“androidx.navigation:navigation-ui:2.7.0”要求依赖于它的库和应用程序针对版本34或更高版本的Android API进行编译。

:app is currently compiled against android-33.

此外,Android Gradle插件8.1.0的最大推荐编译SDK版本为33。
建议采取的行动:将此项目的Android Gradle插件版本更新为支持34的版本,然后更新此项目以使用至少为34的compileSdk。
请注意,更新库或应用程序的compileSdk(允许使用较新的API)可以与更新targetSdk(选择应用程序进入新的运行时行为)和minSdk(确定应用程序可以安装在哪些设备上)分开进行。* enter image description here这是我的gradel build ->
插件{ id(“com.android.application”)}
Android { namespace =“com.arzju.myapplication”compileSdk = 33

defaultConfig {
    applicationId = "com.arzju.myapplication"
    minSdk = 24
    targetSdk = 33
    versionCode = 1
    versionName = "1.0"

    testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}

buildTypes {
    release {
        isMinifyEnabled = false
        proguardFiles(
            getDefaultProguardFile("proguard-android-optimize.txt"),
            "proguard-rules.pro"
        )
    }
}
compileOptions {
    sourceCompatibility = JavaVersion.VERSION_1_8
    targetCompatibility = JavaVersion.VERSION_1_8
}
buildFeatures {
    viewBinding = true
} }

依赖关系{

implementation("androidx.appcompat:appcompat:1.6.1")
implementation("com.google.android.material:material:1.9.0")
implementation("androidx.constraintlayout:constraintlayout:2.1.4")
implementation("androidx.navigation:navigation-fragment:2.7.0")
implementation("androidx.navigation:navigation-ui:2.7.0")
testImplementation("junit:junit:4.13.2")
androidTestImplementation("androidx.test.ext:junit:1.1.5")
androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")

}
我将一些lib和sdk的版本更改为34,33,用于编译和目标,但它不起作用

8ehkhllq

8ehkhllq1#

要解决在Android Studio中使用基本视图Activity时出现的错误,请尝试以下步骤:
在Android Studio的右手边(顶部角落找到SDK Manager点击这里),并打开弹出窗口。然后复选框选中Android API level 34并下载它。然后下载成功,然后完成和ApplyOk .然后,转到文件并搜索Invalidate Caches and Restart,然后等待。然后重建你的项目,并按照下面的代码:
build.gradle文件(模块应用程序):

android {
compileSdkVersion 34

defaultConfig {
    applicationId "com.appynitty.navapur_citizen"
    minSdkVersion 23
    targetSdkVersion 34
    versionCode 6
    versionName "1.0"
    multiDexEnabled false
    testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}}

build.gradle(project_file):

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

然后在Android Studio中,转到文件选项并选择设置。搜索Gradle并检查JDK要求,JDK11

shstlldc

shstlldc2#

在defaultConfig上方添加这行代码

compileSdk = 34
von4xj4u

von4xj4u3#

我刚刚添加了implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.20"到我的dependenciesbuild.gradle (:app)文件,问题就消失了。

ecfdbz9o

ecfdbz9o4#

我解决了这个问题,将其添加到build.gradel.kts(:app)

constraints {
        implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.0") {
            because("kotlin-stdlib-jdk7 is now a part of kotlin-stdlib")
        }
        implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.0") {
            because("kotlin-stdlib-jdk8 is now a part of kotlin-stdlib")
        }
    }

它会是这样:

dependencies {
    constraints {
        implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.0") {
            because("kotlin-stdlib-jdk7 is now a part of kotlin-stdlib")
        }
        implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.0") {
            because("kotlin-stdlib-jdk8 is now a part of kotlin-stdlib")
        }
    }
    implementation("androidx.appcompat:appcompat:1.6.1")
    implementation("com.google.android.material:material:1.9.0")
    implementation("androidx.constraintlayout:constraintlayout:2.1.4")
    implementation("androidx.navigation:navigation-fragment:2.7.0")
    implementation("androidx.navigation:navigation-ui:2.7.0")
    testImplementation("junit:junit:4.13.2")
    androidTestImplementation("androidx.test.ext:junit:1.1.5")
    androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
}

请参阅官方Kotlin文档中的这篇说明,了解对齐如何与这些依赖项和构建标志一起工作。下面的原始答案是一种替代方法,它没有考虑到这一点。上面的约束部分可以与其他依赖项一起添加。选择与您实际想要使用的版本相匹配的版本(这里是1.8.0),该版本应该是您的非jdkN命名版本在重复类错误中的版本(例如(org.jetbrains.Kotlin:kotlin-stdlib:1.8.0))

w3nuxt5m

w3nuxt5m5#

我必须做到这两点:

compileSdkVersion 34

targetSdkVersion 34

dependencies {
    constraints {
        implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.8.0") {
            because("kotlin-stdlib-jdk7 is now a part of kotlin-stdlib")
        }
        implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.8.0") {
            because("kotlin-stdlib-jdk8 is now a part of kotlin-stdlib")
        }
    }
v8wbuo2f

v8wbuo2f6#

设置:

android {
    namespace = "com.example.myapplication"
    compileSdk = 34

    defaultConfig {
        applicationId = "com.example.myapplication"
        minSdk = 24
        targetSdk = 33
        versionCode = 1
        versionName = "1.0"

        testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
    }

build.gradle.kts中,更改以下内容:

compileOptions {
    sourceCompatibility = JavaVersion.VERSION_1_8
    targetCompatibility = JavaVersion.VERSION_1_8
}

这是:

compileOptions {
    sourceCompatibility = JavaVersion.VERSION_17
    targetCompatibility = JavaVersion.VERSION_17
}

此外,从Project Structure将Android Gradle插件版本设置为8.1.0,将Gradle版本设置为8.1。
然后转到文件->设置->构建工具-> Gradle,将Gradle JDK路径设置为:jbr-17 JetBrains Runtime version 17.0.6. jbr-17 C:\Program Files\Android\Android Studio\jbr

yuvru6vn

yuvru6vn7#

在您项目build.gradle文件中,
ID 'org.jetbrains.kotlin.android'版本'1.6.21'应用错误

ID 'org.jetbrains.kotlin.android'版本'1.8.20'应用错误
sycn和重建。

yizd12fk

yizd12fk8#

我认为在build.gradle/build.gradle.kts中可以改为:

compileSdk = 34

targetSdk = 34

然后在gradle.properties中,你可以在最底部添加:

android.suppressUnsupportedCompileSdk=33,34

相关问题