专栏名称: 3033
iOS开发
目录
相关文章推荐
天津市文化和旅游局  ·  早安·天津 ·  昨天  
天津市文化和旅游局  ·  早安·天津 ·  昨天  
生态梦网  ·  霸气登顶!天津介孩子可真行 ·  昨天  
生态梦网  ·  紧急提醒!滨海人明后天冷到哭! ·  2 天前  
生态梦网  ·  太火爆!生态城勇夺全市热门景区前两名 ·  2 天前  
51好读  ›  专栏  ›  3033

iOS设备中的推送(三):页面跳转

3033  · 掘金  ·  · 2017-12-14 00:35

正文

##遇到的问题 如果我们上传了证书,按照极光的开发者文档去设置代码,其实我们会发现,收到一条推送消息并不是想象中的那么遥不可及。但是很快就会发现,我是收到消息了,但是我点击消息打开软件,然后就没了,为什么我见到的别人家的软件可以跳转到各个不同的页面。同时我打开软件的状态下我底部能够打印我得到的信息,但是我的软件为什么没有反应。那么针对这些问题我们一一来解决。 ###首先我们先解决软件使用中的问题 软件在使用的过程中,我们发送通知,能够打印消息但是并不会有提示出现,因此我们可以判断软件的状态,是运行呢还是处于关闭状态来区别的处理,如果是软件运行中,我们可以自己做一个提示框,然后进一步的进行操作。

页面跳转1.png

在iOS7以后,我们接收推送信息是在这个函数中,在这个函数中判断,程序的运行状态,如果是早前台的时候,我们发送一个通知,然后我们在程序打开的首页去接收这个通知 做出相应的处理。

页面跳转2.png

这样,在程序运行的时候不管你是在哪个界面,当收到信息的时候,软件会弹出一个提示款,提示你收到一个通知,以及显示出新通知的部分内容,点击查看,会根据与后台协议好的相应的字段去跳转到不同的页面。解决了在appdelegate里面我们无法跳转的尴尬,同样程序未运行的跳转也可以运用通知的方法,此方法在友盟推送等其他第三方一样可以实现。 ####其他方法 当程序未运行时,我们想进入不同的页面,也可以像图一所示,运用本地存储的方式,然后在主页进行判断这个neural是否为空,然后根据发送的内容,取出相应的值进行判断,跳转到随意的页面。 ####存储方法的问题 本地存储,要记得在跳转结束之后,清理本地的存储,不然下次重新打开软件也会跳转到上次通知的页面,原因你懂得,哈哈。







请到「今天看啥」查看全文