Flutter应用MetaMask登录失败:SocketException主机查找错误求助
解决Flutter MetaMask登录的SocketException问题
针对你遇到的SocketException: Failed host lookup: '8.bridge.walletconnect.org'错误,给出以下排查和解决步骤:
检查WalletConnect版本与桥接地址兼容性
8.bridge.walletconnect.org是WalletConnect v1的旧桥接地址,目前v1服务已停止维护。如果你使用的是WalletConnect v2 SDK,必须替换为v2的中继地址wss://relay.walletconnect.com,同时确保初始化时配置了有效的Project ID(需在WalletConnect官方平台申请)。验证网络与DNS解析
在测试设备的浏览器中访问https://8.bridge.walletconnect.org,确认是否能正常加载。如果无法访问,可能是:- 设备网络受防火墙/VPN限制,尝试切换至普通网络环境;
- 设备DNS配置异常,手动切换为公共DNS(如8.8.8.8或1.1.1.1)后重试。
确认Android权限配置正确性
确保INTERNET权限声明在<manifest>标签内、<application>标签外,格式如下:<manifest xmlns:android="http://schemas.android.com/apk/res/android"> <uses-permission android:name="android.permission.INTERNET"/> <!-- 其他权限和配置 --> <application ...> <!-- 应用配置 --> </application> </manifest>若目标SDK为Android 9(API 28)及以上,且涉及明文HTTP请求(极少情况),需在
<application>标签添加android:usesCleartextTraffic="true"。清理项目缓存并重新构建
执行以下命令清理缓存后重新编译:flutter clean flutter pub get flutter run检查WalletConnect初始化代码
确保初始化代码使用了正确的参数,以v2为例:final connector = WalletConnect( relayUrl: 'wss://relay.walletconnect.com', projectId: '你的Project ID', clientMeta: const PeerMeta( name: '你的应用名称', description: '应用描述', url: 'https://你的应用域名', icons: ['https://你的应用图标地址'], ), );
内容的提问来源于stack exchange,提问作者ysaito
相关产品推荐
相关产品推荐

