我需要在Android中将AndroidManifest.xml文件编码为二进制xml,以将其替换为预编译的apk以更改其名称或图标。我可以在我的计算机上使用aapt
进行此操作,方法是编译一个应用并提取其清单。但这在Android中不可用。我怎样才能做到这一点? (我的意思是运行时。在我自己的应用程序中)。
如@Rediska所述,这不可能。除了构建工具外,我在应用程序的资产(dex file grabbed from android studio output,/res, android.jar, Original AndroidManifest.xml)
中拥有从头开始构建apk所需的一切。
我可以在我的应用程序中包含类似aapt
的内容,但我不知道如何使用它。请引导我朝正确的方向。(我也需要二进制文件吗?如果是,我在哪里可以找到它们?)
编译AndroidManifest.xml时,将使用资源表(resources.arsc文件)中的一些索引替换对资源的引用。因此,如果没有resources.arsc,二进制AndroidManifest.xml将会毫无用处,并且无法移植。
如果仍然需要将文本AndroidManifest.xml转换为二进制形式,请尝试使用App Builder。将您的文件重命名为manifest.xml并将其放在您的应用程序文件的res / xml文件夹中。然后构建应用程序,解压缩apk,您将获得二进制格式的文件res / xml / manifest.xml。