xcode 10 开发的 线上版本 app在前台 收不到推送提示


(JWW991wyj) #1


我的xcode 10 开发的 线上版本 app在前台 收不到推送提示
但是测试版本可以 同样的推送和内容都一直 只有在线上 并且前台 的时候 收不到提示


xcode7 + iOS10 程序在前台为什么接收不到消息,在后台可以接收到。
(JWW991wyj) #2

系统是iOS11


#3

iOS的通知由系统直接展示,SDK 是不做干预的,只要你推送的信息正确

检查你推送的消息内容,客户端是否实现了前台展示,是否添加了 mutable-content 导致客户端收到消息后用 extension 处理了一遍导致没有了展示等情况的发生。

注意推送 Notification 消息给线上和线下,需要注意环境问题。


(JWW991wyj) #4

我用的是 极光web端 手动推送测试 选中content-available 与不选中 都不能再前台展示


我本地是支持代理方法 有极光的两个代理方法 也有本地支持iOS7之前的代理方法

#pragma mark - 10收到的通知
// iOS 10 Support (前台的时候 远程-本地 都走这个)
- (void)jpushNotificationCenterRR:(UNUserNotificationCenter *)center willPresentNotification:(UNNotification *)notification withCompletionHandler:(void (^)(NSInteger))completionHandler {
}

// iOS 10 Support
- (void)jpushNotificationCenter:(UNUserNotificationCenter *)center didReceiveNotificationResponse:(UNNotificationResponse *)response withCompletionHandler:(void (^)())completionHandler {
}

现在比较尴尬的是 测试版本是可以的 只有线上环境在前台的不行,如果说 因为一些参数设置的原因,但是在测试环境下是可以的
并且只是线上在后台的时候 也是可以的
前台的时候 不知道是怎么回事


#5

提供你线上环境前台收到了消息的客户端日志
检查你线上版本的前台接受方法里面

completionHandler(UNNotificationPresentationOptionBadge | UNNotificationPresentationOptionSound | UNNotificationPresentationOptionAlert);

三种提醒有没有加上


(JWW991wyj) #6

image
我是在收到通知的时候 自己处理添加弹窗的 现在是没有走到这个里面 导致没有弹窗
但是极光提示推送成功了


#7

那你实际上是线上的 App 没收到 Notification 消息?


(JWW991wyj) #8

是的 但是app在后台的时候能收到 说明证书没问题 点击通知栏 也能走进代理方法


(JWW991wyj) #9

image

registrationID:161a3797c821d534b89
我是用的别名推送的 7_6_8_698


#10

这条消息确实是成功的,你看客户端日志应该是已经收到了才对,注意这个方法走的顺序
image

查看这个,检查你客户端的设置,如果是 xcode 直接运行的测试环境的,xcode 会自动刷新,而打包后不会,需要开启相关功能


(JWW991wyj) #11

这两个方法都有 前台的时候测试过, 不然测试环境也不能展示
image
image


#12

请你先阅读

客户端设置部分检查你是否有设置


(JWW991wyj) #13

我找了另一个手机 系统是12 能收到
我这个系统11.4 不能 可能是系统原因