Tag: 苹果推通知

Apple推送通知 – PHP – SSL代码1失败

在过去的几天中,当我们使用套接字连接到生产服务器上的APN服务器时,我们遇到了一些奇怪的PHP行为。 在大多数情况下,有效载荷被推送,没有任何错误,客户端收到通知。 但是,在某些情况下,我们开始收到PHP错误(即使我们收到错误,有时会通知被推送)。 当我们开始看到这个错误时,它会持续几个小时然后消失,PHP继续工作,就像什么也没有发生。 另一个奇怪的是,从shell运行相同的PHP代码不会产生任何错误。 从networking(nginx / php-fpm)运行它… PHP在shell和web上运行具有相同的configuration,并共享相同的php.ini。 唯一的区别是web运行在php-fpm上。 另外,在我们的登台服务器上运行相同的代码+证书没有任何错误。 生产服务器是登台服务器的副本,因此每个configuration都是相同的。 我们能够find一些可能导致此错误的答案,包括来自stackoverflow.com的答案,但我们无法find解决scheme或解决它。 通知到苹果服务器是一个接一个发送,而不是一个捆绑。 但是我们并没有build立太多的联系(也许每天有一千个)。 没有队列系统。 所以,总之 我们有时会在发送通知时收到PHP错误,但并非总是如此。 通过相同的PHP从shell发送通知不会产生任何错误 从登台服务器发送通知不会产生任何错误 我们尝试了这些 重新创build证书和密钥 重新创buildPEM文件 将ssl://更改为sslv3:// 使用stream_socket_client 使用fsockopen 更改/删除证书密码 错误是: 2012/08/28 12:18:09 [error] 4282#0: *225858 FastCGI sent in stderr: "PHP message: PHP Warning: fwrite() [<a href='function.fwrite'>function.fwrite</a>]: SSL operation failed with code 1. OpenSSL Error messages: error:1409F07F:SSL routines:func(159):reason(127) […]

为什么iPhone不会收到推送通知?

我真的不知道问题在哪里。 我正在使用库ApnsPHP发送推送通知。 我也试过其他的脚本,但是这也不起作用。 我使用本教程(http://code.google.com/p/apns-php/wiki/CertificateCreation)生成推送证书,并将其发送到苹果开发者网站。 我得到正确的令牌,从iphone到我sample_push.php 我有Macbook Pro的13英寸,2010年年中与Mac OS的狮子。 vojta:~/dev/www/application$ php sample_push.php Fri, 13 Apr 2012 16:23:24 +0200 ApnsPHP[6478]: INFO: Trying ssl://gateway.sandbox.push.apple.com:2195… Fri, 13 Apr 2012 16:23:32 +0200 ApnsPHP[6478]: INFO: Connected to ssl://gateway.sandbox.push.apple.com:2195. Fri, 13 Apr 2012 16:23:32 +0200 ApnsPHP[6478]: INFO: Sending messages queue, run #1: 1 message(s) left in queue. Fri, 13 Apr 2012 16:23:32 […]

捕捉答案“应用程序想发送推送通知”警报

第一次在你的UIApplication对象上调用registerForRemoteNotificationTypes: , a UIAlertViewpopup“[app]想要发送推送通知”。 有没有什么办法知道什么时候在这个AlertView点击“OK”或“Do not allow”? 当前application:didRegisterForRemoteNotificationsWithDeviceToken:在我的AppDelegate上调用,即使在用户做出决定之前。 我问的原因是因为在第一次启动时,我想推送一个ViewController与Notification选项,但只有当用户表示他们想要接收通知。

推送通知权限

尝试解决几个angular落的情况下推送通知被拒绝的应用程序,我有两个问题: 1)有没有办法重置用户是否看到通知请求popup? 2)有什么方法可以确定用户是否对通知请求说不?

APN使用macOS Sierra推送通知

我正尝试使用连接到ssl://gateway.push.apple.com:2195的简单PHP工具来发送手机的推送通知,但连接失败,并显示以下错误: Warning: stream_socket_client(): SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed in <Users/…/file.php> on line 30 Warning: stream_socket_client(): Failed to enable crypto in <Users/…/file.php> on line 30 Warning: stream_socket_client(): unable to connect to ssl://gateway.sandbox.push.apple.com:2195 (Unknown error) in <Users/…/file.php> on line 30 Failed to connect: 0 这一切都是从我升级到macOS Sierra的转基因种子开始的。 macOS Sierra中有哪些新特性会影响SSL连接? 我如何解决这个问题?

如何处理用户数据在不同时间到达的多个推送通知?

