问题标签 [javaapns]

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 投票
2 回答
7946 浏览

java - Java APNS 证书的正确格式是什么?

我正在使用 Java APNS(com.notnoop.apns,v0.2.3)将推送通知发送到我的 iOS 应用程序。我正在使用以下几行创建 APNS 服务:

并收到以下异常:


我猜我的 P12 证书不正确。(我也尝试过 PEM 证书。)目前我以这种方式创建了 P12 证书,然后应用了密码:

Keychain.app 截图


创建与 Java APNS 兼容的证书的正确方法是什么?

0 投票
0 回答
213 浏览

apple-push-notifications - 自定义推送通知声音未播放

我正在使用以下有效负载发送推送通知:

我在 www/res/sound/mysound.caf 中有“mysound.caf”,并将其添加到我的应用程序的“复制捆绑资源”部分。当我发送通知时,它没有播放。我一直在阅读一些事情,以确保声音存在于“应用程序包”中,但除了按照我已经完成的方式添加它之外,我没有明确的方法可以做到这一点。

我正在注册:

有什么想法我可能会错过吗?

笔记; 我也在使用 phonegap,一旦我点击进入应用程序,它就会正确播放声音。

0 投票
1 回答
30248 浏览

java - Java TLS 套接字:未找到受信任的证书

让我快速解释一下我想要做什么。我正在尝试在 java 中构建我自己的 Apple 推送通知服务(用于测试目的)。这项服务的工作得益于 TLS 套接字。

我有一个 java 客户端来创建一个 TLS 套接字来向 APNs 发送推送通知。我更改了主机 url 以将套接字重定向到 localhost:2195。现在我正在尝试编写一个 java 套接字服务器来获取通知请求。

但是,我在握手过程中遇到异常并且找不到解决方法。

注意:我在双方都使用相同的证书,它是一个标准的 .p12 文件,用于向 APNs 发送推送通知。

这是客户端(简化):

这是服务器:

这是一个例外:

我猜客户端不信任服务器的证书。我尝试将客户端的 TrustManager 设置为接受服务器的 p12 并且它可以工作,但是我需要它在不编辑客户端的情况下工作(因为它与真正的 APN 一起工作)。

服务器需要什么样的证书才能被客户端信任?

提前致谢。

0 投票
1 回答
1415 浏览

amazon-web-services - Amazon SNS Apple 推送通知教程中的错误(空指针异常)

我的最终目标是通过 SNS 向 iOS 应用发送推送通知。我正在逐步完成本教程:http ://docs.aws.amazon.com/sns/latest/dg/mobile-push-apns.html 。

我已经添加了我的 AWS 凭证,并为我的开发密钥、证书、私钥和我的应用程序的当前推送令牌添加了相应的 apns 凭证。当我运行教程时,我得到:

在 SNSMobilePush.java 的顶部有一个名为 attributesMap 的 Map。它最初将键 Platform.APNS 和 Platform.APNS_SANDBOX 的值设置为 null。这些值在代码中的任何地方都不会更改,并且会导致空指针异常。本教程并未指示更改这些值。

我没有做任何超出或超出教程说明的事情。

我知道我的凭据是正确的,因为我确实通过 Amazon 管理控制台使用这些相同的凭据向我的 iOS 应用程序发送了一条消息。

谁能指出

  • 如果教程不完整
  • 与 Platform.APNS_SANDBOX 关联的值应该是什么才能使其正常工作
  • 任何帮助我解决这个问题的提示

更新我在 getValidNotificationAttributes() 中添加了一个空检查,现在我可以使用本教程使用 sns 和 apns 发送推送通知。

0 投票
0 回答
234 浏览

java - APNS 生产证书不起作用

我是推送通知的新手,并尝试 apns 推送通知,但它不起作用。

我的代码是

请帮我

0 投票
1 回答
419 浏览

openssl - 玩2.2 java-apns SSLHandshakeException

我的环境是 ubuntu 12.04 + Play 2.2.2 + java 7 + java-apns 0.2.3

