【问题标题】:"Error: No resource found that matches the given name..." aapt on cmd line“错误:找不到与给定名称匹配的资源......” cmd 行上的 aapt
【发布时间】:2014-01-21 17:13:46
【问题描述】:

我遇到的问题是,当我尝试使用 cmd 行和 aapt 顺序创建 .apk 文件时,它给了我以下错误:

"...\res\layout-land\activity_statistics.xml:2: error: Error: No resource found that matches the given name (at 'background' with value '@drawable/bg_session')."

此错误会进一步影响所有布局和可绘制文件夹。 我的cmd命令如下:

"...\Android\sdk\platform-tools\aapt.exe" 
package -v -f 
-A "...\workspace\WBRLight\assets" 
-M "...\workspace\WBRLight\AndroidManifest.xml" 
-S "...\workspace\WBRLight\res" 
-I "...\Android\sdk\platforms\android-17\android.jar" 
-F "...\workspace\WBRLight\bin\WBRLight.unsigned.apk" "...\workspace\WBRLight\bin"

我检查了我的文件是否已损坏并已清理我的项目文件夹。 使用 eclipse 可以正常工作,但我想使用 cmd 行命令。

有人可以帮帮我吗?从三天开始,我现在尝试解决它...

【问题讨论】:

  • 检查“bg_session”是否在您的可绘制文件夹中..!!
  • 这是我做的第一件事。它在里面。
  • 没有人有解决方案的想法吗?

标签: ant cmd nine-patch aapt


【解决方案1】:

所以我想通了: 我必须先“处理” res 文件夹中的所有图片:

aapt crunch -v -S \res -C \bin\res

然后我将源文件夹指向 res 目录和 bin\res 目录。还添加了 --no-chrunch --generate-dependencies

aapt package --no-crunch --generate-dependencies -v -f 
-M \AndroidManifest.xml" 
-S \bin\res
-S \res 
-A \assets 
-I \android.jar 
-F \bin\APPNAME.unsigned.apk \bin 

现在它工作得很好。还有.9.png 9patch 图片。

【讨论】:

    【解决方案2】:

    我发现在使用多个原生扩展时,可能会出现文件名冲突。等等两个不同的扩展名使用相同的文件(和相同的路径)

        res/values/strings.xml 
    

    在 ANE 内部和 APK 打包过程中,当这些资源合并到 temp 文件夹时,该文件将被覆盖,导致类似的错误消息。

    目前我找到的解决方案是输入 ANE 存档并重命名冲突文件。如果可能,您也可以联系扩展程序的作者进行更新或自行重建。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多