当前位置: 首页 > 知识库问答 >
问题:

为什么我不能使用较低的API编译android studio项目?

顾乐心
2023-03-14

我用Android Studio用API 25(牛轧糖)制作了一个简单的应用程序,但现在我想为API 21(Lollipop)构建一个APK,所以我将项目结构中的“编译SDK版本”更改为API 21,但Android Studio给了我以下错误:

D:\AndroidStudioProject\ArduinoData\app\build\intermediates\res\merged\debug\values-v23\values-v23.xml
Error:(4) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'.
Error:(34) Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Button.Colored'.
Error:(4) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'.
Error:(34) Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.Button.Colored'.
D:\AndroidStudioProject\ArduinoData\app\build\intermediates\res\merged\debug\values-v24\values-v24.xml
Error:(3) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Borderless.Colored'.
Error:(4) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Colored'.
Error:(3) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Borderless.Colored'.
Error:(4) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Colored'.
Error:Execution failed for task ':app:processDebugResources'.
> com.android.ide.common.process.ProcessException: Failed to execute aapt

我知道这可能是一个图形不兼容,但我不知道如何解决它,所以你有任何想法来修复它吗?

styles.xml

<resources>

    <!-- Base application theme. -->
    <style name="AppTheme" parent="Theme.AppCompat">
        <!-- Customize your theme here.
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>-->
    </style>

</resources>

build.grandle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion '21.1.2'
    defaultConfig {
        applicationId "com.acerbisgianluca.arduinodata"
        minSdkVersion 21
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    productFlavors {
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_6
        targetCompatibility JavaVersion.VERSION_1_6
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:21.0.2'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.google.firebase:firebase-messaging:10.0.1'
    compile 'com.google.firebase:firebase-ads:10.0.1'
    compile 'com.google.firebase:firebase-core:10.0.1'
    testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'

共有1个答案

蒙奇
2023-03-14

我认为您已经在应用程序级别的构建中编写了编译器DKVersion 21和TargetSDKVVersion 25。格雷德尔档案。targetSdkVersion不应高于compileSdkVersion。您做得很正确,但没有将更新添加到API级别21的buildToolsVersionappcompatlibrary版本中。

buildToolsVersion更改为21.1.2

在应用程序级构建中将appcompat库版本更改为21.0.2。格雷德尔档案。您必须按照API级别21更新库版本。

我想这会解决你的问题。

 类似资料:
  • 我在我的项目中使用maven并且我的类没有任何错误,但是当我使用时,它会给我一个不同的错误,如下所示: [错误](使用-source 5或更高版本启用泛型) [错误]ArrayList列表=new ArrayList(); [错误]。...。 我还将maven和版本设置为1.6

  • 我有一个简单的测试设置,如 但当我尝试编译测试时,我会遇到53个错误,比如 实际上并没有传达任何关于问题所在的有用信息。我只能假设在我的构建中没有正确配置某些内容。sbt文件或其他地方。 这段代码确实曾经工作过,在我清理东西的过程中,事情发生了变化,现在它被破坏了,没有好的诊断。 有人能提出要找的东西吗?

  • 我正在做我的节目。我正在使用Sublime文本和用于编译基本Windows CMD。我有一个文件夹,在这个文件夹中我有一个包,里面有每个文件(folde todolist)。在这个包中,我有一个类(Gui.java(packgae(folder)Gui\u pckg))。此类中的代码如下所示: 导入javax。摆动导入java。awt。; 公共类Gui{ } 而且它编译得很好。 但是,当我试图编译

  • 蓝牙支持有什么问题吗? 你还知道什么问题吗?

  • 我目前正在一个名为“C:\Users\Acer\Mega\Megasync Uploads\Second Year\First Semerture\Data Structures and Algorithms\Genetic Algorithms”的文件夹中用VSCODE制作一个java文件。但是,当我点击Run时,一个错误迫使我添加父文件夹“Data Structures and Algorit

  • 奇怪的是,标记为“OK”的行编译得很好,但标记为“Error”的行失败了。它们看起来基本上是一样的。