| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- import 'dart:io';
- import 'package:electronic_assistant/data/repositories/account_repository.dart';
- import 'package:electronic_assistant/utils/app_info_util.dart';
- import 'package:flutter/cupertino.dart';
- import 'package:json_annotation/json_annotation.dart';
- part 'base_request.g.dart';
- @JsonSerializable()
- class BaseRequest {
- /// 平台类型: 1-Android 2-iOS 3-移动H5 4-PC_WEB 5-微信小程序 6-微信小游戏
- /// 7-微信公众号 8-抖音小程序 9-抖音小游戏 10-鸿蒙APP
- @JsonKey(name: "appPlatform")
- late int appPlatform = 0;
- /// 操作系统:android、ios、mac、windows、linux、harmony
- @JsonKey(name: "os")
- late String os = "unknown";
- @JsonKey(name: "osVersion")
- late String osVersion;
- /// 包信息
- @JsonKey(name: "packageName")
- String? packageName;
- @JsonKey(name: "appVersionName")
- String? appVersionName;
- @JsonKey(name: "appVersionCode")
- int? appVersionCode;
- /// 渠道信息, iOS没有渠道信息, Android通过渠道包工具获取
- @JsonKey(name: "channelName")
- String? channelName;
- /// 设备信息
- /// Android特有
- @JsonKey(name: "oaid")
- String? oaid;
- @JsonKey(name: "aaid")
- String? aaid;
- @JsonKey(name: "androidId")
- String? androidId;
- @JsonKey(name: "imei")
- String? imei;
- @JsonKey(name: "simImei0")
- String? simImei0;
- @JsonKey(name: "simImei1")
- String? simImei1;
- /// iOS特有
- @JsonKey(name: "idfa")
- String? idfa;
- @JsonKey(name: "idfv")
- String? idfv;
- /// 公共设备信息
- @JsonKey(name: "machineId")
- String? machineId;
- @JsonKey(name: "brand")
- String? brand;
- @JsonKey(name: "model")
- String? model;
- @JsonKey(name: "mac")
- String? mac;
- @JsonKey(name: "wifiName")
- String? wifiName;
- /// 地理位置信息
- @JsonKey(name: "region")
- String? region;
- @JsonKey(name: "locLng")
- double? locLng;
- @JsonKey(name: "locLat")
- double? locLat;
- BaseRequest() {
- initPlatformOS();
- initPackageInfo();
- initChannelInfo();
- initDeviceInfo();
- }
- Map<String, dynamic> toJson() => _$BaseRequestToJson(this);
- void initPlatformOS() {
- if (Platform.isAndroid) {
- appPlatform = 1;
- os = "android";
- } else if (Platform.isIOS) {
- appPlatform = 2;
- os = "ios";
- } else if (Platform.isMacOS) {
- os = "mac";
- } else if (Platform.isWindows) {
- os = "windows";
- } else if (Platform.isLinux) {
- os = "linux";
- } else if (Platform.isFuchsia) {
- os = "fuchsia";
- }
- osVersion = Platform.operatingSystemVersion;
- debugPrint("os: $os, osVersion: $osVersion");
- }
- void initPackageInfo() {
- packageName = appInfoUtil.packageName;
- appVersionName = appInfoUtil.appVersionName;
- appVersionCode = appInfoUtil.appVersionCode;
- }
- void initChannelInfo() {
- channelName = "";
- }
- void initDeviceInfo() {
- androidId = "1123123qweqw1";
- }
- }
|