jc_sdk 1.0.1
jc_sdk: ^1.0.1 copied to clipboard
JC Flutter SDK is a flutter plugin wrapper based on Juphoon Express RTC SDK (Android & IOS), providing real-time audio/video services.
example/lib/main.dart
import 'package:flutter/material.dart';
import 'dart:async';
import 'package:jcflutter_example/client_state_info.dart';
import 'package:jcflutter_example/device_info_state.dart';
import 'package:oktoast/oktoast.dart';
import 'package:package_info_plus/package_info_plus.dart';
import 'package:provider/provider.dart';
import 'call_state.dart';
import 'camera_state.dart';
import 'home_page.dart';
import 'log_info.dart';
import 'login_info.dart';
import 'notifier/channel_state_info.dart';
void main() {
runApp(MultiProvider(
providers: [
ChangeNotifierProvider(create: (context) => ClientStateInfo()),
ChangeNotifierProvider(create: (context) => LoginInfo()),
ChangeNotifierProvider(create: (context) => LogInfo()),
ChangeNotifierProvider(create: (context) => CallState()),
ChangeNotifierProvider(create: (context) => DeviceInfoState()),
ChangeNotifierProvider(create: (context) => CameraState()),
ChangeNotifierProvider(create: (context) => ChannelStateInfo()),
],
child: MyApp(),
));
//runApp(const MyApp());
}
class MyApp extends StatefulWidget {
const MyApp({super.key});
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
String _version = 'Unknown';
String _buildNumber = 'Unknown';
@override
void initState() {
super.initState();
_loadVersionInfo();
}
Future<void> _loadVersionInfo() async {
PackageInfo packageInfo = await PackageInfo.fromPlatform();
setState(() {
_version = packageInfo.version;
_buildNumber = packageInfo.buildNumber;
});
}
@override
Widget build(BuildContext context) {
return OKToast(
child: MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('JCSample $_version($_buildNumber)'),
),
body: HomePage(),
),
));
}
}