ios 上架后没有提示框显示,但是接到了推送消息

ios
标签: #<Tag:0x00007fb83d26c350>

(chelei) #22

老哥 是这样的 我测试的时候
出了这个提示框。但是在appstore上下载下来就不行。


#23

哥们,这个是通知(Notification)不是自定义消息(Message)

一般来说,客户端只要没改代码,测试和生产环境是没啥区别的,除了证书和环境

所以我需要你 给你这个设备 成功的测试的msgid和你这个生产设备的registrationID。

确保通知消息是推送给你了,但是没显示出来。

你前后的问题可是很有矛盾的


(chelei) #24

老哥我现在只是想把这个效果实现出来 。那这个通知没有显示出来是什么原因呢


#25

:sob:我。。好吧,既然你不肯给我具体的信息,那我就只能给你说几个可能了

1、如果你推送的Notification(apns通知),确认是收到了!但是没有展示横幅,原因:
推送的时候 通知内容(alert)没有写
手机端的提醒没有开
手机系统是iOS10以下,而app处于前台时收到通知是不提醒的,iOS 10新增了接口willpresent实现,没实现也没提醒。

2、第一点必须是保证 你是收到了但是没展示!

3、如果其实是消息没收到!那么 :
如果是别名推送,就检查你是否有成功设置别名。
可以试试广播或者针对设备ID去推送。

4、如果你推送的是自定义消息(Message),这里的自定义消息不是说Notification里面带了extra就是自定义,而是一种不一样的消息,在官网控制台是不同的页面,代码里面是不同的代码

那么本身就是不展示,只接收的,!即便你是测试环境,那也是不展示的!

需要实现像通知那样的提醒的话:
1、自己写通知栏
2、收到后创建一个本地通知,来展示。


(chelei) #26

不是不给你啊 但是生产环境的registrationID 我怎么给啊 开发环境的我加个断点写个NSLOG就能给你 。生产环境的我不会啊。原谅我太愚蠢。


#27

那你是怎么判断 消息是收到了却不展示的呢?

我建议你在app里面 加上这么一步:
获取registrationID的值然后上传保存到你们的服务器。

这样,我可以猜测实际上你是连消息都没有收到的。

需要你检查你这个别名430,是否有给生产的app绑定成功。

关于通知的展示,可以看一下这个贴


(chelei) #28

这个 应该是willpresent那个接口吧


#30

是,在后台的话,是自定义消息可以和通知消息一起发的,你在官网测试是分开的。

我这边大致看了一下你的消息,用API推送的消息里面,没有看到推送给生产环境的,官网推送的有几条是生产环境的。

你自己在官网推送通知给生产环境,还是不能展示吗?

还是官网可以,后台的消息不行?

后台要推送生产环境的话,让他们将apns_production改为true。


(chelei) #31

是这样 之前一直推送开发环境,今天发现了这个问题,就推了几条生产环境的,,通知可以接到 也可以显示横幅,但是推送自定义消息的时候 横幅就没了 消息可以接到。后台那边是我老大弄的。我接触不到他那边


(chelei) #32

这个改true? 还是后台那边改。


#33

我不是说了嘛,哥们,自定义消息没有展示的!!只接收不展示!!

需要展示你们自己实现!!不论是你测试环境还是生产环境,没有自己写代码展示,自定义消息都是不展示的!!

服务端 要正确推送 生产环境的Notification (apns通知)消息,将options中的apns_production改为true,后台在推送的代码里面修改!!

app要变为生产环境的,请用生产证书打包!!!即可!!你给的这个代码可以对应的改为1,但不是决定因素,决定因素是证书!!


(chelei) #34

这个要改成1吗


(chelei) #35

好吧 我问一下我们的后台。


(chelei) #36

老铁 我好像有点理解了 。我之前截图那个提示框是Notification,自定义消息是我那个页面要显示的内容这个部分没问题,也就是说 NOtification这里上架有问题 。。

这个alert 是在注册时候写的吗。

这个willpresent接口这样写没毛病吧


#37

没毛病,你这里已经写了alert展示了,我的意思是推送的时候通知内容(alert)没写会不展示。

另外!咱们现在这样测试可好

你在官网推送通知给生产的app,收到后是否能有横幅提醒?
你在API后台推送通知给生产的app,收到后是否能有横幅提醒?

测试这两条消息后,把msgid给我。

另外的另外!建议你在客户端获取registrationID后上传保存到服务器,这个信息还可以用来推送的,服务端设置或查询别名等都需要他。


(chelei) #38

这个是通知,有横幅提醒。
后台推那条没有通知提醒。后台说看不到MSGID。。这不是欺负人么。


#39

。。。后台那边推送成功,就会给他们返回200和msgid的!!

让他们找找,既然官网可以,那么就不是你的问题了。


(chelei) #40

今天谢谢老哥。。麻烦你了


#41

我个人认为:你服务端还是没有将apns_production改为true,即现在还是推送的开发环境的,你找他们确认一下,是改了还是没改,是不会改还是怎样?要一下msgid,我这边就能查到这条消息的具体数据是什么,可以帮助你判断一下


(chelei) #42

那个 apns——production 是不是系统默认的?刚才后台问我一句。。还是要设置他为true