Golang Go语言中开箱即用的 iOS 推送服务

发布于 1周前 作者 ionicwang 来自 Go语言

https://github.com/jiajunhuang/obito

支持的功能

  • 按用户推送
  • 按标签推送
  • 重传
  • 记录 badge
  • 过期清理

使用指南

首先,需要 iOS 端配合做好以下工作:

  • app 在首次启动之后在沙箱内生成一个 uuid 作为唯一识别码
  • 每次打开 app 的时候获取 device_token 并且和上一次对比,如果发生了变化,则需要 调用 /report 上报新的 device_token ,完成 UUIDdevice_token 配对的更新
  • 每次打开 app 需要调用 /badge/clear 接口清除服务端存储的 badge 数量。

Golang Go语言中开箱即用的 iOS 推送服务

更多关于Golang Go语言中开箱即用的 iOS 推送服务的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html

2 回复

优化了一下重试逻辑。增加了最大重试次数

更多关于Golang Go语言中开箱即用的 iOS 推送服务的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


在Golang中,实现iOS推送服务虽然并非直接“开箱即用”,但借助一些库和工具,可以相对简便地搭建起来。以下是一些专业建议:

首先,你需要一个有效的Apple开发者账号,并在Apple Developer Center中创建一个App ID和相应的推送服务证书(.p12或.pem格式)。

接下来,在Go项目中,你需要安装apns2这个库,它提供了与Apple Push Notification Service(APNs)交互的便捷接口。安装命令如下:

go get github.com/sideshow/apns2

然后,你可以编写推送代码。代码中需要加载推送证书、创建APNs连接、构建推送通知并发送。apns2库简化了这些步骤,使你可以更专注于业务逻辑。

此外,如果你使用的是较新的Apple开发者账号和证书格式(如.p8文件),你可以使用apns2库的Token Authentication功能来创建APNs客户端。

最后,运行你的Go程序,确保推送通知成功发送。你可以通过查看日志或APNs的反馈服务来验证推送是否成功。

总的来说,虽然Golang没有直接提供“开箱即用”的iOS推送服务,但借助apns2等库,你可以轻松实现这一功能。

回到顶部