ibox_plugin 0.0.4 ibox_plugin: ^0.0.4 copied to clipboard
A new flutter plugin project.
example/lib/main.dart
import 'package:flutter/material.dart';
import 'dart:async';
import 'package:flutter/services.dart';
import 'package:ibox_plugin/ibox_plugin.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
String _platformVersion = 'Unknown';
@override
void initState() {
super.initState();
//enable2can();
//enable2can().whenComplete(() => auth()).whenComplete(() => attachCard());
//auth().then((value) => attachCard());
//attachCard();
Stream<String> myStream = IboxPlugin.getReaderEventStream;
StreamSubscription subscription = myStream.listen((data) {
print('2can DATA : $data');
}, onError: (err) {
print('2can ERROR');
});
// Stream<String> myStream2 = IboxProSdkExternal.getBatteryStateEventStream;
// subscription = myStream2.listen((data) {
// print('2can battery : $data');
// }, onError: (err) {
// print('2can battery ERROR');
// });
}
Future<void> auth() async {
await IboxPlugin.auth("login", "secretKey");
}
Future<void> attachCard() async {
await IboxPlugin.attachCard;
}
Future<void> enable2can() async {
//await IboxPlugin.enable2can("usb_mode");
await IboxPlugin.enable2can("A4:11:63:8A:7E:AA");
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('Plugin example app'),
),
body: new Center(
child: Column(
children: [
StreamBuilder(
stream: IboxPlugin.getReaderEventStream,
builder:
(BuildContext context, AsyncSnapshot<String> snapshot) {
if (snapshot.hasData) {
return Text('OnReaderEvent: ${snapshot.data}');
}
return Text('CONNECTION: NO DATA');
},
),
StreamBuilder(
stream: IboxPlugin.getBatteryStateEventStream,
builder:
(BuildContext context, AsyncSnapshot<double> snapshot) {
if (snapshot.hasData) {
return Text('Battery: ${snapshot.data}%');
}
return Text('Battery: NO DATA');
},
),
StreamBuilder(
stream: IboxPlugin.getErrorEventStream,
builder:
(BuildContext context, AsyncSnapshot<String> snapshot) {
if (snapshot.hasData) {
return Text('OnErrorEvent: ${snapshot.data}');
}
if (snapshot.hasError){
return Text('OnErrorEvent: ${snapshot.error}');
}
return Text('OnErrorEvent: NO ERROR');
},
),
ButtonBar(
children: [RaisedButton(
onPressed: enable2can,
child: const Text('Enable 2can'),
),
RaisedButton(
onPressed: auth,
child: const Text('auth'),
),
RaisedButton(
onPressed: attachCard,
child: const Text('attachCard'),
)
],
)
],
),
),
),
);
}
}