我遇到了一个不寻常的情况,当我的应用程序被删除然后重新安装时,用户继续收到通知.方案如下:
我对APN架构的理解是,一旦您的应用程序从您的设备中删除,它就会被操作系统本身从APN取消注册.在您调用"registerForRemoteNotificationTypes"之前,重新安装应用程序不会重新启用通知 - 因此,如果使用旧令牌向设备发送了注释,则由于尚未调用上述方法,APN将无法提供该注释.
这不准确吗?
我使用本教程为推送通知制作了一个示例PushTest应用程序.
使用上面的教程,我收到消息"PushTest"想要发送推送通知(只需一次),之后我从iPhone删除应用程序,重新启动iPhone但无法再次收到相同的消息.
我已经运行了脚本sample.php(更新建议的更改)并得到消息'连接到APNS'和'你的消息发送'.
但我没有收到任何单一推送通知.
请指导我哪里错了?
或者我尝试推送通知接收的内容.
iphone objective-c push-notification apple-push-notifications ios
推进时,我正面临着改变横幅警报语言的问题.其实我正在开发一个以两种语言工作的应用程序.一个是英语,第二个是挪威语.我从我的网络服务器端收到的推送以及它在alert密钥中的字符串在推送到期时显示在横幅中,并且您在应用程序之外.但作为一项要求,我们希望如果我将语言从设置从英语更改为挪威语,那么当推送到来时,它的标语警报字符串也将更改为挪威语.是否可能在我的最后,或者每当我改变语言时我都必须从服务器更改它.
任何建议都会有所帮助.
谢谢
我开始创建一些基于此的代码,用于从PHP发送推送通知.
但是现在我已经知道有一个新的API利用HTTP/2并在响应中提供反馈,我试图弄清楚我需要做些什么来获得反馈.
我无法找到任何教程或示例代码来指导我(我猜因为它是如此新的).
是否可以使用stream_socket_client()与新提供者API连接到APNS 的方法?我如何获得反馈?我fwrite($fp, $msg, strlen($msg))现在回来的只是一个数字.出于所有意图和目的,您可以认为我的代码与基于我的代码的SO问题中的代码相同
谢谢!
我想在购买托管计划之前检查是否可以使用托管服务器完成推送通知.检查这个的最短方法是什么.我还有godaddy.com的托管计划我可以使用来自godaddy托管服务器的推送通知吗?
我一直在努力为客户端发现苹果推送通知的一些数据,而我无法找到答案的是推送通知在被删除之前将多长时间排在队列中.
可能有很长一段时间,例如2-3个月,其中设备可能处于非活动状态并且断电.我只是想知道在自动删除通知之前我可以期待一段时间可以延迟,等待传递给离线设备(这是我理解的情况).
我还有一个疑问APNS.这是当应用程序首次启动应用程序请求Apple推送通知权限时,如果用户接受了他们可以接收通知.如果用户取消他们无法收到任何通知.我清楚吗?
现在我的怀疑是,
如果用户第一次如果Cancel他们想要接收Apple推送通知,则在几天后再次从应用程序(单击按钮)取消推送通知服务时,可以从应用程序再次为特定用户启用Apple推送通知.
如果用户接受苹果推送通知服务第一,过了些日子,如果他们不希望收到通知,可以禁用APNS在我们的应用程序?我希望你理解我的怀疑.任何人都可以澄清这个疑问吗?
可以在我们的iPhone应用程序中执行以上场景吗?
请帮我.提前致谢.
iphone permissions push-notification apple-push-notifications ios
我有Apple的.p12文件,并尝试使用以下命令将其转换为.pem文件:
openssl pkcs12 -in cert.p12 -out apple_push_notification_development.pem -nodes -clcerts
Run Code Online (Sandbox Code Playgroud)
在尝试使用创建新的OpenSSL :: X509 :: Certificate对象时
OpenSSL::X509::Certificate.new(File.read('apple_push_notification_development.pem'))
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
OpenSSL::X509::CertificateError: nested asn1 error
from (irb):9:in `initialize'
from (irb):9:in `new'
...
Run Code Online (Sandbox Code Playgroud)
我做错什么了吗 ?卡住了,请帮忙.谢谢
我有一个应用程序将用户的会话存储在NSUserDefaults中.当应用程序被强制关闭时,在初始验证数据控制器是否存在用户会话,以防如果将其发送到启动窗口,如下所示:
override func viewWillAppear(animated: Bool) {
self.view.hidden = true
let defaults = NSUserDefaults.standardUserDefaults()
if defaults.stringForKey("user") != nil
{
dispatch_async(dispatch_get_main_queue(), { () -> Void in
let viewController:UIViewController = self.storyboard?.instantiateViewControllerWithIdentifier("vistaInicio") as! ViewControllerInicio
self.presentViewController(viewController, animated: true, completion: nil)
})
}else
{
self.view.hidden = false
}
}
Run Code Online (Sandbox Code Playgroud)
直到今天,当我决定 在iOS上设置Firebase云消息客户端应用程序后,根据本教程更新firebase实施推送通知,这一直顺利进行.当他杀死应用程序并再次输入时出现问题,提供以下错误代码:
2016-05-19 16:05:27.647: <FIRInstanceID/WARNING> Failed to fetch APNS token Error Domain=com.firebase.iid Code=1001 "(full)"
2016-05-19 16:05:27.659: <FIRMessaging/INFO> FIRMessaging library version 1.1.0
2016-05-19 16:05:27.831: <FIRMessaging/WARNING> FIRMessaging registration is not ready with auth credentials
Unable to …Run Code Online (Sandbox Code Playgroud) 尝试为iOS10设置推送通知.以前它是否适用于10以下的版本.
阅读一些指南我的设置是这样的:
// Register for the defined notifications
if #available(iOS 10.0, *) {
let center = UNUserNotificationCenter.current()
center.delegate = UIApplication.shared.delegate as! AppDelegate
center.requestAuthorization(options: [.alert, .badge, .sound]) { (granted, error) in
if error == nil {
UIApplication.shared.registerForRemoteNotifications()
}
}
} else {
// Fallback on earlier versions
let notificationSettings = UIUserNotificationSettings(types: [.alert, .badge, .sound], categories: [autoCancelCategory])
UIApplication.shared.registerUserNotificationSettings(notificationSettings)
UIApplication.shared.registerForRemoteNotifications()
}
Run Code Online (Sandbox Code Playgroud)
这是在我的一个视图控制器中登录^时调用的.
现在AppDelegate,它符合UNUserNotificationCenterDelegate,我有这些方法:
@available(iOS 10.0, *)
func userNotificationCenter(_ center: UNUserNotificationCenter, willPresent notification: UNNotification, withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) …Run Code Online (Sandbox Code Playgroud)