React Native集成SIP.js遇Android端WebSocket 1006错误求助
React Native Android端sip.js WebSocket 1006错误解决方案
针对你遇到的Android端WebSocket连接异常关闭(code 1006)、iOS正常的问题,可从以下几个方向排查解决:
1. 配置Android网络安全策略
Android 9及以上对网络连接有严格的安全限制,若服务器使用自签名证书或域名未被信任,会导致WSS连接失败。
- 在
android/app/src/main/res/xml目录下创建network_security_config.xml文件,内容如下:
<?xml version="1.0" encoding="utf-8"?> <network-security-config> <domain-config cleartextTrafficPermitted="false"> <!-- 替换为你的WebSocket服务器域名 --> <domain includeSubdomains="true">my.websocket.server</domain> <!-- 若使用自签名证书,添加以下配置(需将证书文件放在res/raw目录下) --> <trust-anchors> <certificates src="@raw/your_server_certificate"/> </trust-anchors> <!-- 指定兼容的TLS版本,避免版本不匹配 --> <tls-config minVersion="TLS_1_2" maxVersion="TLS_1_3"/> </domain-config> </network-security-config>
- 在
AndroidManifest.xml的application标签中添加配置引用:
<application ... android:networkSecurityConfig="@xml/network_security_config">
2. 显式指定React Native WebSocket构造函数
sip.js默认使用的WebSocket实现可能与Android端存在兼容性问题,显式指定使用React Native内置的WebSocket:
修改你的注册代码:
import { Registerer, UserAgent } from 'sip.js'; export const registerUserAgent = async () => { try { let sipUsername = 'my username'; let sipToken = 'my token'; const userAgentOptions = { transportOptions: { server: 'wss://my.websocket.server:port', traceSip: true, // 强制使用React Native的WebSocket wsConstructor: WebSocket }, logLevel: 'debug', }; userAgentOptions.uri = UserAgent.makeURI( `sip:${sipUsername}@my.websocket.server:port`, ); let userAgent = new UserAgent(userAgentOptions); userAgent.delegate = { onDisconnect(err) { console.log(err, 'Disconnect error'); }, }; await userAgent.start(); } catch (err) { console.log(err); } };
3. 检查网络权限与端口可用性
- 确保
AndroidManifest.xml中已添加必要的网络权限:
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
- 测试服务器WSS端口是否可被Android设备访问,避免端口被防火墙或网络环境拦截,建议优先使用标准443端口测试。
4. 验证服务器TLS配置
确认服务器的TLS配置支持Android设备兼容的版本(至少TLS 1.2),部分旧Android设备不支持TLS 1.3,可临时降低服务器TLS版本测试是否解决问题。
内容的提问来源于stack exchange,提问作者Irfan wani
相关产品推荐
相关产品推荐

