替换 WhatsApp 等推送/本地通知
Posted
技术标签:
【中文标题】替换 WhatsApp 等推送/本地通知【英文标题】:Replace push/local notification like WhatsApp 【发布时间】:2015-11-02 10:35:12 【问题描述】:我想实现像 WhatsApp 这样的功能,当有人打电话给他们时,用户会收到推送通知,通知说 “来自 X 的电话”,如果您在 30 秒内没有接到电话或点击通知。收到另一个推送通知,上面写着 “whatsapp 的未接来电..”。但是最后一个通知从堆栈中删除或替换或不再可见。我们如何实现它?
【问题讨论】:
【参考方案1】:您需要为此使用 UILocalNotification。在我开发的信使应用程序中,我们使用以下工作流程来实现完全相同的功能:
当 User1(U1) 调用 User2(U2) 时,服务器向 U1 发送一个空的推送通知。这样通知中心就不会显示任何内容了。 U1 启动套接字连接(即使应用在后台也可用,但如果被杀死则不可用) U1 注册套接字事件,收集有关调用者的信息并用 30 秒计时器炫耀UILocalNotification 30 秒后,U1 通过套接字发出消息以通知服务器它错过了一个呼叫,U2 接收到该事件并显示相应的消息 U1 removes UILocalNotification 来自通知中心【讨论】:
如何从通知中心删除通知?他们有任何 API 吗?您引用的链接取消了计划的通知,而不是通知中心已经存在的通知。 使用API取消,它会工作。 Docs 说明如下:“如果通知当前正在显示警报,则调用此方法还会以编程方式关闭通知。”。 @Taseen,见this question,它描述了如何实现它......也看看PushKit,它旨在用于VoIP推送通知......以上是关于替换 WhatsApp 等推送/本地通知的主要内容,如果未能解决你的问题,请参考以下文章