Flutter
优质
小牛编辑
174浏览
2023-12-01
百度移动统计现已提供Flutter插件的支持,对于基于Flutter开发的APP,您可以按如下步骤使用百度移动统计SDK,完成基础的埋点统计和上报。
集成方法
在 Flutter 项目的 pubspec.yaml 文件中 dependencies 里面添加 baidu_mob_stat 依赖
dependencies: baidu_mob_stat: ^0.0.2
执行 flutter packages get 命令安装插件
flutter packages get
在ios 目录下执行 pod install 命令进行 iOS SDK 的集成
cd ios pod install
Android初始化百度移动统计SDK
需要在mtj官网创建你自己的app,可获取到appkey。 在MainApplication的onCreat()方法中,添加如下初始化代码:
import com.baidu.mobstat.StatService;
public class MainActivity extends FlutterActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//调试模式下,打开log开关,可以看到调试log
//StatService.setDebugOn(true);
//设置app发布渠道
//StatService.setAppChannel(this, "appChannel", true) ;
//设置app版本号
//StatService.setAppVersionName(this,"1.0");
//设置Appkey
StatService.setAppKey("testAppkey");
//启动sdk
StatService.start(this);
}
}
iOS初始化百度移动统计SDK
需要在mtj官网创建你自己的app,可获取到appkey。 如果iOS端选择的语言是Objective-C,在iOS工程的AppDelegate.m文件中,didFinishLaunchingWithOptions启动函数下,添加如下初始化代码:
#import "BaiduMobStat.h"
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
//调试模式下,可设置enableDebugOn属性为YES,可以看到调试log
//[BaiduMobStat defaultStat].enableDebugOn = YES;
//设置app发布渠道,可以不设置,默认为AppStore
//[BaiduMobStat defaultStat].channelId = @"AppStore";
//设置app版本号
//[BaiduMobStat defaultStat].shortAppVersion = @"1.0";
[[BaiduMobStat defaultStat] startWithAppId:@"APPKEY"];
......
}
如果iOS端选择的语言是swift,在iOS工程的AppDelegate.swift文件中,didFinishLaunchingWithOptions启动函数下,添加如下初始化代码:
import BaiduMobStat
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
//调试模式下,可设置enableDebugOn属性为YES,可以看到调试log
//BaiduMobStat.default().enableDebugOn = true
//设置app发布渠道,可以不设置,默认为AppStore
//BaiduMobStat.default().channelId = 'AppStore'
//设置app版本号
//BaiduMobStat.default().shortAppVersion = '1.0'
BaiduMobStat.default().startWithAppId("APPKEY")
......
}
在Flutter中使用dart代码埋点
在dart文件中引入百度移动统计插件,如下:
import 'package:baidu_mob_stat/baidu_mob_stat.dart';
添加事件埋点。需要埋点的事件EventID以及其attribute字典参数key,需要提前在mtj平台创建配置,具体步骤见事件配置中“eventid配置”部分以及“attribute配置”。在合适业务逻辑触点(如按钮点击触发),添加如下代码:
//普通事件,参数:EventID、attribute字典 BaiduMobStatFlutter.logEvent('EventID', {'key': 'value', 'key2': 'value2'}); //已知时长事件,参数:EventID、时长(ms)、attribute字典 BaiduMobStatFlutter.logDurationEvent('EventID', 3000, {'k1': 'v1'}); //事件开始,参数:EventID BaiduMobStatFlutter.eventStart('EventID'); //事件结束(与事件开始埋点成对使用),参数:EventID、attribute字典 BaiduMobStatFlutter.eventEnd('Event3', {'k1': 'v1'});
添加页面埋点
//页面开始,参数:PageName BaiduMobStatFlutter.pageStart('AnotherPage'); //页面结束,参数:PageName BaiduMobStatFlutter.pageEnd('AnotherPage');
获取设备id与调试id
//获取设备id BaiduMobStatFlutter.getDeviceCuid(); //获取调试id BaiduMobStatFlutter.getTestDeviceId();
调用demo可详见demo工程:https://github.com/BaiduMobileAnalysis/baidumobstat-flutter