Flutter SDK

Flutter SDK 使用说明

Flutter SDK 主要用于Flutter语言开发的应用.

SDK Releases包下载: Github地址(推荐):https://github.com/analysys/ans-flutter-sdk/releases Gitee地址:https://gitee.com/Analysys/ans-flutter-sdk/releases Releases中含有更新说明请您阅读,接口使用请参考本文档。

移动端iOS & Android Flutter插件使用说明

flutter SDK主要对移动端iOS和Android两个平台常用接口的封装,支持常用埋点事件的统计上报。

插件安装

在 Flutter 项目下 pubspec.yaml 文件添加 argo_flutter_plugin 依赖,配置如下:

dependencies:
  ## 易观方舟flutter插件
  argo_flutter_plugin: ^1.0.0

安装插件:

flutter packages get

代码引用

import 'package:argo_flutter_plugin/argo_flutter_plugin.dart';

SDK初始化

Android 端

建议在应用 Application 中调用 SDK 初始化接口 init(), 配置 AppKey、Channel

import com.analysys.AnalysysAgent;
import com.analysys.AnalysysConfig;
import com.analysys.EncryptEnum;

import io.flutter.app.FlutterApplication;

public class AnalysysApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        
        // 初始化SDK
        AnalysysConfig config = new AnalysysConfig();
        config.setAppKey("77a52s552c892bn442v721");
        config.setChannel("豌豆荚");
        AnalysysAgent.init(this, config);
        
        // 设置 打开 debug 模式 0:关闭 Debug 1:打开 Debug数据仅调试 2:打开Debug数据计入平台统计
 注意:若设置其他值则不生效,使用默认值
        AnalysysAgent.setDebugMode(this, 2);
        // 设置自定义上传地址为 scheme://host + :port
        AnalysysAgent.setUploadURL(mContext,"/*设置为实际地址*/");
    }
}

iOS 端

在Xcode工程文件~AppDelegate.m 中导入头文件#import <AnalysysAgent/AnalysysAgent.h>,并在入口函数- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions中进行SDK初始化:

//  导入SDK
#import <AnalysysAgent/AnalysysAgent.h>

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
     //  初始化SDK
    AnalysysConfig.appKey = <#appkey#>;
    AnalysysConfig.channel = @"App Store";
    [AnalysysAgent startWithConfig:AnalysysConfig];
    
    #ifdef DEBUG
        [AnalysysAgent setDebugMode:AnalysysDebugButTrack];
    #endif
    //  设置上传地址
    [AnalysysAgent setUploadURL:@"https://url:port"];

    return YES;
}

插件使用

在所需代码dart文件中引入插件:

import 'package:argo_flutter_plugin/argo_flutter_plugin.dart';

API接口

统计事件

事件跟踪,设置事件名称和事件详细信息。接口如下:

Map<String, Object> properties = {"productCategory": "iPhone X", "price": 6000};
AnalysysAgent.track("purchase", properties);

用户属性设置

SDK提供以下接口供用户设置用户的属性,比如用户的年龄/性别等信息。

Map<String, Object> properties = {"nickName":"小叮当", "hobby": ["Singing", "Dancing"]};
AnalysysAgent.profileSet(properties);

通用属性设置

如果某个事件的属性,在所有事件中都会出现,则这个属性可以做为通用属性,通过 registerSuperProperties() 将该属性设置为事件通用属性,则设置后每次发送事件的时候都会带有该属性。比如用户浏览/购买商品过程中的用户等级就可以作为通用属性。

Map<String, Object> properties = {"birthday": "2010-01-01"};
AnalysysAgent.registerSuperProperties(properties);

用户关联

用户 ID 关联接口。将 用户ID和匿名ID关联,计算时会认为是一个用户的行为。该接口是在匿名ID发生变化的时候调用,来告诉 SDK 匿名ID变化前后的 ID 对应关系。该场景一般应用在用户注册/登录的过程中。比如:一个匿名用户浏览商品,系统为其分配的distinctId = "1234567890987654321",随后该匿名用户进行注册,系统为其分配了新的注册 ID,aliasId = "ABCDEF123456789",此时就需要调用 alias 接口对两个 ID 进行关联。接口如下:

AnalysysAgent.alias('A');

其他接口请参iOS& Android 接口

最后更新于