修改apk而不反编译它

时间:2014-04-01 14:57:56

标签: php android download tracking

我知道这是一个奇怪的问题,但我有这种情况:

我直接从一个网站提供apk,这个apk里面有一个WebView,它会打开一个" secure"网站的一部分。

我想跟踪那些下载它的人,以及那些打开它的人,所以我想到了这个:

我使用以这种方式(或类似的)编写的URL编译apk:

www.myserver.com/secretplace/landing.php?token = ##########

然后,就在用户下载它之前,我用动态创建的令牌更改那些##########字符并存储在数据库中,当用户打开apk时,我可以检查令牌并认识到那是在特定时刻下载apk的用户。我想改变它,好像我在记事本中加载apk并手动更改它...

我真的明白这很奇怪,但是......你觉得它会起作用吗?

是否有人对如何跟踪为打开它的用户下载apk的用户有其他想法?

问题是:可以在不反编译的情况下修改apk吗?有问题吗?有一些限制吗?例如,"是的,你可以修改它,但你必须使用相同数量的字符"这是可以接受的。

注意: tha apk下载以及用户必须使用APK才能访问该网站的事实是强制性的。

1 个答案:

答案 0 :(得分:1)

是的,你的问题很奇怪。无论如何,你可以这样做(部分)。 apk是一个压缩文件夹,你可以打开它。但是编译了更多的代码。但是你的资产不是。因此,您可以更改某些资产文件并从您的应用中读取它。这里没有安全,但你可以使用一些登录系统,如果你想要的话(此外,无论如何在apk中使用哈希将在安全中失败,因为你可以将apk复制到另一个设备)。

还有其他方法。你可以动态编译你的apk。使用您的Web服务更改所需的代码。阅读:http://developer.android.com/tools/building/building-cmdline.html

好吧,我真的建议你尝试一些带有OAuth等令牌的登录系统(但那就是你)。