A flutter plugin for .net SignalR client.
First of all, Initialize SignalR and connect to your server.
SignalR signalR = SignalR(
'<Your server url here>',
"<Your hub name here>",
hubMethods: ["<Your Hub Method Names>"]
statusChangeCallback: (status) => print(status),
hubCallback: (methodName, message) => print('MethodName = $methodName, Message = $message'));
signalR.connect();
Here statusChangeCallback
will get called whenever connection status with server changes.
hubCallback
will receive calls from the server if you subscribe to any hub method. You can do that with hubMethods
.
hubMethods
are the hub method names you want to subscribe.
There is a headers
parameters also which takes a Map<String, String>
.
You can also invoke any server method.
signalR.invokeMethod("<Your method name here>", arguments: ["argument1", "argument2"]);
If you are trying to connect with a HTTP url, then you need to add the following lines to the manifest of your android project.
<application
android:usesCleartextTraffic="true">
</application>
This is because of the Network Security Config.
R8 may strip away some SignalR classes for the Android in Release Builds. Add the following line in your proguard-rules.pro
file to solve this issue.
-keep class microsoft.aspnet.signalr.client.hubs.** { *; }
For more info check example.
Any issue or PR is always welcome.