flush method
void
flush()
Implementation
void flush() {
// 如果队列为空,则不执行上传
if (_queue.isEmpty) return;
// 准备上传的数据列表
final uploadList = List.from(_queue);
_queue.clear(); // 清空队列
// 获取配置信息
final config = QTAutoTrackConfigManager.instance.config;
// TODO 上报埋点
// final host = config.host;
// // 如果主机地址不为空,则执行上传
// if (host != null) {
// final t = DateTime.now().millisecondsSinceEpoch; // 当前时间戳
// // 发起POST请求
// dio.post(host, data: {
// 'app_key': config.appKey ?? '',
// 'signature': config.signature!(t),
// 't': t,
// 'user_id': config.userId ?? '',
// 'track_id': config.trackId ?? '',
// 'unique_id': config.uniqueId ?? AutoTrackConfigManager.instance.deviceId,
// 'device_id': AutoTrackConfigManager.instance.deviceId,
// 'data_list': uploadList.map((e) => e.toMap()).toList(),
// 'app_version': AutoTrackConfigManager.instance.appVersion,
// 'device_info': AutoTrackConfigManager.instance.deviceInfo
// }).catchError((error) {
// // 错误处理
// AutoTrackLogger.getInstance().error(error);
// // 返回一个模拟的响应对象
// return Response(statusCode: 500, requestOptions: RequestOptions(path: host));
// });
// }
}