whiteboard_sdk_flutter 0.3.0 whiteboard_sdk_flutter: ^0.3.0 copied to clipboard
A Flutter wrapper for netless whiteboard
Agora Whiteboard SDK #
A Flutter Plugin of Agora Whiteboard SDK
Installation #
Add whiteboard_sdk_flutter to your pubspec:
dependencies:
whiteboard_sdk_flutter: ^0.3.0
Android #
Configure your app to use the INTERNET
permission in the manifest file located
in:
<project root>/android/app/src/main/AndroidManifest.xml
:
<uses-permission android:name="android.permission.INTERNET"/>
Sample Usage #
Live Room #
- Init whiteboard using
WhiteSdkOptions
,WhiteSdk
can be fetch ononSdkCreated
- call
WhiteSdk.joinRoom
usingRoomOptions
to fetch aWhiteRoom
WhiteRoom
is a controller to Live-Whiteboard
Widget build(BuildContext context) {
return new WhiteboardView(
options: WhiteOptions(
appIdentifier: APP_ID,
log: true,
backgroundColor: Color(0xFFF9F4E7),
),
onSdkCreated: (sdk) async {
// use sdk to join room
var room = await sdk.joinRoom(
options: RoomOptions(
uuid: ROOM_UUID,
roomToken: ROOM_TOKEN,
uid: APP_UNIQUE_UID,
isWritable: true,
),
);
setState(() {
whiteSdk = sdk;
whiteRoom = room;
});
},
);
}
Replay #
- Init whiteboard using
WhiteSdkOptions
,WhiteSdk
can be fetch ononSdkCreated
- call
WhiteSdk.joinReplay
usingReplayOptions
to fetchWhiteReplay
WhiteReplay
is a controller to Record-Whitebarod
Widget build(BuildContext context) {
return new WhiteboardView(
options: WhiteOptions(
appIdentifier: APP_ID,
log: true,
backgroundColor: Color(0xFFF9F4E7),
),
onSdkCreated: (whiteSdk) async {
// use sdk to join replay
var replay = await sdk.joinReplay(
options: ReplayOptions(room: ROOM_UUID, roomToken: ROOM_TOKEN),
onPlayerStateChanged: _onPlayerStateChanged,
onPlayerPhaseChanged: _onPlayerPhaseChanged,
onScheduleTimeChanged: _onScheduleTimeChanged,
);
setState(() {
whiteSdk = sdk;
whiteReplay = replay;
});
},
);
}
Example #
See the example/
folder for a working example app.
Common apis can be found in the examples/
Contributor #
Thanks To liuhong1happy for the first version of flutter whiteboard.