2023-07-10 17:50:31 +08:00
|
|
|
import 'package:flutter/material.dart';
|
2024-06-05 14:21:14 +08:00
|
|
|
import 'package:star_lock/app.dart';
|
2024-04-12 09:17:04 +08:00
|
|
|
import 'package:star_lock/flavors.dart';
|
2024-05-30 18:12:15 +08:00
|
|
|
import 'package:star_lock/login/login/app_get_version.dart';
|
2024-03-09 15:57:25 +08:00
|
|
|
import 'package:star_lock/login/login/starLock_login_page.dart';
|
2024-04-26 11:39:41 +08:00
|
|
|
import 'package:star_lock/login/login/starLock_login_xhj_page.dart';
|
2024-04-15 14:09:23 +08:00
|
|
|
import 'package:star_lock/main/lockMian/lockMain/xhj/lockMain_xhj_page.dart';
|
2024-05-10 13:57:38 +08:00
|
|
|
import 'package:star_lock/mine/about/debug/debug_tool.dart';
|
2024-05-30 18:12:15 +08:00
|
|
|
import 'package:star_lock/network/api_repository.dart';
|
2024-03-09 15:57:25 +08:00
|
|
|
import 'package:star_lock/tools/appFirstEnterHandle.dart';
|
2024-09-02 18:09:57 +08:00
|
|
|
import 'package:star_lock/tools/wechat/customer_tool.dart';
|
2024-03-09 15:57:25 +08:00
|
|
|
import 'package:star_lock/tools/storage.dart';
|
2023-07-10 17:50:31 +08:00
|
|
|
|
2023-08-29 11:02:52 +08:00
|
|
|
import '../main/lockMian/lockMain/lockMain_page.dart';
|
2023-08-02 09:22:39 +08:00
|
|
|
|
2023-07-10 17:50:31 +08:00
|
|
|
class StarLockApplication extends StatefulWidget {
|
2023-07-15 15:11:28 +08:00
|
|
|
const StarLockApplication({Key? key}) : super(key: key);
|
2023-07-10 17:50:31 +08:00
|
|
|
|
|
|
|
|
@override
|
|
|
|
|
State<StarLockApplication> createState() => _StarLockApplicationState();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
class _StarLockApplicationState extends State<StarLockApplication> {
|
2024-03-13 11:38:37 +08:00
|
|
|
@override
|
|
|
|
|
void initState() {
|
|
|
|
|
super.initState();
|
|
|
|
|
}
|
|
|
|
|
|
2023-07-10 17:50:31 +08:00
|
|
|
@override
|
|
|
|
|
Widget build(BuildContext context) {
|
2024-03-20 10:57:20 +08:00
|
|
|
getAgreePrivacyShowUpdate();
|
|
|
|
|
|
2024-03-09 15:57:25 +08:00
|
|
|
return FutureBuilder<bool>(
|
|
|
|
|
future: getLoginStatus(),
|
2024-06-05 14:21:14 +08:00
|
|
|
builder: (BuildContext context, AsyncSnapshot<bool> snapshot) {
|
2024-03-09 15:57:25 +08:00
|
|
|
if (snapshot.connectionState == ConnectionState.waiting) {
|
|
|
|
|
// 如果异步操作尚未完成,返回一个加载指示器或其他等待状态的小部件
|
|
|
|
|
return const CircularProgressIndicator();
|
|
|
|
|
} else if (snapshot.hasData) {
|
|
|
|
|
if (snapshot.data!) {
|
|
|
|
|
// 如果用户已登录,返回主页面
|
2024-06-11 09:22:36 +08:00
|
|
|
// getAppInfo();
|
2024-04-15 14:09:23 +08:00
|
|
|
return F.sw(
|
2024-05-28 10:40:17 +08:00
|
|
|
skyCall: () => StarLockMainPage(),
|
2024-04-15 14:09:23 +08:00
|
|
|
xhjCall: () => const StarLockMainXHJPage());
|
2024-03-09 15:57:25 +08:00
|
|
|
} else {
|
|
|
|
|
// 如果用户未登录,返回登录页面
|
2024-05-10 14:18:44 +08:00
|
|
|
AppFirstEnterHandle().getAppFirstEnter(isAgreePrivacy);
|
|
|
|
|
|
2024-04-26 11:39:41 +08:00
|
|
|
return F.sw(
|
2024-05-28 10:40:17 +08:00
|
|
|
skyCall: () => const StarLockLoginPage(),
|
2024-04-26 11:39:41 +08:00
|
|
|
xhjCall: () => const StarLockLoginXHJPage());
|
2024-03-09 15:57:25 +08:00
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
// 如果没有数据,返回一个空白的小部件
|
2024-04-26 11:39:41 +08:00
|
|
|
return F.sw(
|
2024-05-28 10:40:17 +08:00
|
|
|
skyCall: () => const StarLockLoginPage(),
|
2024-04-26 11:39:41 +08:00
|
|
|
xhjCall: () => const StarLockLoginXHJPage());
|
2024-03-09 15:57:25 +08:00
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
|
2024-03-20 10:57:20 +08:00
|
|
|
|
2023-07-10 17:50:31 +08:00
|
|
|
}
|