iOS生产环境下应用在后台收不到推送,在前台可以

收不到消息
标签: #<Tag:0x00007fb83c0e31d8>

( ` Díé ) #1

iOS生产环境下应用在后台收不到推送,在前台可以。在推送记录里虽然推送成功了,但是在通知中心没有展示。
但是在开发环境下,应用在前台后台都可以收到推送,并且应用在后台时,通知中心有展示。


#2

提供你后台收不到消息的情况下,消息 的msgid 和你设备的registrationID


( ` Díé ) #3

我的意思是,程序在后台是,我推送,然后我能在推送记录里看到推送成功,但是就是在通知中心中没有展示。


#4

那你看看这个贴:


( ` Díé ) #5

msgid:7501012174


( ` Díé ) #6

我看了。
我在开发环境下,后台收到推送的时候,通知中心都有展示。
生产环境下就没有。
我看这个没用。


#7

1、你这条消息有通知内容,那么不是上面链接的问题
2、你这条消息有多个目标,请给我提供你生产环境下的registrationID,看是否确实推送了
3、一个app只有一个环境,只会收到一个环境的推送。

4、出现你这个情况,大致只有一个原因了:你退到后台前置空了你设备设置的标签。


( ` Díé ) #8

registrationID:161a3797c837697d5fb


#9

等会,你给我的这条消息的msgid,推送的是开发环境的呀

你之前前台能收到是 收到的自定义消息,你们自己对自定义消息做了处理,不是通知吧?

你这最近的消息都是给开发推送的,没有推送过生产环境,,让API代码改一下

apns_production为true,则推送生产


( ` Díé ) #10


( ` Díé ) #11

我之前看过这里。我API那里一直是false,我给他们说过,但是他们说没关系的。
而且我去你们接口那边,只是单独给iOS推送的时候才设置这个。给安卓和iOS同时推送的时候没说要设置啊。
还有,我们从去年9月份到今年2月份API里一直是false,生产环境下都能收到推送。
这是最近才出现的问题。


( ` Díé ) #12

而且你刚才说,一个app只有一个环境,只会收到一个环境的推送。那我在生产环境下,程序在前台又怎么收到推送?


#13

这是要设置的,同时推送,那也是包括推送给iOS的呀,只要是推送给iOS,那么就得设置。

另外,你们用的V2 接口?V2接口早已不维护

请升级到V3,且修改这个参数


( ` Díé ) #14

我在前台收到推送是用这个
[defaultCenter addObserver:self
selector:@selector(networkDidReceiveMessage:)
name:kJPFNetworkDidReceiveMessageNotification
object:nil];


#15

这是自定义消息,不是通知,自定义消息不分环境。通知是Apple的,分环境


( ` Díé ) #16

好的。那前台通知呢。那个方法?


#17

只支持iOS10,这里有说到


( ` Díé ) #18

还有就是再问下现在后台那边怎么看是V2还是V3?


#19

看你们调用的地址
https://docs.jiguang.cn/jpush/server/push/rest_api_v3_push/


( ` Díé ) #20

https://api.jpush.cn后台是这个