我的应用程序正在接收从服务器发送到苹果后端的APN。 一旦通知到达用户的设备,用户自然就不能打开该应用。 在此期间,我的服务器可能会推送更多通知。 它们都包含一些用户数据,这些数据在处理通知时很重要。 那么如何处理呢? iOS不会捆绑和给我一批,是吗? 以下是我将如何解决这个问题的方法,其中没有一个是简单的。 服务器跟踪没有看到的数据,并在到达一个新的请求时,总是发送一批所有新的通知,反映计数作为徽章计数。 通过录制通知popup窗口打开客户端。 在这种情况下,它具有didReceiveRemoteNotification所有需要的数据。 要么 客户端忽略通知popup窗口并通过点击应用程序图标打开应用程序(可能稍后)。 在这种情况下, didReceiveRemoteNotification不会被调用,因此应用程序必须从服务器获取所有需要的数据。 要么 服务器永远不会发送任何用户数据,客户端每次启动或检索didReceiveRemoteNotification中的数据时都会检查新的东西。 还要别的吗? 更简单的我失踪了?

Emojis支持苹果推送通知

我正在开发名为“INTERSTIZIO”的iPhone应用程序。在这个function中,我实现了用户之间的聊天function。在这个用户可以发送文本,位置和文本emojis符号。如果应用程序不是在接收端的开放模式,然后从后端生成push并显示给接收者。我可以像推送消息一样在“UserName:Hello …”中显示消息,但是我也想在推送消息中显示emojis符号,比如“UserName:Hay :)”我怎么才能用苹果的emojis代码实现这种types的推送消息(比如微笑苹果代码是\ u263a)? 我已经按照这个链接给出的解决scheme: http : //code.iamcal.com/php/emoji/但它返回相同的代码,我已经在function.Its工作正常的网页,但不是在推消息。 在这里,我附上了一个屏幕快照,看看它是如何结束的。在这里你可以看到我已经显示了笑脸和照明符号,但是它使用HTML代码如PHP脚本代码显示: $lightning = html_entity_decode('',ENT_NOQUOTES,'UTF-8'); //add this to the 'alert' portion of your APNS payload: $message = "You just got the {$lightning}SHOCKER{$lightning}!"; 但在我的情况下,我已经显示苹果的内置emojis键盘和使用下面的代码我能够得到emojis代码: //store code of emojis at backend NSData *data = [txtspeech.text dataUsingEncoding:NSNonLossyASCIIStringEncoding]; NSString *valueUnicode = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; //Display emojis in mobile chat window NSData […]

在Swift中注册远程通知时未收到设备令牌

注册远程通知时,我无法收到设备令牌。 我得到的模态说:“你想让App X能够发送notificaitons”,但是当我接受它,didRegisterForRemoteNotifications函数不会被调用。 当我使用以下代码在iOS 8 / Swift中注册远程通知时: UIApplication.sharedApplication().registerForRemoteNotifications() let settings = UIUserNotificationSettings(forTypes: UIUserNotificationType.Badge | UIUserNotificationType.Alert | UIUserNotificationType.Sound, categories: nil) UIApplication.sharedApplication().registerUserNotificationSettings(settings) UIApplication.sharedApplication().registerForRemoteNotifications() 这些function根本不被触发: func application(application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData!) 和 func application(application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: NSError!) 但是当我login这个 println("current settings \(UIApplication.sharedApplication().currentUserNotificationSettings()) and \(UIApplication.sharedApplication().isRegisteredForRemoteNotifications())") 我收到 "current settings <UIUserNotificationSettings: 0x170437120; types: (UIUserNotificationTypeAlert UIUserNotificationTypeBadge UIUserNotificationTypeSound);> and true" 我的configuration文件和证书都是按顺序排列的。 有其他人有这个问题吗?

iOS应用程序从通知中心丢失

问题:应用程序没有出现在通知中心,安装完成后无法接收推送通知,应用程序通过registerForRemoteNotificationTypes:注册推送通知registerForRemoteNotificationTypes: 。 细节: 设备重新启动后,应用程序通常会出现在通知中心,之后一切正常。 有时候,应用程序在APNs安装和注册后显示在通知中心(我仍然无法证实这一点,但我想我偶然发现了这种情况)。 每次用户login时,应用程序都会调用registerForRemoteNotificationTypes方法,每次用户都使用位掩码( UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeBadge | UIRemoteNotificationTypeSound )和UIRemoteNotificationTypeNone 。 enabledRemoteNotificationTypes返回正确的值。 最初,我在注销时使用了unregisterForRemoteNotifications方法,但是我将其更改为registerForRemoteNotificationTypes:UIRemoteNotificationTypeNone因为嫌疑人可能会导致此问题。 这个问题发生在开发和adhoc构build和无论是通过xcode或iTunes安装的应用程序。 任何想法和build议将不胜感激。 谢谢!

苹果推送通知崩溃关键等效

在使用Google推送通知时,我可以指定一个collapse_key值,以便设备不会收到同一个collapse_key的多个通知。 APNS是否具有类似的function,或者是否有人知道如何模拟此function?