我想编写一个iOS应用程序,可以通过蜂窝数据网络(即没有典型的集中式服务器)充当客户端和服务器到其他iPhone。目标是通过一些通知方式,从iPhone服务器到多个iPhone客户端,一次一个地共享大约200条短事件消息。 Apple推送通知服务适用于此类通知,但不需要专门使用它。
我认为,如Local and Push Notification Programming Guide所述,通过从服务的iPhone连接到gateway.push.apple.com
,可以将推送通知从一个iPhone发送到另一个iPhone,但我找不到其他人讨论此方法(也许这太明显了?)
所有这一切的原因是试图避免基础设施的开销。如果这不可行,欢迎使用最小化或避免额外硬件的替代方案。
要求:
更新5/4/11美国东部时间上午2:12 :为了清楚起见,我没有任何特殊要求使用APN;我认为在这种设置中可能是可行的,但从下面的讨论中,听起来并非如此。但是,我仍然对任何其他系统感兴趣,这些系统可以帮助我通过某种类型的消息传递或类似的通信方式实现相同的最终结果。
答案 0 :(得分:3)
理论上,您应该能够编写可以连接到APNS并向运行应用程序的其他设备发送通知的iOS应用程序。但是,您的主要问题是实际获取其他设备的“令牌”。当你有一个集中服务器完成这项工作时,它总是在线,因此,客户可以通过http与它“交谈”并自己注册(在此过程中将它们的令牌交给服务器)。因此,服务器知道客户端令牌,它可以使用它们通过APNS向客户端发送通知。
但是,在您谈论的场景中,这是不可能的。但这并不是说它不可能。可能是您可以使用电子邮件帐户X来存储所有客户端令牌。每个客户都会向该帐户发送一封电子邮件,其中包含令牌。因此,当另一个“客户”想要向另一个客户发送通知时,它可以通过访问电子邮件帐户的收件箱找到令牌(您可以缓存这些内容并以多种方式对其进行优化)。
但重点是一些(第三方(例如:电子邮件服务提供商)/您自己的)服务器如何全天候在线服务。
告诉我们您是如何取得进展的。知道这会很有趣。