在我从苹果下载 aps_development 并安装到我的 keyChain 后,然后将证书和私钥导出到 Dev_Certificates.p12。我把它放在 conf/certs/Dev_Certificates.p12 下。这是我得到的错误:

编辑1:

p12 文件位于 conf/certs/ 下。该服务被创建为 def 函数并由 akka 演员调用。

0 投票
0 回答
854 浏览

ios - 在 IOS 中取消注册 PUSH 通知

我在我的应用程序中控制应用程序的推送通知。在 Appdelegate 这是代码

我收到一个用于生成 PUSH 通知的令牌。我也[[UIApplication sharedApplication] unregisterForRemoteNotifications];用来关闭通知。调用 unregisterForRemoteNotifications 方法是否会使令牌无效,以便我可以从 Apple 反馈服务器获取它,然后避免我的服务器表单向该设备发送 PUSH 通知。我只是想确保我遵循正确的方法。

调用 unregisterForRemoteNotifications 方法后,我没有在手机上收到任何通知,但我也无法使用 JAVA-APNS 代码在反馈服务器中获取令牌

我从反馈服务器收到 0 台设备。

0 投票
1 回答
522 浏览

java - 使用 notnoop 的 java-apns 库时出现此错误的原因是什么?

代码:

例外:

堆栈跟踪:

0 投票
0 回答
648 浏览

java - Apple 推送通知传递策略

我正在开发一个 iphone 消息应用程序,因此使用 APN 服务器向离线用户发送推送通知(就像 whatsupp 一样)。我正在使用增强通知格式通过 API(com.notnoop.apns 1.0.0.Beta7-SNAPSHOT 版本)连接 APN。 https://github.com/notnoop/java-apns
https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/LegacyFormat.html

在某些情况下,尽管在我的服务器应用程序中一切正常,但推送通知不会在短时间内传递到某些设备,我的意思是推送通知字节数组写入 APNs 套接字缓冲区没有任何问题。同时,whatsupp 可以在我的客户端应用程序开始接收来自 APNS 服务器的通知之后正确接收推送通知。我想知道在等待 10 分钟并收到 whatsup 通知后,APNs 中是否触发了某些东西。

我知道发送通知是“尽力而为”,但不能保证,但 whatsupp 可以收到通知,为什么我的应用程序有时无法收到。 https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html#//apple_ref/doc/uid/TP40008194-CH100-SW4

这是我的有效载荷和其他参数:

为什么我有时会遇到这种麻烦?我需要检查什么?

Apple 是否有一项声誉政策,其中优先发送到 whatsapp 的通知?

还有一种通知格式(除了简单的和增强的) https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/CommunicatingWIthAPS.html 这种格式允许我们设置优先格式,是这种格式(立即)获得 100% 的通知?

0 投票
1 回答
6335 浏览

ios - APNS 通知发送失败(错误代码 8)

当我尝试在服务器上执行苹果推送通知时,出现以下错误:

我的服务器是一个 Java 应用程序。奇怪的是,相同的服务器 WAR 文件在本地工作正常(发送通知),但是当我将它部署到远程服务器(RedHat openshift.com)时它不起作用(上面有错误)。

这是我所做的:

  1. 在 Xcode 中,我归档我的应用程序并使用 Distribution Provisioning 配置文件将其导出以用于 Ad Hoc 分发。该配置文件包含“aps-environment production”权利。
  2. 在 Apple 开发人员中心,我下载了 APNs 生产 iOS 证书,将其导入我的 iMac 钥匙串并导出一个 p12 文件。
  3. 我将 .p12 文件部署到我的服务器,在那里我使用 https://github.com/notnoop/java-apns库来执行苹果推送通知。该库的初始化如下:

APNS.newService().withCert(certificateInputStream,"密码").withProductionDestination().withDelegate(this).build();

  1. 运行时,客户端应用程序成功注册推送通知并接收令牌。
  2. 当服务器尝试执行推送通知时,抛出异常:com.notnoop.exceptions.ApnsDeliveryErrorException: Failed to deliver notification with error code 8

你能帮我吗?相同的设置在本地工作但在远程服务器上失败的原因可能是什么?