fl_umeng 2.1.0 copy "fl_umeng: ^2.1.0" to clipboard
fl_umeng: ^2.1.0 copied to clipboard

outdated

umeng plugin for flutter, only Android and IOS are supported

example/lib/main.dart

import 'package:fl_umeng/fl_umeng.dart';
import 'package:flutter/material.dart';

void main() {
  runApp(MaterialApp(
      debugShowCheckedModeBanner: false,
      title: 'UMeng Example',
      home: Scaffold(
          appBar: AppBar(title: const Text('UMeng Example')),
          body: Container(
              width: double.infinity,
              padding: const EdgeInsets.symmetric(horizontal: 10),
              child: _HomePage()))));
}

class _HomePage extends StatefulWidget {
  @override
  _HomePageState createState() => _HomePageState();
}

class _HomePageState extends State<_HomePage> {
  String text = '';

  @override
  void initState() {
    super.initState();
    init();
  }

  /// 注册友盟
  Future<void> init() async {
    print('注册友盟');
    final bool? data = await FlUMeng.instance.init(
        androidAppKey: '5f8fe2abfac90f1c19a8642e',
        iosAppKey: '5f8fe4d4c1122b44acfc7aa7',
        channel: 'channel');
    print('Umeng 初始化成功 = $data');
    final bool? crash = await FlUMeng.instance.setConfigWithCrash();
    print('UmengCrash 初始化成功 = $crash');
    await FlUMeng.instance.setConfigWithCrash();
    await FlUMeng.instance.setLogEnabled(true);
  }

  @override
  Widget build(BuildContext context) {
    return Column(mainAxisAlignment: MainAxisAlignment.center, children: <
        Widget>[
      Text(text, textAlign: TextAlign.center),
      const SizedBox(height: 20),
      Wrap(
          spacing: 10,
          runSpacing: 10,
          alignment: WrapAlignment.center,
          children: <Widget>[
            ElevatedButton(
                onPressed: () async {
                  final bool data = await FlUMeng.instance.signIn('userId');
                  text = 'signIn  $data';
                  setState(() {});
                },
                child: const Text('signOff')),
            ElevatedButton(
                onPressed: () async {
                  final bool data = await FlUMeng.instance.signOff();
                  text = 'signOff  $data';
                  setState(() {});
                },
                child: const Text('signOff')),
            ElevatedButton(
                onPressed: () async {
                  final bool data =
                      await FlUMeng.instance.setPageCollectionModeManual();
                  text = 'setPageCollectionModeManual  $data';
                  setState(() {});
                },
                child: const Text('setPageCollectionModeManual')),
            ElevatedButton(
                onPressed: () async {
                  final bool data =
                      await FlUMeng.instance.onPageStart('pageStart');
                  text = 'onPageStart  $data';
                  setState(() {});
                },
                child: const Text('onPageStart')),
            ElevatedButton(
                onPressed: () async {
                  final bool data = await FlUMeng.instance.onPageEnd('pageEnd');
                  text = 'onPageEnd  $data';
                  setState(() {});
                },
                child: const Text('onPageEnd')),
            ElevatedButton(
                onPressed: () async {
                  final bool data =
                      await FlUMeng.instance.setPageCollectionModeAuto();
                  text = 'setPageCollectionModeAuto  $data';
                  setState(() {});
                },
                child: const Text('setPageCollectionModeAuto')),
            ElevatedButton(
                onPressed: () async {
                  final bool data = await FlUMeng.instance
                      .onEvent('test', <String, String>{'test': 'test'});
                  text = 'onEvent  $data';
                  setState(() {});
                },
                child: const Text('onEvent')),
            ElevatedButton(
                onPressed: () async {
                  final bool data = await FlUMeng.instance.setLogEnabled(true);
                  text = 'logEnabled  $data';
                  setState(() {});
                },
                child: const Text('logEnabled')),
          ]),
      const Padding(padding: EdgeInsets.all(15), child: Text('仅支持 Android')),
      Wrap(
          spacing: 10,
          runSpacing: 10,
          alignment: WrapAlignment.center,
          children: <Widget>[
            ElevatedButton(
                onPressed: () async {
                  final bool data = await FlUMeng.instance
                      .setCustomLogWithCrash('key', 'type');
                  text = 'setCustomLogWithCrash  $data';
                  setState(() {});
                },
                child: const Text('setCustomLogWithCrash')),
            ElevatedButton(
                onPressed: () async {
                  final bool data = await FlUMeng.instance.reportError('error');
                  text = 'reportError  $data';
                  setState(() {});
                },
                child: const Text('reportError')),
          ])
    ]);
  }
}
18
likes
0
points
382
downloads

Publisher

unverified uploader

Weekly Downloads

umeng plugin for flutter, only Android and IOS are supported

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter

More

Packages that depend on fl_umeng