使用Java发送APNS通知

时间:2016-06-13 04:30:27

标签: java ios apple-push-notifications

我目前正在开发在服务器上运行WebLogic的Java Web服务。我需要向iOS上运行的移动设备发送推送通知。我知道开发GCM / FCM以向Andriod设备发送通知所需的内容。对于iOS,我知道有APNS,但我可以用什么Java库来发送通知?

此外,通过APNS发送所需的东西(注册ID等)是什么?

任何示例代码?

我已经google了一下,发现了java-apns和javapns,但我甚至不确定它们是否已经过时了。

提前致谢。

1 个答案:

答案 0 :(得分:0)

我可以帮助您了解实施APNS所必需的一切。请注意,随着新的HTTP / 2.0 APNS API的引入,以前发生了很多变化。 (好消息是:现在事情变得简单和简单了)

建议您浏览以下链接:

https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/Introduction.html

APNS先决条件:

1)APNS SSL证书,密钥(现在沙盒和生产相同,以前用于生产/开发/ voip等不同。这是最重要的一步,因为与APNS相关的大多数问题都是由于错误的证书生成)

2)设备令牌(特定于在iOS设备上运行的每个iOS应用程序,您的iOS客户端应用程序需要向APNS注册以获取此设备令牌。此外,设备令牌通常与开发和生产环境不同。所以请制作确保你使用正确的令牌)

一旦你有上述证书,密钥和&您的iOS应用程序的设备令牌,您可以使用APNS界面从您的应用程序提供商发送APNS通知。

请注意,设备令牌可以随时更改(通常在iOS软件升级期间),因此每次启动应用程序时始终建议获取新设备令牌。

在有关apns的java库的查询中,请注意新的APNS接口依赖于HTTP / 2.0。您可以根据需要选择开源和企业版本(如AWS,Urban airship等)。不确定AWS是否支持新的HTTP / 2.0接口。但是,根据Apple指南,始终建议使用最新的APNS接口。

或者,您也可以使用GCM来实施APNS。 https://developers.google.com/cloud-messaging/ios/start

但是,您的iOS应用可能也需要注册到GCM。基本上,iOS设备令牌将映射到GCM设备令牌。但是,您仍然需要生成证书,密钥以及我提到的设备令牌。

我希望它能回答你的问题。

_Ayush