2

我正在阅读许多有关本地通知的内容以及它们可以帮助更新应用程序徽章编号的方式。

我想在午夜更新这个徽章,并将它的值设置为一个我在午夜之前不知道的数字。因此,如果可能的话,我想在午夜启动一个功能来更新/加载一些数据,检查要显示的数字,并将其显示在徽章上。

当然,显示的数字与显示的数字无关,可以更低也可以更大。

这预计会起作用: - 当应用程序在后台时 - 当应用程序在前台时 - 当应用程序未启动时

你会知道一种方法来做到这一点,甚至是部分吗?如果不可能,假设我可以在午夜之前让事情知道徽章编号......这对你有帮助吗?这是不想要的,但如果我没有选择让这项工作,我将计划编写大量无用的代码来做到这一点......

4

3 回答 3

3

除非您的应用程序适合“官方”多任务处理案例之一(VOIP、位置和背景音频),否则您能够在应用程序未运行时动态设置徽章编号的唯一方法是使用推送通知...应用程序无法响应本地通知运行代码(至少在用户按下通知弹出窗口中的“查看”按钮之前)。

请参阅文档,了解有关 iOS 中本地和推送通知的所有信息。

于 2011-01-31T01:41:11.850 回答
0

你很可能能够做到这一点。查看在后台运行代码的Apple 指南。

于 2011-01-31T01:11:33.683 回答
0

除非您将其注册为 VoIP 应用程序或需要持续的位置监控,否则您无法可靠地确保本地应用程序在需要时运行;在实际上不用于 VoIP 或导航的应用程序中,这些中的任何一个几乎肯定会导致 App Store 拒绝。

您最好的选择是将徽章作为推送通知发送。假设您控制的服务器可以知道徽章编号应该是什么,它可以仅向您的应用发送带有该徽章值的通知(不一定是警报弹出窗口或声音)。Urban Airship是一种发送推送通知的好、简单的方法,无需进行大量配置和设置。

于 2011-01-31T01:36:31.607 回答