Adn*_*nan 13 chat push-notification ios
我的问题很简单,使用推送通知开发聊天应用程序是个好主意吗?因此,推送通知不可靠,并且无论是否到达都无法保证.如果不可靠,应该将哪种技术用于实时聊天应用?
Mic*_*ick 18
使用iOS推送通知构建聊天绝对是可能的.@Aaron积分很有意思,但由于以下原因,我认为没有意义:
- 如果你的应用程序发送过多的推送通知(并且如果你使用它作为"聊天"的方式,那么没有人会使用你的应用程序,因为它会很烦人.
这里唯一的情况是当应用程序没有运行时,即使这样,如果连续太多,apple也只会发送最后一个通知.当应用程序在任何其他状态(background
,foreground active & inactive
,suspended
),该通知可以静默处理使用,content-available : 1
在你的推送通知.如果您担心这一点,只需使用徽章通知而不是警报通知.
- 用户还可以禁用应用程序的推送通知,这样您就不能依赖它作为唯一的通信方式.
这是错误的,这不会阻止发送到手机的通知,它们只是没有向用户显示.看到这里.因此,即使用户已禁用推送通知,您也可以处理静默通知.这只是一个设置,设备仍然会有设备令牌,后端仍然可以发送推送通知.
确实有些远程通知可能无法传递,并且使用其内容不是一个好主意.但这不是一个大问题..
最好的方法是将您的通知用作refresh me I got a new message
一种通知.收到新通知后,请向服务器询问此聊天中的新消息,并更新该表.我们已经在我们的一个项目中实现了这一点,并且对目前的结果非常满意.有人说Premature Optimization is the root of all evil
,在这种情况下,您可能会花费大量时间使用套接字,但您可以立即启动并运行推送通知.稍后优化.
这非常有效:
{
"aps" : {
"content-available" : 1,
"alert" : "This is my new notification",
}
"conversationId": 23,
"senderId":44
}
Run Code Online (Sandbox Code Playgroud)
不,这不是一个好主意,至少有两个原因:
您需要具有客户端/通道关系的某种轮询系统.有很多服务器系统可以为您完成此任务.WebSync是一个:
http://www.frozenmountain.com/websync/
归档时间: |
|
查看次数: |
9051 次 |
最近记录: |