aapt: 打包时不要跳过(null)文件

0 投票
1 回答
708 浏览
提问于 2025-04-16 11:16

我正在开发一个安卓应用,这个应用里用了一些放在 res/raw 目录下的 Python 脚本,这些脚本是通过 SL4A 部署的,并且包含在应用的 APK 文件里。因为这些脚本需要用到 Python 的一些包,所以它们的目录里有一些大小为 0 字节的 __init__.py 文件,这些文件是让 Python 识别这些目录为包所必需的。

我遇到的问题是,aapt 在打包的时候跳过了这些文件,这导致脚本在设备或模拟器上无法正常工作,因为解释器找不到这些模块。

[aapt] Creating full resource package...
 [null]     (skipping (null) file '/home/user/app/res/raw/pypackage/__init__.py')

有没有办法让 aapt 包含这些文件,还是说我必须手动把这些文件的大小改大到大于 0kb?我已经查看过 aapt 的命令行选项,但没有找到相关的信息。

1 个回答

0

如果这就是你唯一的问题,你可以在 __init__.py 文件里加一个注释 '#'。
如果你发现目录结构还有其他问题,可以用 tar 或 zip 压缩文件,等安装完 APK 后再解压出来。

撰写回答