如何获得天气应用的温度徽章?

时间:2011-04-09 14:58:52

标签: iphone cocoa-touch push-notification badge

例如,看看这个应用程序。

enter image description here

这是如何在幕后工作的?

我知道您可以使用以下方式设置徽章:

[UIApplication sharedApplication].applicationIconBadgeNumber = somenumber;

但是,这需要在后台工作才能保持更新。但是,对于后台应用程序,有10分钟的限制。我认为它与推送通知有关,但我不知道它是如何工作的。

有什么想法吗?


我正在为此付出赏金。如果可能的话,我想要一个详细的分步过程,了解如何设置我的网络服务器来处理这些推送通知。

3 个答案:

答案 0 :(得分:5)

APNS(Apple推送通知服务)可以选择仅显示徽章(无警报,无声音)。您可以在有效负载中指定它。这就是徽章的更新方式。

您可以让服务器将消息发送给用户或使用local notifications。但是,由于您想获取用户的天气信息,我想来自服务器的消息将是您的最佳选择。

您还可以指定该应用使用后台服务获取更新的位置,并使用此位置获取天气信息。

以下是一些很好的参考资料。一旦掌握了它,它实际上很容易推出自己的服务器/客户端

  1. http://blog.boxedice.com/2009/07/10/how-to-build-an-apple-push-notification-provider-server-tutorial/

  2. http://code.google.com/p/apns-php/

  3. http://www.easyapns.com/

答案 1 :(得分:0)

这里的73通常是您可以看到与等待您的应用程序相关的消息量。

我假设你可以设置&重置这个号码,所以他们只是推送一个更新给你,说你有73个应用内消息等着你,他们滥用这个机制来显示farenheit的温度。

答案 2 :(得分:0)

你是对的,他们是通过APNS(Apple PUSH Notification Service)来做的。这个设置非常复杂,但谷歌“iphone APNS”你会找到比我能想到的更好的指南。 Here's the one I used to get out service working。它在逐步完成整个过程中做得很好。

设置好后,您需要通过APNS通知传递“徽章”计数。 The documentation for how to do that is here