mzanalytics_mybmw 0.2.4 copy "mzanalytics_mybmw: ^0.2.4" to clipboard
mzanalytics_mybmw: ^0.2.4 copied to clipboard

unlistedoutdated

One for BMW Group to use flutter plug-in, data collection and analysis.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:mzanalytics_mybmw/mzanalytics_mybmw.dart';
import "package:mzanalytics_mybmw_example/main_second.dart";
import 'package:uni_links/uni_links.dart';

void main() {
  runApp(new MaterialApp(
      title: 'Navigation Basics',
      home: new FirstScreen(),
      navigatorObservers: [mz_navigation_history_observer()]));
}

class FirstScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    mzanalytics_mybmw.appid("2814");
    this.initPlatformStateForStringUniLinks();
    return MaterialApp(
      home: Scaffold(
          appBar: new AppBar(
            title: new Text('First Screen'),
          ),
          body: new Center(
            child: Column(children: <Widget>[
              RaisedButton(
                child: new Text('存储自定义事件'),
                onPressed: () {
                  // var parameter = {
                  //   'eventClassify': '点击热门banner',
                  //   'eventAction': 'Click',
                  //   'eventTag': '点击',
                  //   'cd1': 'cd1value22222222222',
                  //   'cm1': 'cm1value22222222222'
                  // };
                  mzanalytics_mybmw.setCd("cd1", "cd1vvvvvv");
                  mzanalytics_mybmw.setCm("cm1", "cm1vvvvvv");
                },
              ),
              RaisedButton(
                child: new Text('跳转页面'),
                onPressed: () {
                  Navigator.of(context).push(MaterialPageRoute(
                      settings: RouteSettings(name: "111222333"),
                      builder: (BuildContext context) => MyApp()));
                },
              ),
              RaisedButton(
                child: new Text('进入测试页面'),
                onPressed: () {
                  // Navigator.push(
                  //   context,
                  //   new MaterialPageRoute(
                  //       builder: (context) => new SecondScreen()),
                  // );
                  Navigator.of(context).push(MaterialPageRoute(
                      settings: RouteSettings(name: "进入测试页面"),
                      builder: (BuildContext context) => SecondScreen()));
                },
              ),
            ]),
          )),
    );
  }

  /// 使用[String]链接实现
  Future<void> initPlatformStateForStringUniLinks() async {
    String initialLink;
    // App start
    try {
      initialLink = await getInitialLink();
      mzanalytics_mybmw.onDeepLinkReceived(initialLink);
      print('initial link: $initialLink');
      if (initialLink != null) {
        print('initialLink--$initialLink');
        //  跳转到指定页面
        // schemeJump(context, initialLink);
      }
    } on PlatformException {
      initialLink = 'Failed to get initial link.';
    } on FormatException {
      initialLink = 'Failed to parse the initial link as Uri.';
    }
    //  App running
    getLinksStream().listen((String link) {
      print('link--$link');
      mzanalytics_mybmw.onDeepLinkReceived(link);
      //  跳转到指定页面
    }, onError: (Object err) {});
  }
}

class SecondScreen extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      appBar: new AppBar(
        title: new Text("Second Screen"),
      ),
      body: new Center(
        child: new RaisedButton(
          onPressed: () {
            Navigator.pop(context);
            mzanalytics_mybmw.getBlackList().then((List blackList) {
              print(blackList);
            });
          },
          child: new Text('Go back!'),
        ),
      ),
    );
  }
}
1
likes
0
points
387
downloads

Publisher

unverified uploader

Weekly Downloads

One for BMW Group to use flutter plug-in, data collection and analysis.

Homepage

License

unknown (license)

Dependencies

built_collection, flutter

More

Packages that depend on mzanalytics_mybmw

Packages that implement mzanalytics_mybmw