Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何限制每天启动Android应用程序的次数_Java_Android - Fatal编程技术网

Java 如何限制每天启动Android应用程序的次数

Java 如何限制每天启动Android应用程序的次数,java,android,Java,Android,我只是想知道如何让用户在我的应用程序上一天最多两次。这意味着如果用户在一天内第三次进入,应用程序将阻止他们。请尝试通过以下步骤解决您的目的: 创建一个SharedReference,用于存储应用程序启动的计数。 启动应用程序后,立即启动MainActivity,在创建活动时,从首选项中获取值,并检查其是否已等于案例2中预定义的MAX_USES_COUNT。 如果其小于预定义的MAX_使用_计数,则将其递增1,并将修改后的值保存在sharedPref中。 如果该值已经>=MAX\u USES\u

我只是想知道如何让用户在我的应用程序上一天最多两次。这意味着如果用户在一天内第三次进入,应用程序将阻止他们。请尝试通过以下步骤解决您的目的:

创建一个SharedReference,用于存储应用程序启动的计数。 启动应用程序后,立即启动MainActivity,在创建活动时,从首选项中获取值,并检查其是否已等于案例2中预定义的MAX_USES_COUNT。 如果其小于预定义的MAX_使用_计数,则将其递增1,并将修改后的值保存在sharedPref中。 如果该值已经>=MAX\u USES\u COUNT,则只需在onCreate内调用finish。 要在日期更改时清除首选项,可以使用两种方法:

使用已注册且已更改操作日期的广播接收器。参考文献。并将pref计数设置为零。 或者,您可以在首选项中使用另一项来存储编辑pref的日期。因此,当您启动活动时,您会检查计数,并将系统日期与pref中存储的日期进行比较。
我希望这能解决你的问题。

有一个问题。如果用户在白天清除应用程序数据怎么办?在这一刻,共享引用将消失。尝试在SD卡或隐藏的模拟SD卡上记录应用程序启动的次数。

就像你在现实生活中所做的那样:保留一个用户列表,并计算他们访问的次数。没关系,那么一天后你将如何清除共享引用?正如你所说,你的应用程序通常只会被使用2次,而不是一天两次。我编辑了我的答案来解释这一部分。请检查一下,我不接受你的回答。看一看我只是支持者。哇!谢谢你的快速回复!如果您能向我展示在SharedReference中存储应用程序启动的代码是什么样子的,那就太棒了。@MagicKnight:根据社区趋势在这里编写完整的代码就太离题了。试着实现你自己。如果你对此有任何疑问,可以再问一次。在大多数情况下,如果你觉得答案有用,你可以投赞成票或接受如果考虑清楚数据的问题,则必须考虑SD卡卸载和用户删除文件的问题。实际上,SD卡数据比应用程序内存(如数据库或首选项)更容易受到用户干扰。