React Native iOS集成OneSignal遇连接错误,Android端正常
React Native OneSignal iOS端连接失败问题排查
出现的错误日志
[connection] nw_socket_handle_socket_event [C94.1.2:1] Socket SO_ERROR [61: Connection refused] [connection] nw_connection_get_connected_socket_block_invoke [C94] Client called nw_connection_get_connected_socket on unconnected nw_connection TCP Conn 0x6000014c4500 Failed : error 0:61 [61]
问题背景
已参考OneSignal官方文档及第三方教程完成React Native推送通知集成,Android端运行正常,但iOS端出现上述连接拒绝错误,无法正常工作。
排查及解决步骤
- 核对OneSignal App ID配置:检查iOS项目
Info.plist中的ONESIGNAL_APP_ID值是否与OneSignal后台的App ID完全一致,注意大小写和字符拼写 - 验证APNs证书:确保Apple开发者后台已生成对应环境(开发/生产)的APNs推送证书,且已正确上传至OneSignal后台,证书状态正常
- 检查网络连通性:错误码61表示连接被拒绝,确认测试设备可正常访问外网,若使用代理需放行OneSignal相关域名
- 确认版本兼容性:检查React Native版本与OneSignal SDK版本是否匹配,避免因版本不兼容引发的连接问题
- 确认SDK初始化时机:确保在App启动阶段正确调用OneSignal初始化方法,例如在
App.js的useEffect(函数组件)或componentDidMount(类组件)中执行初始化代码 - 检查推送权限:确认已在代码中调用
OneSignal.promptForPushNotificationsWithUserResponse()请求用户授权推送通知权限 - 清理重建项目:执行
pod deintegrate && pod install清理iOS依赖缓存,之后重新编译运行项目
内容的提问来源于stack exchange,提问作者Brij Panchal
相关产品推荐
相关产品推荐

