问题标签 [javapns]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
202 浏览

java - iOS 设备推送通知

当我使用 Java 作为服务器端程序并且我使用 Google App Engine 时,谁能帮助我详细说明如何为 iOS 设备发送推送通知。

谢谢。

0 投票
0 回答
941 浏览

java - Javapns 通信异常:Connection denied to ConnectionToAppleServer

javapns2.2 jar在 iOS 设备中使用推送通知。在我的本地 tomcat 服务器中运行的 java 源将推送通知传递到我的设备。当我尝试使用实时网址时,连接被拒绝。以下是我的 tomcat 实时服务器日志。我尝试使用防火墙设置提到的其他成员,但没有任何帮助。我无法检测到该问题,因为它在 localhost 中运行良好,但在实时服务器中却没有。请建议我解决。

服务器日志

有效负载是 {"aps":{"alert":"test message","sound":"default"}} javapns.communication.exceptions.CommunicationException:通信异常:java.net.ConnectException:连接在 javapns.communication 被拒绝.ConnectionToAppleServer.getSSLSocket(ConnectionToAppleServer.java:158) 在 javapns.notification.PushNotificationManager.initializeConnection(PushNotificationManager.java:106) 在 javapns.Push.sendPayload(Push.java:171) 在 javapns.Push.payload(Push.java: 149) 在 org.sabarish.model.PushMessage.sendNotification(PushMessage.java:111) 在 com.sabarish.api.Push.sendPushNotification(Push.java:56) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun .reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:606) 在 org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory $1。在 org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:151) 在 org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher) 调用(ResourceMethodInvocationHandlerFactory.java:81) .java:171) 在 org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:152) 在 org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher。在 org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:349) 在 org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:402) 调度(AbstractJavaResourceMethodDispatcher.java:104)在 org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:106) 在 org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:259) 在 org.glassfish.jersey.internal。 Errors$1.call(Errors.java:271) at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) at org.glassfish.jersey.internal.Errors.process(Errors.java:315)在 org.glassfish.jersey.internal.Errors.process(Errors.java:297) 在 org.glassfish.jersey.internal.Errors.process(Errors.java:267) 在 org.glassfish.jersey.process.internal.RequestScope .runInScope(RequestScope.java:318) 在 org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:236) 在 org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1010) 在 org.glassfish .jersey.servlet.WebComponent.service(WebComponent.java:373) 在 org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:382) 在 org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java :345) 在 org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) 在 org.apache.catalina.core 的 org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:220)。 ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 在 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter。doFilter(StrutsPrepareAndExecuteFilter.java:81) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache .catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) 在 org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) 在 org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java :472) 在 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) 在 org.apache.catalina.valves 的 org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)。 AccessLogValve.invoke(AccessLogValve.java:947) 在 org.apache.catalina.core.StandardEngineValve。调用(StandardEngineValve.java:118)在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)在 org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1009)在 org.apache .coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor .java:1145) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 在 java.lang.Thread.run(Thread.java:745) 原因:java.net.ConnectException:连接被拒绝在 java.net.PlainSocketImpl.socketConnect(Native Method) 在 java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339) 在 java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200) 在 java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182) 在 java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) 在 java. net.Socket.connect(Socket.java:579) 在 sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618) 在 sun.security.ssl.SSLSocketImpl.(SSLSocketImpl.java:407) 在 sun.security。 ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:88) 在 javapns.communication.ConnectionToAppleServer.getSSLSocket(ConnectionToAppleServer.java:155) ... 49 更多在 sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618) 在 sun.security.ssl.SSLSocketImpl.( SSLSocketImpl.java:407) 在 sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:88) 在 javapns.communication.ConnectionToAppleServer.getSSLSocket(ConnectionToAppleServer.java:155) ... 49 更多在 sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:618) 在 sun.security.ssl.SSLSocketImpl.( SSLSocketImpl.java:407) 在 sun.security.ssl.SSLSocketFactoryImpl.createSocket(SSLSocketFactoryImpl.java:88) 在 javapns.communication.ConnectionToAppleServer.getSSLSocket(ConnectionToAppleServer.java:155) ... 49 更多

