是否可以为从应用商店下载的硬编码到应用程序中的应用程序副本分配不同的标识符?或者他们是否将标识符永久存储在应用程序包中,以便在复制它时,密钥保留在包中?
编辑:好的,iTunes 收据怎么样,可以用来验证下载时间,因为用户必须在下载后 5 小时内向服务器注册他们的应用程序。
提前致谢
是否可以为从应用商店下载的硬编码到应用程序中的应用程序副本分配不同的标识符?或者他们是否将标识符永久存储在应用程序包中,以便在复制它时,密钥保留在包中?
编辑:好的,iTunes 收据怎么样,可以用来验证下载时间,因为用户必须在下载后 5 小时内向服务器注册他们的应用程序。
提前致谢
我假设您的目标是通过在某处拥有虚假序列号的主列表来禁用您的应用程序的部分功能。不幸的是,没有可用的每副本序列号,如果有的话,坏人会在发布您的应用程序以供下载之前更改的第一件事。
相反,您需要从应用程序内部检测您的应用程序包是否已被篡改。看到这个问题:
然后,您需要决定如何巧妙地或明显地限制功能。可能最好的解决方案是做一些无害但有点烦人的事情,从而产生特定类型的支持请求,此时您可以轻轻地促使无赖考虑购买合法副本。
一种具有更多误报但可能更少误报的方法是检查应用程序是否在越狱设备上运行。不利的一面是,越狱者很可能已经合法购买了您的应用程序,因此您疏远了诚实的客户,几乎没有额外的好处。
对于我正在开发的应用程序,它具有很大的社交/病毒性方面(我希望如此),我认为潜在的无赖可能有足够的诚实朋友来支付他们正在窃取的服务器周期,而事实并非如此值得担心。
不,没有办法做到这两点。最接近的方法是将设备 ID 存储在中央服务器上。