[分享摘要]移动端通知架构

  • 客户端通知架构
  • 我们目前是什么方案?
  • 基于架构如何分析实际问题
  • 通知的可能性

通知有多重要?

  • 移动早期的优势:体验+通知
  • 苹果的态度
iOS 通知相关 API 变迁:来源 onevcat.com

客户端通知架构

  • 需求?
  • :开发者可以从服务器给指定的(自己的) app 传递信息,兼顾安全与体验
  • 如何设计?
    • 不是短信
    • 兼顾安全是难点
    • 体验是什么?“即时”请求用户授权
  • 苹果的设计
通知授权过程

通知发送过程

我们目前的架构

  • Push 格式
  • LeanCloud
  • push history 表
  • installation 表
  • 在线发送
  • 环信 IM

实际问题

  • 环信+LeanCloud 带来什么问题?
    • 小红点不同步
  • 😱恐怖的 crash,上图(最恐怖的 crash 方式,最恐怖的比例)
出错代码
  • fixed?依旧 crash
  • 多设备问题?
    • 管理 channel 或自定义 installation 表列字段
  • 长度 256B -> 2KB -> 4KB
  • 量到一定级别,问题就变了。怎么批量推?
  • 推送成功没?
来源见图
  • 猜测
    • 苹果采用队列分批发送
    • 分批逻辑不支持批次拆分
    • 同时受 HTTP 自身限制
    • WTF:发送成功是直接断开连接的哦
来源见图
  • 证书
    • iOSer 的痛:证书不一致,过期,不同应用不同证书,线上线下不同,debug 环境无法调试
    • 证书 -> JWT
  • JWT?

推送的可能性

  • 最近七天不活跃?
  • 推送打开对应原生页面或 H5?url
  • 推送:张三你好~ ?
    • 客户端替换消息内容
  • 推送可选项?推送直接回复?
  • 推送图片?自定义推送样式?
  • 修改、撤销推送
iOS 不同通知形态 1
iOS 不同通知形态 2
iOS 不同通知形态 3

总结

  • 了解原理,有需求(问题)才能对症下药
  • 跟紧苹果大大:大胆应用 1 年发布的技术(稳定、高效、给力)

Q&A

参考链接

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容