我是初学者用swift写IOS推送。它在应用程序在前台运行时有效,但在应用程序在后台或关闭时无效。顺便说一句,当应用程序处于后台或关闭时,我可以通过 APNS.newPayload().alertBody 接收警报消息。非常感谢你的帮助。
下面是我的服务器和 ios 代码。
iOS代码
func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {
print("Recived: \(userInfo)")
var receiveMsg = userInfo["key1"] as! String
print("receiveMsg = \(receiveMsg)")
}
服务器代码
ApnsService service =
APNS.newService()
.withCert("ooxx.p12","")
.withSandboxDestination()
.build();
String payload = APNS.newPayload().customField("key1", "M;senderGCMID5;senderUserID5;userName5;userMessage5").build();
String token = "token";
service.push(token, payload);
我已经阅读了一些关于这个主题的问题,但我无法解决这个问题。
我已经尝试过下面 iOS 代码中的其他功能,但它不起作用。
我不知道如何实施。你能教我吗?非常感谢
func application
(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject], fetchCompletionHandler completionHandler: (UIBackgroundFetchResult) -> Void) {
var receiveMsg = userInfo["key1"] as! String
print("receiveMsg = \(receiveMsg)")
}
感谢 pralthom 的帮助,我通过设置内容值 = 1 来解决问题。