apex_socket 0.0.1 copy "apex_socket: ^0.0.1" to clipboard
apex_socket: ^0.0.1 copied to clipboard

outdated

ApexSocket plugin.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'dart:async';

import 'package:flutter/services.dart';
import 'package:apex_socket/apex_socket.dart';
import 'package:logging/logging.dart';
import 'package:socket_io_client/socket_io_client.dart';

void main() {
  Logger.root.level = Level.OFF; // defaults to Level.INFO
  Logger.root.onRecord.listen((record) {
    print('${record.level.name}: ${record.time}: ${record.message}');
  });

  ApexSocket.init('ws://api.apexteam.net', 2022, OptionBuilder());

  runApp(MyApp());
}

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  String _platformVersion = 'Unknown';

  @override
  void initState() {
    super.initState();

  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Row(
            children: [
              RaisedButton(
                  onPressed: () {
                    ApexSocket.shared.createSocket();
                  },
                  child: const Text('connect')),
              RaisedButton(
                  onPressed: () {
                    if (ApexSocket.shared.isConnected) {
                      ApexSocket.socket.emitWithAck(
                          'chat message', 'SALAM', ack: (data) {
                        print(data);
                      });

                      ApexSocket.socket.on('khosro', (data) {
                        print(data);
                        // ((data as List).last as Function).call(['Hey baby']);
                      });
                    }
                  },
                  child: const Text('send'))
            ],
          ),
        ),
        body: Center(
          child: Text('Running on: $_platformVersion\n'),
        ),
      ),
    );
  }
}