0 投票
1 回答
546 浏览

java - 使用 Javapns、Java 和 Google App Engine 的 Apple 推送通知服务

}

我已经创建了 .p12 证书,并且获得了 64 个字长的设备令牌。在这里,上面的应用程序运行正常并从我的本地主机发送推送通知,但是当我将它部署在谷歌云中时,它不会发送推送通知,这两种情况我都使用谷歌应用引擎作为服务器。这是谷歌云抛出的异常。

0 投票
0 回答
396 浏览

java - 推送通知不适用于 Push.payload() ,因为它适用于 Push.alert()

我正在使用 javapns 从我的 java 代码向 ios 设备发送推送通知。但我没有收到 Push.payload() 的推送通知,它与 Push.alert() 一起工作正常。我错过了什么吗?我的代码是

这里我创建的有效负载对象是

我的有效负载对象不包含 aps 中的警报/声音字段。是不是因为这个?

请帮帮我。

0 投票
2 回答
2912 浏览

java - 如何为 iOS 推送通知传递 JSON 对象

我正在使用 javapns 向 iOS 设备发送推送通知,通常使用两种方法,即 alert() 和 payload()。使用此功能中的任何一项,我们都可以向 iOS 设备发送推送通知。在这里,我需要传递 json 对象,而不是在这些方法中的任何一个中发送简单的消息。所以请谁能告诉我如何实现这一目标。

0 投票
2 回答
278 浏览

google-app-engine - 在 GAE 中使用 javapns 时 SSLSocketImpl.receivedChangeCipherSpec 出现 NoSuchMethodError 异常

我正在将 javapns 与 Google App Engine 一起使用。直到今天早上一切都很好。现在,它引发了这个异常:

任何想法?我在 JDK7u 中看到了缺少的方法,但我认为我正在使用 JDK7。不确定这是否相关。

0 投票
1 回答
7885 浏览

java - 推送通知不会发送到苹果设备

JavaPNS用于向苹果设备发送推送通知。但它不起作用。我的应用程序中的代码片段:

这是错误日志:

我对密钥库文件有任何问题吗?

0 投票
2 回答
3643 浏览

java - 如何在 JavaPNS 推送通知中将 JSON 添加到有效负载?

我想在通知中添加 JSON。我现在可以发送警报了。如何发送带有通知的 JSON?

我目前正在使用的代码片段:

我想添加 JSON,如:

我怎么能通过这个?

0 投票
1 回答
462 浏览

apple-push-notifications - 通过 Apache Web 代理的 JavaPNS

我的推送 Java 应用程序位于 Web 代理后面。我使用下面的代码来设置代理:

ProxyManager.setProxy("", "");

执行后,我得到:

javapns.communication.exceptions.CommunicationException:通信异常:java.io.IOException:无法通过隧道。代理返回“HTTP/1.1 403 代理错误”

请指导我如何解决这个问题。

0 投票
1 回答
705 浏览

java - JavaPNS NoClassDefFoundError

我正在使用 JavaPNS 通过我的家用计算机发送远程推送通知 (iOS)。按照raywenderlich.com上有关如何准备证书的步骤进行操作后,我将 .p12 文件放入下面编写的代码中:

我没有在上面的代码中包含我的设备令牌,但我 100% 确定我的实际程序中的令牌编号是我设备的正确编号。当我运行程序时,在(eclipse)控制台中出现以下错误:

我的 .p12 文件位于我的 java 项目文件夹中,在查看其他以前提出的问题后,我将 org.apache 导入语句放入我的程序中。

我见过的其他类似问题的答案是使用包含以下行的 try-catch 语句: BasicConfigurator.configure();

当我把它放进去时,Eclipse 告诉我:“BasicConfigurator 无法解析”,它让我可以选择自己创建类。

我不确定我做错了什么。任何帮助将不胜感激。提前感谢所有回复的人。