[英]Parse not sending push open notifications for iOS7
我已遵循有关使用Parse进行相关Push设置的指南。
在iOS7设备和iOS8设备上测试应用程序时,通过推送打开时会调用相同的方法:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler {
DebugLog(@"%s",__PRETTY_FUNCTION__);
if (application.applicationState == UIApplicationStateInactive) {
[PFAnalytics trackAppOpenedWithRemoteNotificationPayload:userInfo];
}
if (completionHandler) {
completionHandler(UIBackgroundFetchResultNoData);
}
[PFPush handlePush:userInfo];
}
看来,尽管[PFAnalytics trackAppOpenedWithRemoteNotificationPayload:userInfo];
在iOS7上调用方法,数据不会显示在Parse中。
例如,检查已发送的推送显示打开次数。 如果我将推送发送到iOS7设备和iOS8,则将调用同一部分代码。 但是,仅针对iOS8版本记录。 我还有什么需要做的吗?
我们遵循了相关指南: https : //parse.com/docs/ios/guide#push-notifications
这也可以实现:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo {
DebugLog(@"%s",__PRETTY_FUNCTION__);
if (application.applicationState == UIApplicationStateInactive) {
// The application was just brought from the background to the foreground,
// so we consider the app as having been "opened by a push notification."
[PFAnalytics trackAppOpenedWithRemoteNotificationPayload:userInfo];
}
[PFPush handlePush:userInfo];
}
该问题是由某些通知权限测试引起的。
测试通知权限时,提示只会在第一次出现。 要使提示再次出现,您需要:
删除应用并重置设备
将其打开并将日期更改为将来的日期,然后再次重置
将其打开并重新安装/构建应用程序,权限提示将再次出现。
我们已经在iOS7和iOS8设备上进行了一些测试来完成此操作。 问题似乎是在iOS7设备上,尽管称未记录推送打开通知,但这似乎与将来的日期有关。
iOS8设备上的日期也将在未来,但可能不会那么遥远。 在设备上将日期设置为正确的日期后,再次记录了iOS7设备上的推开通知。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.