安装后运行 IAP 检查以防止盗版
Posted
技术标签:
【中文标题】安装后运行 IAP 检查以防止盗版【英文标题】:Run IAP check for piracy prevention after installation 【发布时间】:2013-10-08 16:46:40 【问题描述】:我的应用最近被盗版了,我正在努力防止收入进一步损失。 我正在使用应用内购买系统购买该应用的高级版本。
显然有人购买了我的应用并通过备份发布了盗版版本(其中 premium=true) 现在我想在安装我的应用程序时运行 IAP 检查,以检查用户是否真的购买了高级版本。 有没有办法在我的应用安装或更新后立即执行此操作?
更新: 我必须在不使用 SharedPreferences 的情况下运行 IAP,因为它们可以轻松备份并分发备份
【问题讨论】:
“应用内购买系统”。哪一个? 官方Play Store IAP,我的应用只在play store分发 【参考方案1】:为什么不每天(或每周)检查一次?您可以将 SharedPreference 设置为上次成功完成检查的时间。当然,您会想要检查未来的日期并拒绝这些日期,因为我会这样做来绕过这样的系统。您可能希望在未来的日期上留出 24 小时的余地以适应时区的变化,但这应该不会太难。
这样,即使有人备份了您的应用,它也只能在第二天左右工作,然后再次检查。
不过,老实说,这可能没有多大帮助。如果人们在盗版您的应用程序,他们会想方设法绕过(几乎)您扔给他们的任何东西。
【讨论】:
我相信这不会解决我的问题,有人可以备份最新版本,但上述方法不起作用。唯一的解决方案是在不使用 SharedPreferences 的情况下运行代码,因为它们很容易被备份 我的应用程序非常轻量级,大多数用户每天都会多次使用它,所以这样做会太重而无法处理,这种方法最适合每周运行几次的游戏所以在启动时进行检查对用户来说不会太烦人 在我的情况下,这不是最好的主意,我的另一个想法是使用警报管理器每隔几天左右运行一次检查,但我已经读到它必须转向在屏幕上运行,这对某些人来说会很烦人,所以我正在寻找一种可以在用户使用设备时运行的解决方案 我会等待一些其他的想法,因为 AlarmManager 会打开屏幕,这可能会很烦人。 我不是指AlarmManager。我的意思是检查每次启动的时间。只有当它过期时,您才会在应用内运行 IAP。以上是关于安装后运行 IAP 检查以防止盗版的主要内容,如果未能解决你的问题,请参考以下文章
防止重放攻击 appStoreReceiptURL 应用收据