【问题标题】:How to fix "Execution failed for task ':app:processDebugResources'. > Android resource linking failed"[Android/Flutter]如何修复“任务 ':app:processDebugResources' 执行失败。> Android 资源链接失败”[Android/Flutter]
【发布时间】:2019-06-06 17:04:34
【问题描述】:

它突然发生了。一天我运行我的代码,它工作得很好,第二天,没有接触我的 build.gradle 文件或任何其他构建文件,这个错误就弹出了。

我尝试了很多不同的解决方案,例如更改我的 buildToolsVersion 或将 AAPT(不记得哪个)的特定标志设置为 false。没有任何效果。 我的 app\build.gradle 文件:

 android {
 compileSdkVersion 27
 buildToolsVersion '27.0.3'

 sourceSets {
     main.java.srcDirs += 'src/main/kotlin'
 } 

 lintOptions {
     disable 'InvalidPackage'
 }

 defaultConfig {
     // TODO: Specify your own unique Application ID 
     (https://developer.android.com/studio/build/application-id.html).
     applicationId "com.skydevs.bookx"
     minSdkVersion 16
     targetSdkVersion 27
     versionCode flutterVersionCode.toInteger()
     versionName flutterVersionName
     testInstrumentationRunner 
     "android.support.test.runner.AndroidJUnitRunner"
 }

 buildTypes {
     release {
         // TODO: Add your own signing config for the release build.
         // Signing with the debug keys for now, so `flutter run --release` 
         works.
         signingConfig signingConfigs.debug
     }
 }
 }

 flutter {
     source '../..'
 }

 dependencies {
   implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
   testImplementation 'junit:junit:4.12'
   androidTestImplementation 'com.android.support.test:runner:1.0.2'
   androidTestImplementation 'com.android.support.test.espresso:espresso- 
   core:3.0.2'
   implementation 'com.google.firebase:firebase-core:16.0.1'
 }

 apply plugin: 'com.google.gms.google-services'

我得到的错误是:

Execution failed for task ':app:processDebugResources'.
> Android resource linking failed
  Output:  C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\incremental\mergeDebugResources\merged.dir\values-v28\values-v28.xml:7: error: resource android:attr/dialogCornerRadius not found.
  C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\incremental\mergeDebugResources\merged.dir\values-v28\values-v28.xml:11: error: resource android:attr/dialogCornerRadius not found.
  C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:905: error: resource android:attr/fontVariationSettings not found.
  C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:905: error: resource android:attr/ttcIndex not found.
  error: failed linking references.

  Command: C:\Users\baada\.gradle\caches\transforms-1\files-1.1\aapt2-3.2.1-4818971-windows.jar\a5cc63922d025d4315a498efa486650c\aapt2-3.2.1-4818971-windows\aapt2.exe link -I\
          C:\Users\baada\AppData\Local\Android\sdk\platforms\android-27\android.jar\
          --manifest\
          C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml\
          -o\
          C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\processed_res\debug\processDebugResources\out\resources-debug.ap_\
          -R\
          @C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\incremental\processDebugResources\resources-list-for-resources-debug.ap_.txt\
          --auto-add-overlay\
          --java\
          C:\Users\baada\AndroidStudioProjects\bookx\build\app\generated\not_namespaced_r_class_sources\debug\processDebugResources\r\
          --custom-package\
          com.example.bookx\
          -0\
          apk\
          --output-text-symbols\
          C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\symbols\debug\R.txt\
          --no-version-vectors
  Daemon:  AAPT2 aapt2-3.2.1-4818971-windows Daemon #0
  Output:  C:\Users\baada\.gradle\caches\transforms-1\files-1.1\appcompat-1.0.2.aar\aa44270b14856bd5a0b17a3c0a45cb34\res\values-v28\values-v28.xml:9:5-12:13: AAPT: error: resource android:attr/dialogCornerRadius not found.

  C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\incremental\mergeDebugResources\merged.dir\values-v28\values-v28.xml:11: AAPT: error: resource android:attr/dialogCornerRadius not found.

  C:\Users\baada\.gradle\caches\transforms-1\files-1.1\core-1.0.1.aar\bc8b94f938baa5558925fd51b49cb6bf\res\values\values.xml:89:5-125:25: AAPT: error: resource android:attr/fontVariationSettings not found.

  C:\Users\baada\.gradle\caches\transforms-1\files-1.1\core-1.0.1.aar\bc8b94f938baa5558925fd51b49cb6bf\res\values\values.xml:89:5-125:25: AAPT: error: resource android:attr/ttcIndex not found.

  error: failed linking references.
  Command: C:\Users\baada\.gradle\caches\transforms-1\files-1.1\aapt2-3.2.1-4818971-windows.jar\a5cc63922d025d4315a498efa486650c\aapt2-3.2.1-4818971-windows\aapt2.exe link -I\
          C:\Users\baada\AppData\Local\Android\sdk\platforms\android-27\android.jar\
          --manifest\
          C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\merged_manifests\debug\processDebugManifest\merged\AndroidManifest.xml\
          -o\
          C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\processed_res\debug\processDebugResources\out\resources-debug.ap_\
          -R\
          @C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\incremental\processDebugResources\resources-list-for-resources-debug.ap_.txt\
          --auto-add-overlay\
          --java\
          C:\Users\baada\AndroidStudioProjects\bookx\build\app\generated\not_namespaced_r_class_sources\debug\processDebugResources\r\
          --custom-package\
          com.example.bookx\
          -0\
          apk\
          --output-text-symbols\
          C:\Users\baada\AndroidStudioProjects\bookx\build\app\intermediates\symbols\debug\R.txt\
          --no-version-vectors
  Daemon:  AAPT2 aapt2-3.2.1-4818971-windows Daemon #0

【问题讨论】:

标签: android android-studio flutter


【解决方案1】:

今天,我在我昨天工作的项目中遇到了同样的错误。

一些升级导致这个错误IMO,我的解决方案是:

  • 通过 Android Studio 打开项目

  • 打开android/build.gradleandroid/app/build.gradle

  • 只需纠正 IDE 警告的内容,它通常会警告您的 SDK、Kotlin 和 Gradle 版本等。

这不是强制性的,但您可以检查您的 .bashrc 导出或环境变量,有时它可以解决一些问题。

编辑:当您更新 SDK 版本时,不要忘记升级您的项目依赖项。

【讨论】:

  • 感谢您的友好解答。有很多这样的帖子,但没有一个具有如此准确的答案。
【解决方案2】:

我认为这取决于您使用的 android 模拟器 API 级别。

在我的例子中,我使用了 android 模拟器 API 30,但 compileSdkVersion28,所以我得到了错误!通过将compileSdkVersion 更新为30,一切正常!

操作系统:Ubuntu 20.04 LTS
Android 模拟器 API 30
Dart 2.10.2
Flutter 1.22.2

【讨论】:

    【解决方案3】:

    我在使用颤振时遇到了同样的错误,但在我的情况下,问题是由我的 Adroid 项目中“res”文件夹中的文件中的行不正确引起的。

    您需要检查您的代码,在我的情况下,它正在调用我的 android/app/src/main/res/launcher/drawable/launch_background.xml 文件中不存在的资源,确保您的所有资源和xml文件没问题。

    【讨论】:

      【解决方案4】:

      检查一下 How to fix "Execution failed for task ':app:processDebugResources'. > Android resource linking failed"[Android/Flutter]

      我在使用颤振时遇到了同样的错误,但在我的情况下,问题是由我的 Adroid 项目中“res”文件夹中的文件中的行不正确引起的。

      您需要检查您的代码,在我的情况下,它正在调用我的 android/app/src/main/res/launcher/drawable/launch_background.xml 文件中不存在的资源,确保您的所有资源和xml文件没问题。

      【讨论】:

        【解决方案5】:

        请检查您的 strings.xml,它应该是这样的:

        <?xml version="1.0" encoding="utf-8"?>
        <resources>
            <string name="app_name">App Name here</string>
            <string name="facebook_app_id">2206883509627625</string>
            <string name="fb_login_protocol_scheme">fb2206883509627625</string>
        </resources>

        特别注意添加这一行:

            &lt;string name="app_name"&gt;App Name here&lt;/string&gt;

        【讨论】:

          【解决方案6】:

          确保您已连接到 Internet 并重建项目。这解决了我的问题。

          【讨论】:

            猜你喜欢
            • 2019-06-27
            • 2022-01-04
            • 1970-01-01
            • 1970-01-01
            • 2019-10-31
            • 2020-02-28
            • 1970-01-01
            • 2020-01-03
            • 2023-03-16
            相关资源
            最近更新 更多