platfer 0.0.2 copy "platfer: ^0.0.2" to clipboard
platfer: ^0.0.2 copied to clipboard

platfer

example/lib/main.dart

import 'dart:io';

import 'package:flutter/material.dart';

import 'package:platfer/event/event_delegate.dart';
import 'package:platfer/event/plugin/plugin.dart';
import 'package:platfer/event/statistics.dart';
import 'package:platfer/event/ui/campaign.dart';

class NoCheckCertificateHttpOverrides extends HttpOverrides {
  @override
  HttpClient createHttpClient(SecurityContext? context) {
    return super.createHttpClient(context)
      ..badCertificateCallback =
          (X509Certificate cert, String host, int port) => true;
  }
}

void main() {
  HttpOverrides.global = NoCheckCertificateHttpOverrides();
  Plugin.init("123", "1234");
  runApp(BasicWidget());
}

class TestEventHandler extends ClientEventHandler {
  final BuildContext context;

  TestEventHandler(this.context);

  @override
  eventRequest(Map<String, dynamic> map) {
    ScaffoldMessenger.of(context)
        .showSnackBar(SnackBar(content: Text(map.toString())));
  }

  @override
  navi(BuildContext context, Map<String, dynamic> map) {
    // TODO: implement navi
    throw UnimplementedError();
  }
}

class BasicWidget extends StatefulWidget {
  @override
  _BasicWidgetState createState() => _BasicWidgetState();
}

class _BasicWidgetState extends State<BasicWidget> {
  @override
  void initState() {
    super.initState();

    PlatferStatistics.setData("123", '1234', "test");
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Plugin example app'),
        ),
        body: LayoutBuilder(
          builder: (context, _) {
            return SingleChildScrollView(
              child: Column(
                children: [
                  Campaign(
                    campaignKey: '1ec901c474e84052be8ee540c591bd46',
                    eventHandler: TestEventHandler(context),
                    listType: CampaignListType.slide,
                  ),
                ],
              ),
            );
          },
        ),
      ),
    );
  }
}