【发布时间】:2011-12-14 03:03:44
【问题描述】:
我正在尝试创建一个试用应用程序,它允许用户使用该服务,例如 30 天。 有没有办法在用户无法更改或删除数据的情况下在设备本身上跟踪这一点?
例如,使用 SharedPreferences 将使用户能够删除设置 -> 应用程序中的应用数据,或者简单的卸载 - 安装将删除这些数据。
【问题讨论】:
-
我为此使用了自定义网络服务。
我正在尝试创建一个试用应用程序,它允许用户使用该服务,例如 30 天。 有没有办法在用户无法更改或删除数据的情况下在设备本身上跟踪这一点?
例如,使用 SharedPreferences 将使用户能够删除设置 -> 应用程序中的应用数据,或者简单的卸载 - 安装将删除这些数据。
【问题讨论】:
您无法在设备上执行此操作 - 用户可以清除您保存的任何数据。
你有两个选择
1 - 30 天后,唠叨他们,但接受他们可能只是清除数据以摆脱唠叨
2 - 实施在线检查以跟踪手机上生成的 UUID(使用他们无法轻易更改的硬件数据)
2 工作量很大,这意味着用户必须在线才能运行您的应用程序...
【讨论】:
你为什么不创建一个只有一个字段的 SQLite 表,当一天改变时增加计数器并更新表值。
仅供参考,here 是一篇关于 Android 中 SQLite 的优秀文章。
【讨论】:
我不明白如何通过在手机上保持数据持久性来做到这一点。用户可以随时格式化 SD 卡或重新安装手机。
您可以加密文件并将其存储在设备上。通过默默无闻的安全。最好的办法是监控安装的云服务。
【讨论】: