我应该使用哪个Apple推送通知服务Java库?

我需要使用苹果推送通知服务(APNS)将推送通知从我的Java服务器发送到iOS设备,

我发现两个库在Java中发送APNS推送通知:

  1. Java的APNS
  2. javapns

但两者似乎都被放弃了(或者至less它们有错误,最后一个版本是在一年前)。

java-apns有很多叉子 。 活跃开发中有没有更新的这个库的fork? 还有其他更好的select吗?

如果其他人正在用Java寻找一个APNs库,我们在RelayRides刚刚发布了Pushy( http://relayrides.github.io/pushy/ )。 它做了一些不同于其他两个竞争者(如asynchronousnetworkingIO),所以它可以真正快速发送大量的消息。 我们实际上也在生产中使用它,所以我们的工程师主动维护它。 请享用!

编辑:要清楚,Pushy是自由和开源的(MIT许可证)。

经过一段时间的挖掘之后,我只能find你提到的那两个库,所以我查看了java-apns GitHub页面上的一些最新的分支,最近我可以find的分支是由用户以“ froh42" 。 他的叉子位于这里 。 最近的提交是在4天前,但我不确定这个人是否真的join了回购的核心function,因为它很晚,我太累了,无法检查。

我的build议是,如果你打算使用java-apns,看看froh的回购,看看是否签出。 如果没有,您可以在这里查看原始java-apns回购的分叉列表。 对不起,我无法对你更有帮助,祝你好运!

几个月前,我们遇到了同样的问题,在我们的应用程序中有一个Java后端,在search库(实际上甚至不是Google App Engine上可能的选项)之后,我find了Urban Airship 。

城市飞艇是你的后端和各种推送通知服务(它支持APNS,但也是Android /黑莓/ Win)之间的中间人。 您只需要在他们的平台上configuration您的Push服务,实现到其中一个端点的REST调用并完成!

他们有免费的计划从每月100万(1,000,000)通知开始。

到目前为止,这是一个非常好的服务,它使我们能够快速扩展到其他推送服务,而无需在服务器端实现特定的代码。

看起来像java-apns正在更新。 最后一次提交是1个月前…

https://github.com/notnoop/java-apns

我还没有使用它,但似乎至less该项目没有死亡…

最后,我决定在我的项目中使用JavaPNS( https://code.google.com/p/javapns/ ),易于使用并符合我的要求。

但是我最近发现了一个看起来非常有希望的新项目,我打算在不久的将来使用。

AeroGear项目里面有几个库。 其中之一是AeroGear UnifiedPush服务器 ,支持苹果的APN,Google Cloud Messaging和Mozilla的Simple Push。

还有客户端库(iOS,Android),以便与服务器轻松集成:

  • Android教程
  • iOS教程

还有其他一些很酷的function,如pipe理控制台 , Java发件人客户端API , Rest API ,…

希望对别人有帮助。

如果你打算使用它的queue mode我不会推荐JavaPns ,因为你想一次发送很多消息。 有一个非常讨厌的Bug ,这会让你失去推送通知,但图书馆说,一切都被发送了。

这一个是非常好的,我用它

https://github.com/notnoop/java-apns

我也试过javaapns

https://code.google.com/p/javapns/

但一些如何不是为我工作。 这是发送通知成功= true,但我的设备无法收到它。

我用javapns,到目前为止我没有看到问题(我的项目还在开发进度); 但是我看到这个项目从2年前就没有更新。 和java-apns是保持更新,我会尝试。

更新了我的答案,自3个月前开始使用pushy for APN,确实有更好的performance。 现在我build议使用pushy。