如何在apk中更改文件并在不使用java但使用php的情况下更改cert.sf和manifest.sf

如何在apk中更改文件并在不使用java但使用php的情况下更改cert.sf和manifest.sf,php,android,apk,sign,manifest.mf,Php,Android,Apk,Sign,Manifest.mf,我是新来的。我还没有找到解决我问题的办法。 为什么我需要这个?我正在构建一个基于Joomla的系统,用于在php主机上快速定制Android应用程序创建,没有安装java,人们可以在自己的设备上轻松开发和安装应用程序。因此,我只对PHP或类似于通用的解决方案感兴趣,这些解决方案也可以在PHP中实现。只有改变文件解压,而不是反编译是一个选项。没有apktool,没有其他类似的东西。我正在使用带有自生成的键的调试包。或者类似的东西,因为我是一个开始的电话差距开发 例如,我想要我自己的应用图标,或者在

我是新来的。我还没有找到解决我问题的办法。 为什么我需要这个?我正在构建一个基于Joomla的系统,用于在php主机上快速定制Android应用程序创建,没有安装java,人们可以在自己的设备上轻松开发和安装应用程序。因此,我只对PHP或类似于通用的解决方案感兴趣,这些解决方案也可以在PHP中实现。只有改变文件解压,而不是反编译是一个选项。没有apktool,没有其他类似的东西。我正在使用带有自生成的键的调试包。或者类似的东西,因为我是一个开始的电话差距开发

例如,我想要我自己的应用图标,或者在AndroidManifest.xml中更改它的标题。并更新cert.sf的sha1摘要哈希和已更改文件的manifest.sf。我需要人类可以理解的程序一步一步地

PHP提供了sha1和base64编码以及更多类似的编码。 我试图获得相同的代码,如cert.sf和manifest.sf(以前没有更改任何文件),但我无法这样做。我尝试了一些愚蠢的方法来sha1文件并将其base64,但结果与前面提到的文件一样

拜托,我不需要这样的回答

让我说,这个问题的答案将帮助人们,或者至少有助于构建应用程序开发系统

附言。 对于AdobeAIR应用程序,我将尝试对.apk应用程序执行相同的操作。我希望它不会产生同样的问题。但主要问题不是关于它

更新: 我从这类话题中感觉到,在这件事上没有任何实际的帮助,有时甚至被认为是负面的。因此,我要做的是使用一个额外的服务器来制作应用程序(简单的命令:cordova build),并将生成的应用程序发送到请求它的服务器。这只是因为由于一些未知的原因,我无法使用php(调试包)对任何文件进行签名。但是为什么呢?它的效果似乎与使用java在附加服务器上安装running stuff的效果一样,不是吗

更新:
我认为不会有任何答案。因此,我使用家用计算机托管java的.air和.apk应用程序不是最好的主意-两台服务器一台不专业。手动或通过api构建应用程序是非常有趣的。免费的一个应用可以是私有的,也可以是开源的。那里也支持IOS和Windows。

如果更改文件,则必须使用现有证书退出APK。 APK文件是用java工具签名的,所以你不能仅仅通过编辑一些文件来手动完成,你需要证书的私钥


也许您应该尝试在Joomla服务器旁边添加一个Java应用程序,并使用jarsigner对生成的APK进行签名。

谢谢您。反应真快。我是新来的,很惊讶。我曾考虑过Java应用程序或其他服务器,但这是最后的选择,如果以一种稳定的专业方式进行,这将是一种昂贵的方式。Java主机非常昂贵,而且我目前没有足够的钱。有人知道我如何像jarsigner那样完成调试apk包的工作吗?你知道,我可以想象我从f.e.cert.rsa获取一些密钥或证书代码,我可以用它来处理f.e.AndroidManifest.xml文件,它可以工作。但我不知道该怎么办。我仍然希望有一种方法可以满足我的需要。正如我读到的“如果你更改了一个文件,你必须用现有的证书退出APK。”。为什么我必须辞职?但jarsigner以某种方式签署了该文件,并且有(或正在)一个工具来反编译apk并再次编译它。那么,为什么不只更改一个文件来完成jarsigner所做的相同工作呢?