我正在尝试查看是否可以远程更新用户手机上的应用程序无需下载 .apk文件。 (这是我的“老板”的信息收集请求。他认为这在 iOS 上是可能的,所以他希望我在 Android 上检查一下)。
本质上,我试图让我的应用程序偶尔从我们的网络服务器中提取版本号,看看它是否需要更新,如果需要更新,那么应用程序会请求许可,然后下载新文件(更新源代码、.xml 布局文件、图像等),从而完全不需要从 Play 商店下载我们的 APK(大小为 50mb)来进行修补程序甚至小的功能更新。
据我发现:
我可以下载资源/数据文本文件,可以读取这些文件以获取更多内容,但无法真正修改源代码,因为......
APK 文件在创建时本质上是“烘焙”的,因此源代码、.xml 文件等被最小化、重命名和混淆,这意味着向现有 APK 添加新功能或修补程序将很困难。我认为你可以更改图像,但仅此而已。
我相信糖果粉碎传奇当他们下载新关卡时(不涉及游戏商店的应用内更新)会以某种方式执行此操作,但这可能只是方法1。Firebase远程配置的简要研究也有类似的东西,但预设参数的限制意味着尝试使用它进行修补/更新可能会不稳定。
我是正确的还是我错过了一些明显的东西?
我认为你的问题可以通过使用来解决patching
系统。
一些图书馆可以帮助你:
-
Tinker https://github.com/Tencent/tinker
Tinker是Android的热修复解决方案库,它支持dex、库和资源更新,而无需重新安装apk。
-
AndFix https://github.com/alibaba/AndFix
AndFix 是一种在线修复错误而不是重新分发的解决方案
安卓应用程序。它作为 Android 库分发。
Andfix 是“Android 热修复”的缩写。
AndFix支持Android版本2.3到7.0,ARM和X86
架构,Dalvik 和 ART 运行时,32 位和 64 位。
AndFix补丁的压缩文件格式是.apatch。这是
从您自己的服务器发送到客户端以修复您的应用程序的错误
原则
AndFix的实现原理是方法体的替换,
...
-
Amigo https://github.com/eleme/Amigo
Amigo 是一个修补程序库,可以修复 Android 应用程序的几乎所有内容。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)