可以对调试 apk 进行逆向工程以使其成为发布 apk 吗?

逆向工程 反编译 开箱 安卓 复制保护 apk
2021-06-20 02:06:30

我正在制作一个用户可以在其中创建 Android 应用程序的系统。我希望他们提供下载调试 apk的选项,以便他们可以先试用。之后,他们必须付费才能在发布模式下获得apk,以便它可以在 Google Play 商店中分发。

我当然不希望他们能够对调试 apk 进行逆向工程,以便他们可以从中提取所需的文件,然后自己签名。因此我的问题是:

是否可以对调试 apk 进行逆向工程以提取类以及在发布模式下构建它所需的一切?

如果是这样,是否有任何方法可以保护调试版本,使其不再可能?

1个回答

调试 apk 和发布 apk 之间的区别在于,调试 apk 由 SDK 提供的特定密钥签名,而发布 apk 由其他某个密钥签名。没有什么可以进行逆向工程的:您只需要做一个发布 apk 并对其进行签名即可。

除了您之外,没有人可以创建由您签名的 apk。但是任何人都可以通过签名来制作自己的发行版 apk。

在您的情况下,一个解决方案是生成一个包含一些 DRM 的二进制文件,并拒绝运行,除非在您客户的预注册设备上运行。如何实施此类 DRM,尤其是在让您的客户调试其应用程序时,留给读者作为练习。