Pakete, Repositories und App-Kategorien suchen

Paketdetailsv0.2.2

websocket_manager

Ein Flutter-Plugin für Android und iOS, das WebSocket-Verbindungen unterstützt

30-Tage-Downloads
49
Likes
44
Pub-Punkte
40

Paket installieren

flutter pub add websocket_manager

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Ein Flutter-Plugin, das für Android und iOS entwickelt wurde und nahtlose WebSocket-Verbindungen ermöglicht. Es bietet eine zuverlässige und effiziente Möglichkeit, die Echtzeitkommunikation zwischen App und Server aufrechtzuerhalten, unterstützt bidirektionale Datenübertragung. Das Paket vereinfacht die Verbindungsverwaltung, einschließlich automatischer Neuaufnahme und Nachrichtenverarbeitung, und ist daher ideal für Live-Updates, Chat-Anwendungen und Echtzeitbenachrichtigungen. Mit Fokus auf Einfachheit und Leistung wurde es nahtlos in Flutter-Projekte integriert.

Anwendungsfälle

  • Echtzeit-Chats-Anwendungen
  • Live-Datenstrom
  • Push-Benachrichtigungssysteme
  • IoT-Gerätekommunikation
  • Online-Spielfunktionen

Hauptmerkmale

  • Automatische Wiederherstellung bei Trennung
  • Bidirektionaler Nachrichtenaustausch
  • Einfache API für die Verbindungsverwaltung
  • Unterstützung für JSON- und Binärnachrichten
  • Eingebaute Fehlerbehandlung

Geeignet für

  • Entwickler, die Echtzeit-Apps erstellen
  • Apps, die dauerhafte Serververbindungen erfordern
  • Projekte, die eine geringe Latenzkommunikation benötigen

Hinweise

  • Beschränkt auf die Plattformen Android und iOS
  • Keine integrierte Verschlüsselung (erfordert externe Einrichtung)
  • Abhängig von stabiler Netzwerkverbindung

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.


NOTE: This repository is no longer maintained by ENGAPP. It was moved to be maintained by Kunlatek on the following link: https://github.com/kunlatek/flutter_websocket_manager_plugin

Any issue regarding this plugin should be reported there.


Websocket Manager

A Flutter plugin for Android and iOS supports websockets. This plugin is based on two different native libraries Starscream for iOS and okHttp for Android.

This plugin was created due to our necessity to maintain a WebSocket connection active in background while Flutter's WebSocket from cookbook doesn't keep alive while screen is locked or the application was in background.

Introduction

Websocket Manager doesn't manipulate websockets in Dart codes directly, instead, the plugin uses Platform Channel to expose Dart APIs that Flutter application can use to communicate with two very powerful websocket native libraries. Because of that, all credits belong to these libraries.

How to install

Android

You only need this configuration if your server doesn't have SSL/TLS

Since Android P http is blocked by default and there are many ways to configure. One way to configure is explicitly saying that you accept clear text for some host.

  • Create res/xml/network_security_config.xml with content:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <domain-config cleartextTrafficPermitted="true">
        <domain includeSubdomains="true">your_domain</domain>
    </domain-config>
</network-security-config>
  • Point to this file from your manifest (for bonus points add it only for the test manifest):
<application
    android:networkSecurityConfig="@xml/network_security_config"
    android:label="@string/app_name"
    android:theme="@style/AppTheme">
    <activity android:name=" (...)
</application>
iOS

Doesn't require any configuration

Example

int messageNum = 0;
// Configure WebSocket url
final socket = WebsocketManager('wss://echo.websocket.org');
// Listen to close message
socket.onClose((dynamic message) {
    print('close');
});
// Listen to server messages
socket.onMessage((dynamic message) {
    print('recv: $message');
    if messageNum == 10 {
        socket.close();
    } else {
        messageNum += 1;
        final String msg = '$messageNum: ${DateTime.now()}';
        print('send: $msg');
        socket.send(msg);
    }
});
// Connect to server
socket.connect();

Credits

Kategorien

Quell-Repository

Projekte, die dieses Paket verwenden

Noch keine Daten verfügbar.