An unofficial Flutter plugin that wraps pusher-websocket-java on Android and pusher-websocket-swift on iOS.
This package lets you consume events from a Pusher server. In order to use this library, you need to have a free account on http://pusher.com. After registering, you will need the application credentials for your app.
Note: This plugin is still under development, and some APIs might not be available yet. Feedback and Pull Requests are most welcome!
- Add to your pubspec.yaml
dependencies:
flutter_pusher_client: ^0.1.0
import 'package:flutter_pusher_client/flutter_pusher.dart';
void main() {
var options = PusherOptions(host: '10.0.2.2', port: 6001, encrypted: false);
FlutterPusher pusher = FlutterPusher('app', options, enableLogging: true);
pusher.subscribe('channel').bind('event', (event) => {});
}
Connection to the server can be delayed, so set the lazyConnect prop on the client constructor.
If you have enabled code obfuscation with R8 or proguard, you need to add the following rule.
android/app/build.gradle
:
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
android/app/proguard-rules.pro
:
-keep class com.github.heywhy.flutter_pusher.** { *; }
Generate the models and the factories: flutter packages pub run build_runner build --delete-conflicting-outputs