2011-01-31 44 views
2

我正在阅读许多有关本地通知的信息以及它们如何帮助更新应用程序徽章号码。在午夜使用选项更新应用程序徽章:应用程序未启动或在后台,徽章号码可能会减少

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

当然,显示的数字与显示的数字并不相关,可以更低或更高。

预计这将工作: - 当应用程序在后台 - 当应用程序在前台 - 当应用程序未启动

,你会知道的方式来做到这一点,甚至部分?如果不可能,假设我可以在午夜之前弄清楚徽章号码......这是否有助于您找到有效的答案?这是不想要的,但如果我没有选择做这项工作,我会打算写很多无用的代码来做到这一点...

回答

0

你很可能可以做到这一点。查看Apple Guide以在后台运行代码。

+0

谢谢,我会读这个。如果应用程序未启动,该怎么办?我已经看到,本地通知可以提供帮助,但只有在了解目的的情况下才会增加徽章。这不是我想改变它的方式(我真的不明白在哪种情况下可能只想增加(并且只增加)徽章号码......) – Oliver 2011-01-31 01:16:19

0

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

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

3

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

请参阅this文档,您可能想了解有关iOS中本地和推送通知的所有内容。

相关问题