53 lines
1.7 KiB
Dart
53 lines
1.7 KiB
Dart
import 'dart:io';
|
||
|
||
import 'package:flutter/material.dart';
|
||
import 'package:package_info_plus/package_info_plus.dart';
|
||
|
||
// import 'package:loopin/api/common_api.dart';
|
||
// import 'package:loopin/service/http.dart';
|
||
|
||
import 'upgrade_dialog.dart';
|
||
import 'upgrade_util.dart';
|
||
|
||
class UpgradeService {
|
||
static Future<void> checkUpgrade(BuildContext context) async {
|
||
final info = await PackageInfo.fromPlatform();
|
||
print('App version: ${info.version}');
|
||
print('version_code: ${info.buildNumber}');
|
||
final currentVersion = info.version;
|
||
// final res = await Http.get(CommonApi.checkVersion);
|
||
// final data = res['data'];
|
||
final data = {
|
||
"version": "4.1.0",
|
||
"content": [
|
||
"新增火箭弹窗",
|
||
"修复若干 Bug",
|
||
"优化界面动画",
|
||
],
|
||
"force": 0,
|
||
"apkUrl": "https://wuzhongjie.com.cn/download/wzj.apk",
|
||
"iosUrl": "https://apps.apple.com/cn/app/无终街/id6479185362",
|
||
};
|
||
// 0 表示 false非强制,非 0 表示 true强制
|
||
final bool force = (data['force'] ?? 0) != 0;
|
||
// 弹窗
|
||
showDialog(
|
||
context: context,
|
||
barrierDismissible: !force,
|
||
builder: (_) => UpgradeDialog(
|
||
version: data['version']?.toString() ?? '',
|
||
content: (data['content'] as List<dynamic>).map((e) => e.toString()).toList(),
|
||
force: force,
|
||
onConfirm: () {
|
||
if (Platform.isAndroid) {
|
||
Navigator.pop(context);
|
||
UpgradeUtil.downloadAndInstallAPK(context, data['apkUrl']?.toString() ?? '');
|
||
} else if (Platform.isIOS) {
|
||
UpgradeUtil.launchAppStore(data['iosUrl']?.toString() ?? '');
|
||
}
|
||
},
|
||
),
|
||
);
|
||
}
|
||
}
|