跟踪用户使用 Android 试用应用程序的天数
可能的重复:
Android 试用应用程序
我正在尝试创建一个试用应用程序,它允许用户使用该服务,比如说,30 天。 有没有办法在设备本身上跟踪这一点,而用户又无法更改或删除数据?
例如,使用 SharedPreferences 将使用户能够在设置 -> 中删除应用程序数据。应用程序或简单的卸载 - 安装将删除此数据。
Possible Duplicate:
Android Trial Applications
I'm trying to create a trial application, which allows the user to use the service for, say, 30 days.
Is there a way to keep track of this on the device itself without the user being able to alter or delete the data?
Using SharedPreferences for example would enable the user to remove app data in settings -> applications, or a simple uninstall - install would remove this data.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您无法在设备上执行此操作 - 用户可以清除您保存的任何数据。
您有 2 个选择
1 - 30 天后,唠叨他们,但接受他们可能只是清除数据以摆脱唠叨
2 - 实施在线检查,跟踪他们手机上生成的 UUID(使用他们无法轻易更改的硬件数据)
2 工作量很大,这意味着用户必须在线才能运行您的应用程序...
You can't do this on-device - any data you save can be cleared by the user.
You have 2 options
1 - after 30 days, nag them but accept that they may just clear data to get rid of the nag
2 - implement an online check which tracks UUID generated on their phone (using hardware data they can't easily change)
2 is a lot of work and it means users HAVE to be online to run your App...
为什么不创建一个仅包含一个字段的 SQLite 表,在一天更改时增加计数器并更新表值。
仅供参考,这里是一篇关于 Android 中的 SQLite 的优秀文章。
Why don't you create a SQLite table just with just one field, increment the counter when a day is changed and udpate the table value.
FYI, here is an excellent article for SQLite in Android.
我不知道如何通过将数据持久保存在手机上来做到这一点。用户随时可以格式化 SD 卡或重新启动手机。
您可以加密文件并将其存储在设备上。通过默默无闻实现安全。最好的是监控安装的云服务。
I don't see how you can do this by keeping data persistant on the phone. The user can always format SD card or restage the phone.
You can encrypt a file and store it on the device. Security thru obscurity. The best be would be a cloud service to monitor installs.