0

我的应用程序中有几个包,用户可以根据不同的价格选择每个包。在服务器端,我存储了一些客户端信息,例如设备 ID、Android ID 等。

根据用户选择的套餐,例如用户选择了 2 小时计划,服务器向我发送过期时间并将其存储在本地数据库中。

问题是检查试用期是否过期的最佳方法是什么?如果用户在 12:00 购买 2 小时计划,则到期时间为 14:00。我将 14:00 存储在数据库中,每次应用程序午餐时,我都会检查数据库。但问题是如果我们假设用户正在使用应用程序如何关闭应用程序或提示用户计划已过期?如果手机的时间被用户更改,我如何理解?

使用服务是最好的方式吗?你有什么建议?

============== 更新:

我忘了说的一点是,由于我们办公室的一些限制,我只能访问我正在设计的三个活动,我不能问其他正在从事这个项目的开发人员,检查这个并检查那个或使用这个变量。但是因为我正在从事主要活动,所以这个活动是唯一可以访问数据库的活动。

4

2 回答 2

1

您应该在 中维护一个标志,SharedPreference如果设置了该标志,您可以显示到期消息而不是您的正常活动。AlarmManager一旦您的期限到期,您就可以使用更新标志。

这里有一些关于AlarmManagerSharedPreferences的教程。

于 2011-12-13T08:58:39.240 回答
0

最简单和最好的方法是实现 BackupSharedPreferences。

即使卸载并重新安装应用程序,也会保留首选项。

只需将安装日期保存为首选项即可。

这是理论:http: //developer.android.com/reference/android/app/backup/SharedPreferencesBackupHelper.html

这是示例: Android SharedPreferences Backup Not Working

:) 皮特

于 2013-07-25T19:39:13.850 回答