You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter中socket_io库不存在,导入相关库遇问题求助

解决Flutter中Socket.IO包导入问题的方案
  • 确认正确的依赖包
    Flutter客户端开发只需要使用socket_io_client包,socket_io是Dart服务端专用库,不要在Flutter项目中添加该依赖。打开pubspec.yaml,在dependencies节点下添加:

    dependencies:
      flutter:
        sdk: flutter
      socket_io_client: ^2.0.0 # 可替换为pub上的最新稳定版本
    

    保存文件后执行命令:flutter pub get

  • 修正导入语句
    删除socket_io相关的导入代码,只保留客户端包的导入,正确写法如下:

    import 'package:socket_io_client/socket_io_client.dart' as IO;
    

    dart:async和package:flutter/material.dart可正常保留,不会产生冲突。

  • 排查常见问题

    • 检查pubspec.yaml缩进:依赖项必须和flutter:保持同级缩进(通常为2个空格),格式错误会导致pub无法识别依赖。
    • 重启IDE:执行flutter pub get后,部分IDE可能存在缓存问题,重启后才能加载新添加的包。
    • 版本兼容性:若你的Flutter版本较旧,可查看socket_io_client的版本说明,选择适配的版本号。
  • 简单测试示例
    用以下代码验证Socket连接是否正常:

    void initSocket() {
      IO.Socket socket = IO.io('http://你的服务端地址', {
        'transports': ['websocket'],
        'autoConnect': false,
      });
      socket.connect();
      
      socket.onConnect((_) {
        print('Socket连接成功');
        socket.emit('message', '来自Flutter客户端的消息');
      });
      
      socket.onDisconnect((_) => print('Socket断开连接'));
    }
    

内容的提问来源于stack exchange,提问作者ahmetcakici

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 10:26:59