flutter_frog 0.0.3 flutter_frog: ^0.0.3 copied to clipboard
A new Flutter package.
import 'package:flutter/cupertino.dart';
import 'package:flutter_frog/flutter_frog.dart';
import 'dart:io';
class ExampleFrog{
static IFrogLogger _logger;
static Future<void> initialize() async {
int device;
String deviceId;
String osVersion;
String appVersion = "example_appVersion";
String model; // 手机型号
String manufacturer; // 手机厂商
String operator; // 运营商, unicom, mobile, telecom
String imei;
int productId;
String vendor; //渠道
if (Platform.isIOS) {
vendor = 'apple';
device = 1;
productId = 123;
osVersion = "exampleOsVersion";
model = "exampleModel";
manufacturer = "example-Apple";
imei = "exampleImei";
} else if (Platform.isAndroid) {
device = 2;
productId = 456;
osVersion = "exampleOsVersion";
model = "exampleModel";
manufacturer = "example-Huawei";
imei = "exampleImei";
vendor = 'android';
}
deviceId = '';
operator = "example-operator";
_logger = await initLogger(
device,
deviceId,
osVersion,
appVersion,
model,
manufacturer,
operator,
imei,
productId,
_initFrog(),
parameters: {'vendor': vendor},
);
}
static IFrog _initFrog() {
return FrogBuilder(doPost: (value) {
return _upload(value);
}).build();
}
static Future<void> _upload(List<int> data) async {
//upload log data to your own server
}
static void log(String url, {Map<String, dynamic> parameters}) {
_logger.log(
url,
userId: 123456,
phoneNumber: "13812341234",
parameters: parameters,
);
}
}
void main(){
ExampleFrog.initialize(); //init Frog when your app init;
}
class ExampleWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
ExampleFrog.log("url",parameters: {});// do a frog point
return Container();
}
}