问题标签 [apple-push-notifications]

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 回答
771 浏览

iphone - APNS 奇怪的反馈

嗨,我从反馈沙箱服务器收到奇怪的反馈。

实际上应该只有我的设备注册所以我希望总是相同的设备令牌(我已经知道)。无论如何......我每次都会得到一个不同的设备令牌并且总是相同的时间戳“Wed Mar 04 02:46:40 +0100 1981”

这是正常的还是我的代码有问题?

谢谢

0 投票
3 回答
9082 浏览

ios - Apple 推送通知和表情符号字符

我最近发现了一篇关于 APNS 和 Emoji 字符的非常有趣的文章:EASY APNS - 只是为了好玩

它包含一个包含所有支持的表情符号的列表。但是,我无法让它们显示在我的推送通知中。我得到的只是代码,而不是图像。例如,如果我在消息中添加 \ue415(笑脸),我永远不会看到图像,只会看到代码。

知道我做错了什么吗?

0 投票
10 回答
41750 浏览

iphone - “没有为应用程序找到有效的 aps 环境权利”

当我将启用推送通知的 iPhone 应用程序的 Ad Hoc 构建加载到我的设备上时,我遇到了这个错误:

未找到适用于应用程序的有效 aps 环境权利

这是什么意思,我该如何修复它?

0 投票
4 回答
3721 浏览

php - iPhone SDK 推送通知随机失败

我有一个包含以下内容的 PHP 文件,可以在开发证书上完美运行,但是当我切换到生产证书时,PHP 错误并给出以下消息,但它只有大约 50% 的时间这样做。其余 50% 有效。有谁知道为什么会发生这种情况?

PHP错误:

