# Flutter SDK接入文档说明
# 1.集成SDK
在 Flutter 项目的 pubspec.yaml 文件中 dependencies 里面添加 sr_tracksdk_flutter_plugin 依赖
dependencies:
# 添加有数 flutter plugin
sr_tracksdk_flutter_plugin: ^0.0.2
执行 flutter packages get 命令安装插件
flutter packages get
# IOS
1.IOS需要在 ios/Podfile
中以下添加代码
ENV['SWIFT_VERSION'] = '4'
use_frameworks!
IOS 添加完上述代码后,需要到ios
目录下执行pod install
完成依赖下载
2.SDK初始化 通过有数开放平台申请appId、appSecret
2.1 Objective-C 初始化方式
如果您创建flutter项目时ios端选择的语言是Objective-C,则在 ios/Runner/AppDelegate.m 中进行如下初始化
#import "AppDelegate.h"
#import "GeneratedPluginRegistrant.h"
#import "TrackSDK-Swift.h"
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
TrackConfig *trackConfig = [[TrackConfig alloc] initWithSecretId:@"xxx" secretKey:@"xxx" launchOptions:launchOptions];
trackConfig.debug = true;
[SR initSDKWithConfig:trackConfig];
[GeneratedPluginRegistrant registerWithRegistry:self];
return [super application:application didFinishLaunchingWithOptions:launchOptions];
}
@end
2.2 Swift 初始化方式
如果您创建flutter项目时ios端选择的语言是Swift,则在 ios/Runner/AppDelegate.m 中进行如下初始化
import UIKit
import TrackSDK
@main
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
let trackConfig = TrackConfig(appId: "xxx", appSecret: "xxx", launchOptions: launchOptions)
// 开启 debug
trackConfig.debug = true;
SR.initSDK(config: trackConfig);
return true
}
}
# 安卓
如果为安卓端只需完成第一步“集成SDK”即可,无需初始化
# 上报 main.dart
import 'package:sr_tracksdk_flutter_plugin/sr_tracksdk_flutter_plugin.dart';
...
SrTracksdkFlutterPlugin.init("x","xxx","xxx"); // 安卓端使用
SrTracksdkFlutterPlugin.trackNull("AddToFav"); // 安卓端使用
SrTracksdkFlutterPlugin.track("AddToFav", {"ProductID": "123456", "UserLevel":"VIP"}); // 通用
SrTracksdkFlutterPlugin.setUser("1"); // 通用