繁体   English   中英

修改Android设备上已安装的APK

[英]Modifying installed APKs on an android device

我正在尝试使用Android,我想知道以下是否可行:我可以使用其他APP修改/修补已安装的APP吗?

我知道root访问是可能的,但我想知道非root用户的手机。 想到的唯一解决方案是:

- 从数据/应用程序/文件夹创建原始APK的副本 - 修补/重建它 - 修补安装的修补APK

用户需要确认安装,但从理论上讲,它可以正常工作吗? 我还没有想到的任何其他技术?

如果您想知道,我有兴趣在现有应用中注入不同的字符串和其他资源,以提供翻译或其他修改(例如:游戏中的作弊),而无需更改原始应用的来源。

你是对的,你可以在设备上做到这一点。 可以在Android上使用Smali / Baksmali ,也可以调用apktool(我只试过smali)。

一年前左右,我尝试在设备上使用smali并自动修补源输出。 网上有一些信息(我目前无法找到,对不起),但它非常有限,至少有人展示了如何正确使用smali / baksmali。 我放弃了这种方法,因为我不太擅长Java,并且电话上的资源非常有限。

我想到的另一种方法是将实际工作转移到网络中某个服务器上。 但是这有其自身的问题,因为您需要传输文件,您可能需要framework.apks,等等。

这很有趣但很难,你需要解码/解析/补丁/重建apks,这必须是可靠的。 当你失败时,最糟糕的是用户手机坏了(我想修改关键系统apks,坏主意;))。

如果重新安装是无缝的,并且您需要这样做,则更好:INSTALL_PACKAGES权限。

现在,INSTALL_PACKAGES android:protectionLevel是“ signatureOrSystem”,这意味着应用程序需要使用与用于签名系统映像相同的证书进行签名。

现在,使用与用于签署系统映像的证书相同的证书来签署一个应用程序似乎是一项困难的(如果不是不可能的)任务,因为供应商可能不愿意让其他人使用他们的证书。 然后,有些人可能希望您的应用程序包含在他们的系统映像中。 无论如何,这都不重要,因为它是Android且Android具有ROM市场。

Android ROMS与Android的一般“功能”或“功能”越来越多。 这是Android用户所期望的。 Android市场上有ROM管理器应用程序可以列出和安装ROM等。

因此,为了获得INSTALL_PACKAGES权限的应用程序,可以制作自己的ROM,或者与制作ROMS的人一起工作,或者将应用程序包含在ROM中,或者使用用于签署ROM的系统映像的证书来签署应用程序。

同样,供应商完全有可能在其“固件”(系统映像)中包含该应用程序。 您将不得不接近他们。

:)

如果两者都被您的应用程序使用。 内容提供商在apps.and之间共享数据,如果其他应用程序来自其他开发人员,那么您根本无法修改应用程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM