rdc_flutter_sdk 0.0.1 rdc_flutter_sdk: ^0.0.1 copied to clipboard
Flutter plugin for sending user event data to Rabbit Data Collection platform
import 'package:flutter/material.dart';
import 'package:shop_app/routes.dart';
import 'package:shop_app/screens/splash/splash_screen.dart';
import 'package:shop_app/theme.dart';
import 'package:rdc_flutter_sdk/rabbit_data.dart';
import 'package:get/get.dart';
import 'package:geolocator/geolocator.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await _getPermission();
var config = RabbitDataConfig(
apiKey: 'GUawtArmlVOSlNbaTzwUMxBxlVqirqTc', dbType: DBType.realm);
var rabbitData = await RabbitData.initializeInstance(config);
await rabbitData.setUserInfo('', ''); // clear memberId, ssoId
Get.put(rabbitData, tag: 'rabbit_data');
runApp(MyApp());
}
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
title: 'Flutter Demo',
theme: theme(),
// home: SplashScreen(),
// We use routeName so that we dont need to remember the name
initialRoute: SplashScreen.routeName,
routes: routes,
);
}
}
Future _getPermission() async {
bool serviceEnabled;
LocationPermission permission;
// Test if location services are enabled.
serviceEnabled = await Geolocator.isLocationServiceEnabled();
if (!serviceEnabled) {
// Location services are not enabled don't continue
// accessing the position and request users of the
// App to enable the location services.
return Future.error('Location services are disabled.');
}
permission = await Geolocator.checkPermission();
if (permission == LocationPermission.denied) {
permission = await Geolocator.requestPermission();
if (permission == LocationPermission.denied) {
return Future.error('Location permissions are denied');
}
}
if (permission == LocationPermission.deniedForever) {
// Permissions are denied forever, handle appropriately.
return Future.error(
'Location permissions are permanently denied, we cannot request permissions.');
}
}