pikapika/lib/basic/config/Version.dart

36 lines
815 B
Dart
Raw Normal View History

2021-11-11 02:10:18 +00:00
import 'dart:async' show Future;
import 'package:flutter/services.dart' show rootBundle;
2021-11-11 03:00:38 +00:00
import '../Method.dart';
const _versionUrl =
"https://api.github.com/repos/niuhuan/pikapi-flutter/releases/latest";
2021-11-11 02:10:18 +00:00
const _versionAssets = 'lib/assets/version.txt';
RegExp _versionExp = RegExp(r"^v\d+\.\d+.\d+$");
late String _version;
2021-11-11 03:00:38 +00:00
var _latestVersion = "";
2021-11-11 02:10:18 +00:00
Future initVersion() async {
try {
_version = (await rootBundle.loadString(_versionAssets)).trim();
} catch (e) {
_version = "dirty";
}
}
2021-11-11 03:00:38 +00:00
Future autoCheckNewVersion() async {}
Future _versionCheck() async {
2021-11-11 02:10:18 +00:00
if (_versionExp.hasMatch(_version)) {
2021-11-11 03:00:38 +00:00
// exception
String latestVersion = (await method.httpGet(_versionUrl)).trim();
if (latestVersion != _version) {
// new Version
}
2021-11-11 02:10:18 +00:00
} else {
// dirtyVersion
}
2021-11-11 03:00:38 +00:00
//
2021-11-11 02:10:18 +00:00
}