帮助中心 > 技术文档 > 客户端SDK > 跨平台框架 > Flutter 插件 > SDK配置

Flutter插件接入流程主要分为两个步骤(两个文档)

1、SDK配置:将对应的SDK集成到您的产品项目中,然后进行初始化代码处理;
2、SDK接入:将需要埋点的数据,按照SDK包装不同的方法进行数据上送,其中功能主要包含两大类:全埋点(自动采集数据上送)、自定义埋点(手动设置业务数据上送)。


1. 集成说明

1.1 配置依赖

在 Flutter 项目的 pubspec.yaml 文件,dependencies里添加插件配置:

dependencies:
  flutter:
    sdk: flutter
  # 添加插件配置
  hina_flutter_plugin:
    git:
      url: https://github.com/hinadt/hina-flutter-plugin.git
      ref: master

1.2 安装插件

执行 flutter packages get 命令安装插件:

flutter pub get

1.3 web端配置

  1. 请先下载Web SDK 资源文件,资源下载,解压后拷贝hina.min.js文件,放到web目录下;
  2. 在web目录下的index.html文件里,引入hina.min.js;
    <head>
     ...
    <!-- This script adds the flutter initialization JS code -->
     <script src="flutter.js" defer></script>
     <!-- 引入 web sdk 文件 -->
     <script src="hina.min.js" async></script>
     ...
    </head>

2. SDK初始化

注意:务必放到WidgetsFlutterBinding.ensureInitialized()之后初始化;

2.1 移动端

说明:flutter 安卓和iOS端初始化方法及参数如下。

void main() async {
  ...
  WidgetsFlutterBinding.ensureInitialized();
  // 放到WidgetsFlutterBinding.ensureInitialized()之后初始化;
  if (kIsWeb) {
    // web平台有单独的初始化方法,具体查看Web JS SDK集成文档;
    HinaFlutterPlugin.callMethodForWeb('init', [{
      'serverUrl': '采集上报地址URL',
      'showLog' : true,
      //单页面配置,默认开启,若页面中有锚点设计,需要将该配置删除,否则触发锚点会多触发 H_pageview 事件
      'isSinglePage': true,
      'autoTrackConfig': {
        //是否开启自动点击采集, true表示开启,自动采集 H_WebClick 事件
        'clickAutoTrack': true,
        //是否开启页面停留采集, true表示开启,自动采集 H_WebStay 事件
        'stayAutoTrack': true,
      }
    }]);
  } else {
    HinaFlutterPlugin.initForMobile(
        serverUrl: '采集上报地址URL',
        autoTrackTypeList: {HAAutoTrackType.APP_START, HAAutoTrackType.APP_END},
        enableLog: true //日志打开,默认关闭
        );
  }
  ...
  runApp(const MyApp());
}

初始化可选参数

参数key(String类型) 参数value类型 参数说明
serverUrl String 【必填】配置采集上报地址URL(在线获取
flushInterval int 【可选】自定义上报时间间隔
flushPendSize int 【可选】自定义上报缓存条数
enableLog bool 【可选】开启日志
maxCacheSizeForAndroid long 【可选】自定义缓存上限(Android用)
maxCacheSizeForIOS int 【可选】自定义缓存上限(iOS用)
autoTrackTypeList Set<HAAutoTrackType>? 【可选】开启全埋点
networkTypeList Set<HANetworkType>? 【可选】自定义上报网络条件
enableJSBridge bool 【可选】App打通H5

2.2 web 端

说明:web平台有单独的初始化方法,具体参考:Web JS SDK配置

作者:邓昊  创建时间:2023-03-22 13:44
最后编辑:王建华  更新时间:2024-09-05 21:06