转储标记的 aapt 错误

aapt error for Dump badging

好的,我突然遇到了这个问题,不确定是什么原因造成的,当我将 apk 上传到 Play 商店时,它说

Failed to run aapt dump badging: AndroidManifest.xml:425: error: ERROR getting 'name' attribute: attribute is not a string value

这里的清单看起来还不错

<activity
        android:theme="@ref/0x7f0b0142"
        android:label="@ref/0x7f0802ab"
        android:name="<absolute path like a.b.c.activityname>"
        android:launchMode="1"
        android:screenOrientation="1"
        android:parentActivityName="absolute path like a.b.c.activityname" />

上述查找是在最终清单上的 apk 分析器中完成的。

确实通过运行在本地进行了验证,以下均无错误

aapt 转储字符串
aapt转储权限 aapt 转储资源
aapt 转储配置

当我执行 转储徽章

时,怎么会出现错误

ERROR getting 'name' attribute: attribute is not a string value

还有

aapt list -v -a

这让人非常困惑,为什么 activity name 被字符串解析,即使它具有 a.c.b...activityname 有什么想法吗?这里发生了什么

好的,解决了 aapt 报告错误的错误

简单的solution/workaround是使用字符串资源作为类别名称。

<category android:name="@string/example" > 

替换为:

<category android:name="com.example.package">