当前位置: 首页 > 知识库问答 >
问题:

难道不可能在后台有一个每24小时都会被调用的代码吗?[已关闭]

孙琨
2023-03-14

想改进这个问题吗 通过编辑此帖子,更新问题,使其只关注一个问题。

在我的应用程序中,我对用户的积分进行排名。但是,我每24小时计算一次我的排名。我的问题是我不知道应该在不打扰用户的情况下将计算代码放在哪里。

难道不可能在“后台”有一个代码,每24小时调用一次吗?因为目前,计算的代码是在24小时后第一个用户使用我的应用程序时调用的,但随后用户必须等待几分钟,直到计算结束。我的每个用户的数据都保存在Firebase中。

提前感谢!

共有2个答案

舒浩邈
2023-03-14

对于您的情况,我建议使用默认的Android工具来安排作业。您可以尝试使用新的WorkManager或仅使用JobScheduler。您还可以尝试深入阅读本文以获取更多信息。

梁福
2023-03-14

2019年4月22日编辑:

最近,Google Cloud发布了Cloud Scheduler,它允许您将HTTP请求或Cloud Pub/Sub消息安排到您部署的功能。

这项新服务在Firebase上也能很好地工作,为此,我建议您阅读Doug Stevenson在Firebase博客上写的一篇优秀文章,名为Scheduling Cloud Functions for Firebase(cron)。

难道不可能在“后台”有一个代码,每24小时调用一次吗?

是的,这是可能的。在这种情况下,您应该在Cloud Functions for Firebase中编写一个函数,并在需要时调用它。如果您想每24小时触发一次,请使用以下服务:

  • https://cron-job.org/en/

这意味着即使用户关闭了应用程序,您也可以进行特定的计算。有关代码示例,请参阅Frank van Puffelen在以下帖子中的回答:

  • Firebase触发的云功能是否准时
 类似资料:
  • 问题内容: 在我的应用程序中,我对用户的得分进行排名。但是,我仅每24小时计算一次我的排名。我的问题是我不知道在不打扰用户的情况下将计算代码放在哪里。 是否不可能在“后台”中每24小时调用一次代码?因为此刻,当第一个用户在24小时之后使用我的应用程序时,将调用计算代码,但是随后用户必须等待几分钟,直到计算结束。我每个用户的数据都保存在Firebase中。 提前致谢! 问题答案: 编辑2019年4月

  • 问题内容: 每次调用时,React都会重新渲染所有组件和子组件吗? 如果是这样,为什么?我以为这个想法是,当状态改变时,React只能渲染所需的内容。 在下面的简单示例中,尽管onClick处理程序始终将设置为相同的值,但是在随后的单击中状态不会改变,这两个类都在单击文本时再次呈现。 我曾希望只有在数据更改的情况下才会进行渲染。 这是示例代码,例如JS Fiddle和嵌入式代码段: 问题答案: 每

  • 我为PHP代码设置了一个Cron作业,使其每20分钟运行一次。但它每次都会杀死EC2T2Micro实例。以下是服务器日志。Pls帮助。 ip-172-31-42-52登录:[20332.164336]内存不足:杀死进程1241(java)得分174或牺牲子 [20332.192538]杀死进程1241(java)总计-VM:1473180KB,Anon-RSS:176012KB,文件-RSS:0K

  • 问题内容: 每次调用时,React都会重新渲染所有组件和子组件吗? 如果是这样,为什么?我以为这个想法是,当状态改变时,React只渲染所需的内容。 在下面的简单示例中,尽管onClick处理程序始终将设置为相同的值,但是在随后的单击中状态不会改变,这两个类在单击文本时都再次呈现。 我曾希望只有在数据更改的情况下才会进行渲染。 这是示例代码,例如JS Fiddle和嵌入式代码段: 问题答案: 每次

  • 在任何情况下,一段在C和C++中都有效的代码在用每种语言的标准编译器编译时会产生不同的行为吗? 为了使它成为一个合理/有用的比较(我试图学习一些实际有用的东西,而不是试图在问题中发现明显的漏洞),让我们假设: 没有与预处理器相关的内容(这意味着没有对、pragmas等进行攻击) 实现定义的任何内容在两种语言中都是相同的(例如,数字限制等) 我们正在比较每个标准的最新版本(例如,C++98和C90或

  • 我正在为Kafka的客户librdkafka工作。lib在这里https://github.com/edenhill/librdkafka/blob/master/examples/rdkafka_example.cpp.每次调用Producer类中的product()时,是否调用dr\u cb()函数(请参见以下代码)?