Android aapt 在包含任何类型的资源时崩溃

Android aapt crash when including any kind of resources

我在使用 aapt 将资源打包到 apk 时遇到了一些问题。当我的 AndroidManifest.xml 中没有 @drawable/[...]@styles/[...] 方向时,一切正常。但是一旦我添加例如 android:icon="@drawable/icon" aapt 崩溃*在解析我的图标文件后(所以压缩图像和东西似乎工作)。

我使用的命令是:

aapt package -v -f -M AndroidManifest.xml -S res -I android.jar -F test.apk

使用 -S res 并在清单中添加 @-directions 时失败。否则成功。

输出日志:

[...]
applyFileOverlay for menu
applyFileOverlay for mipmap
Processing image: res/drawable/icon.png
Processing image: res/drawable-ldpi/icon.png
Processing image: res/drawable-xhdpi/icon.png
    (processed image res/drawable-ldpi/icon.png: 82% size of source)
    (processed image res/drawable-xhdpi/icon.png: 95% size of source)
    (processed image res/drawable/icon.png: 60% size of source)
    (new resource id icon from drawable/icon.png #generated)
    (new resource id icon from ldpi-v4/drawable/icon.png #generated)
    (new resource id icon from xhdpi-v4/drawable/icon.png #generated)
Aborted (dump written)

退出代码是 134,找不到任何相关信息

谢谢

编辑

所有资源都用于 Android Studio 项目。因为那个编译没有任何问题,我认为资源是有效的

(似乎是 aapt 或 xml 解析的问题,我认为 gradle 取代了 Android Studio 中 aapt 的任务)

此外,由于它也可能是系统特定问题,因此这是我的规格:

编辑 - AndroidManifest.xml

的内容
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.company.app"> <!-- Of cause different but no special chars -->
    <application
        android:allowBackup="true"
        android:icon="@drawable/icon" <!-- With this line, crashes -->
        android:label="Title" <!-- Again different title but only english letters -->
        android:supportsRtl="true"
        android:testOnly="false">
        <activity android:name="immerse.MAct">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

更新

在没有 @drawable/icon 但有资源的情况下再次尝试。还在崩溃。

所以这似乎不是 xml 问题

尝试调整您的图像大小(降低它们)看起来它们的分辨率非常大并且占用更多内存。

已解决!对我来说,问题现在已经解决了。我的解决方案是安装更新版本的 aapt 及其所有来自 debian sid 的依赖项。

命令现在运行没有错误!

我从 here and here 下载了所有需要的文件,从包 aapt 开始当然,dpkg 会告诉你依赖项(有些可以通过 apt 安装)

感谢这些网站!