测试 APNs 远程推送
完成 APNs 集成步骤以后,可直接测试推送是否集成成功。
准备测试 App
安装方式 | 发布方式 | 描述文件类型 | 推送至 APNs Sandbox 环境 | 推送至 APNs Production 环境 |
---|---|---|---|---|
Xcode run(模拟器) | / | / | / | / |
Xcode run(真机) | / | 开发 | 支持,必须使用融云应用开发环境的 App Key 和 APNs 配置。 | 不支持 |
IPA 文件 | Development | 开发 | 支持,必须使用融云开发环境的 App Key 和 APNs 配置。 | 不支持 |
第三方 App 平台(如,蒲公英) | Ad Hoc | Ad Hoc 发布 | 不支持 | 推荐使用融云应用生产环境的 App Key 和 APNs 配置。 |
第三方 App 平台(如,蒲公英) | Enterprise | Enterprise 发布 | 不支持 | 推荐使用融云应用生产环境的 App Key 和 APNs 配置。 |
TestFlight | App Store Connect | App Store 发布 | 不支持 | 支持,但必须使用融云应用生产环境的 APNs 配置。 |
App Store | App Store Connect | App Store 发布 | 不支持 | 支持,但必须使用融云应用生产环境的 App Key 和 APNs 配置。 |
准备推送测试环境
融云应用区分开发与生产环境,使用不同的 App Key。融云服务端向 APNs 发送推送请求时可能有多种组合,
必要条件:
- 使用真机:请使用真机进行测试,模拟器收不到远程推送。
- 使用未越狱的设备:请勿使用越狱的设备,已越狱的设备可能收不到远程推送。
- 确认 BundleID 中未包含通配符:使用通配符 BundleID 的 App 将无法使用远程推送。
打包指导:
-
通过 Xcode 在真机运行时,请使用融云应用的开发环境的 App Key,在融云应用的开发环境中,如果使用 P8、P12 证书,融云服务端仅向 APNs Sandbox 环境推送,如果使用 P12 通用证书,应配置为推送到 APNs Sandbox 环境。
-
通过 Development 方式打包时,请使用融云应用的开发环境的 App Key,在融云应用的开发环境中,如果使用 P8、P12 证书,融云服务 端仅向 APNs Sandbox 环境推送,如果使用 P12 通用证书,应配置为推送到 APNs Sandbox 环境。
-
使用 Ad-Hoc/TestFlight/AppStore 方式打包时,建议使用融云应用的生产环境的 App Key(需要在融云控制台申请上线)。只要是 生产环境的 App Key,融云服务端仅向 APNs Production 环境推送。
例外情况:在融云应用的开发环境中,如果使用 P12 通用证书,允许配置为向 APNs Production 环境推送,以满足测试需求。
如有疑问,您可以参考 Xcode 帮助文档:
- Xcode 帮助文档:Distribute to registered devices (iOS, tvOS, watchOS)。
- Xcode 帮助文档:Distribute an app using TestFlight (iOS, tvOS, watchOS)。
测试接收推送
建议先使用比较简单的单聊场景测试推送。步骤如下:
- App 连接融云成功之后杀掉 App 进程。
- 访问控制台的 IM Server API 调试页面,找到消息 > 消息服务 >发送单聊消息,直接给当前 App 用户发送一条单聊消息内容。
- 查看手机是否收到推送。