kameleoon_client_flutter 2.0.2 kameleoon_client_flutter: ^2.0.2 copied to clipboard
Our SDK gives you the possibility of running experiments and activating feature flags on all platforms targeted by the Flutter application framework.
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:kameleoon_client_flutter/kameleoon_client_flutter.dart';
import 'package:kameleoon_client_flutter_example/Pages/Main/main_page.dart';
import 'package:kameleoon_client_flutter_example/constants.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
Color _color = Color.fromRGBO(100, 100, 255, 1);
@override
void initState() {
super.initState();
initKameleoon();
}
Future<void> initKameleoon() async {
KameleoonClient client = KameleoonClientFactory.create("tndueuutdq");
String visitorCode = await client.getVisitorCode();
client.runWhenReady(() async {
try {
String? color = await client.getFeatureVariable(visitorCode, "color-feature-flag", "color") as String?;
color = "FF" + color!.toUpperCase().replaceAll("#", "");
mainColor = Color(int.parse(color, radix: 16));
setState(() {
_color = Color(int.parse(color!, radix: 16));
});
} on FeatureNotFound catch (e) {
print(e);
} on PlatformException catch (e) {
print(e);
}
}, () {
print("TIMEOUT");
}, Duration(seconds: 5));
}
@override
Widget build(BuildContext context) {
return MaterialApp(
title: "Kameleoon Plugin Demo",
theme: ThemeData(
primaryColor: _color,
scaffoldBackgroundColor: bgColor
),
home: MainPage(),
debugShowCheckedModeBanner: false,
);
}
}