大家好。
有时,我问过要动态修改apk的问题,我想实现的目标是通过生命周期中的一些跟踪调用来跟踪从下载到卸载的ak。
首先,第一件事当然是在用户将其下载到手机上之前,找到某种方式对它进行“品牌化”。
需要注意的事情是:
我不会使用普通商店向人们提供apk。
在下载过程中,我不能让用户等待30秒钟来进行构建。
我不能要求用户“注册或登录”,我无法到达服务器的那部分,太糟糕了。
到目前为止,我只猜测过要动态修改apk代码,以在其代码中搜索模式,然后根据自己的需要进行相应的更改,然后将其保存在数据库中。
例如,假设在values.xml中有一个类似这样的网址:
www.server.com?token=xxxxxxxxxxxxxxx
在向用户提供apk之前,我搜索模式
xxxxxxxxxxxxxxx
并使用我保存在db上的字母数字值对其进行更改,之后,当用户通过apk进入url时,他将带走令牌值,而我可以继续追踪他一次又一次...好的,这就是这种情况..我的问题很简单...有什么想法吗?我疯了吗...有人已经不加努力地做到了这一点,而我正在尝试重新发明轮子吗?
最佳答案
您无法修改apk,否则将破坏签名。
您需要辞职。如果您可以辞职,则可以轻松地在自己选择的xml文件中更改值。
使用bash脚本很容易实现。
#!/bin/sh
sed -i ‘s/replace_key/actual_key/’ app/src/main/res/values/strings.xml
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore my-release-key.keystore my_application.apk alias_name
关于android - 是否可以标记“品牌” apk?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23497588/