警告:stream_socket_client() [function.stream-socket-client]:无法设置本地证书链文件`/var/www/vhosts/thissite.com/httpdocs/prod.pem';检查您的 cafile/capath 设置是否在第 19 行的 /var/www/vhosts/thissite.com/httpdocs/pushMessageLive.php 中包含您的证书及其颁发者的详细信息

警告:stream_socket_client() [function.stream-socket-client]:未能在第 19 行的 /var/www/vhosts/thissite.com/httpdocs/pushMessageLive.php 中创建 SSL 句柄

警告:stream_socket_client() [function.stream-socket-client]:无法在第 19 行的 /var/www/vhosts/thissite.com/httpdocs/pushMessageLive.php 中启用加密

警告:stream_socket_client() [function.stream-socket-client]:无法连接到 /var/www/vhosts/thissite.com/ 中的 ssl://gateway.sandbox.push.apple.com:2195(未知错误)第 19 行 httpdocs/pushMessageLive.php 连接失败 0

0 投票
2 回答
2213 浏览

iphone - iPhone App IDs and Provisioning... 如果我决定使用 Push,是否会使用 App ID 而不是 Provisioning ID?

这是一个困扰我一段时间的问题。我启动了我的应用程序(现已提交 - 尚未批准),不想陷入 APNS(推送)的混乱。

我做了以下事情:

iPhone 开发者中心:Provisioning Portal->Provisioning:然后我创建了一个 Development 和一个 Distribution Provisioning Profile。我在 XCode 中都安装了。一切都很棒。开发配置文件很快就到期(90 天)让我有点害怕,但我可以将它从 iPhone 中删除,然后用新的签名。我使用 Development 配置文件进行了测试,后来通过使用 Distribution 配置文件签名来提交它。然后我将分发配置文件签名的应用程序上传到 iTunesConnect(应用程序商店)。

好吧,我明白了这么多。现在,我不明白的是:现在我了解了 Push 工作原理背后的理论和方法,我希望将其添加到我的应用程序中。

我已经进入:iPhone 开发者中心:供应门户-> 应用程序 ID:并在那里创建了一个开发供应配置文件和分发供应配置文件(启用推送和应用内购买)。

这是让我感到困惑的地方。我读过的所有书籍和文档都说,从现在开始,我必须使用这个“App ID”配置文件(启用推送)对应用程序进行签名。

这是否意味着我不再使用以前创建的配置文件?

如果我要将这些“App ID”配置文件导入 Xcode,它们将与我之前生成的“非推送”配置文件一起存在。~/Library/Mobile Devices/Provisioning Profiles 现在有 2 个文件。一个开发者和一个分发者。它现在将有 4 个,即使对于这个应用程序我不会再使用“非推送”了,对吧?(实际上,由于它们是通过使用捆绑代码和应用程​​序 ID 锁定的,所以如果我的该应用程序的所有后续版本都使用 Push,我将永远不会再次使用它?)

使困惑。

任何人都可以启发我吗?为什么不首先为每个人使用“App ID”配置文件——即使你不打算使用推送?会让它更简单。从现在开始我是否应该只生成“启用推送”的配置文件——即使我不确定我是否会使用推送(或者就此而言,应用内购买)?

请给我一些见解。我不想做错这件事。

谢谢!

0 投票
1 回答
338 浏览

iphone - 苹果推送通知评论

我正在实施 APN 并希望在不打开它的情况下发布..

所以应用程序会很高兴地收到它们。但我们会选择稍后再发送。

我的问题是,当我们想要发送通知时,我们可以控制,苹果在审查应用程序时是否关心这一点。

我不这么认为,也许他们会向设备发送测试通知以证明它有效?但如果有人有任何处理此问题的经验,任何信息将不胜感激。

谢谢。

0 投票
3 回答
5755 浏览

iphone - 无法通过 PHP 代码连接苹果 APN 服务器以进行 pusNotification

要将我的服务器与 APN 服务器连接,我使用以下代码。

但是我连接失败,我打印了 $errorNo 和 $errorString 输出是:error: Connection timed out errorNo: 110

但我也在errorLog中收到以下警告:

无法连接到第 35 行 /home/riseupla/public_html/applications/apn/apn.php 中的 ssl://gateway.sandbox.push.apple.com:2195(连接超时)

我该怎么办?

注意:我可以通过我的 mac 项目发送推送通知(使用 push me baby 项目)。但是我的 PHP 项目无法连接。

0 投票
1 回答
909 浏览

iphone - 何时分配设备令牌?

我正在尝试 Urban Airship APNS 开发推送服务器。当我运行他们的示例应用程序时,我似乎无法获得设备令牌。需要做什么来确保令牌存在?我检查了配置文件和捆绑包 ID。

我的服务器是否需要推送(通过 UrbanAirship)才能第一次生成令牌?代币是在第一次推送时生成的吗?如何注册设备以接收推送通知?(我假设这是内置在示例应用程序中,但我知道什么......)

0 投票
2 回答
14348 浏览

php - Apple 推送通知:发送大量消息

我正在使用 PHP 连接到apns 以向多个设备发送一些通知,尽管这个问题更具概念性,因此不必特定于 PHP。

我将同时发送到大约 7000 台设备(并且还在增长)。我的进程每天运行一次并向所有设备广播,因此我不会经常重新打开连接。

目前我可以轻松地一次发送到 2 个设备,并且消息将成功传递。但是,当我尝试发送到全部 7000 台设备时,消息似乎没有传递。

我的代码的伪逻辑是:

我在某处看到我应该只执行一次写入,并构造一个巨大的主体,换句话说,伪代码如下所示:

很难测试,因为我显然不能向我的 7000 个生产用户发送测试消息。有没有其他人有类似的问题?

谢谢

0 投票
1 回答
1891 浏览

iphone - 提交到苹果商店后生成 APN SSL 证书时出现问题

我无法让 Apple 为我的应用 ID 生成 APN SSL 证书。我已经向 Apple Store 提交了申请,正在等待审核。

我使用 Ad Hoc 应用程序 ID“${bundle_id}.adHoc”测试了该应用程序,一切正常。我使用应用 ID“${bundle_id}.release”提交到 Apple 商店。

现在我想生成我的生产 APN SSL 证书以与我的发布应用程序 ID 一起使用 - 但开发人员门户不想这样做。当我上传我的证书请求时,它会等待大约一分钟,然后告诉我:

“我们目前无法生成您的个人资料。请稍后再试或尝试使用供应门户”

在申请审核期间是否无法生成您的证书?我应该在提交之前生成它吗?