我正在制作一个系统,用户可以在其中创建Android应用程序。我希望他们提供下载调试apk的选项,以便他们可以首先尝试。之后,他们必须付费才能将apk置于发布模式,以便可以在Google Play商店中分发它。
我当然不希望他们能够撤消-设计调试apk,以便他们可以从中提取所需的文件,然后对其进行签名。因此,我的问题是:
是否可以对调试apk进行反向工程以提取类以及在发布模式下构建它所需要的一切?保护调试版本的方式,使它不再可用?
#1 楼
调试apk和发行apk之间的区别在于,调试apk由SDK随附的特定密钥签名,而发行apk由其他密钥签名。没有什么可以逆向工程的:要做一个发布apk并签名就必须要做的所有事情。但是任何人都可以通过对其进行签名来制作自己的发行版APK。在您的情况下,一个解决方案是生成一个包含一些DRM的二进制文件,并拒绝在客户的预注册设备上运行。如何实施这种DRM,尤其是在让客户调试其应用程序的同时,是读者的练习。
评论
当然,我们都知道客户端DRM的可靠性。
–锑
2013年6月11日14:36
@锑我不是说这是一个简单(或确实可以解决)的练习。
–吉尔斯'所以-不再是邪恶的'
2013年6月11日14:47
@锑:我不明白解决方案,请您解释一下?
–穆勒·乔萨(Mehul Joisar)
2014年1月24日下午5:32