app-starlock/lib/starLockApplication/starLockApplication.dart
2024-09-11 15:23:46 +08:00

67 lines
2.3 KiB
Dart
Executable File

import 'package:flutter/material.dart';
import 'package:star_lock/app.dart';
import 'package:star_lock/flavors.dart';
import 'package:star_lock/login/login/app_get_version.dart';
import 'package:star_lock/login/login/starLock_login_page.dart';
import 'package:star_lock/login/login/starLock_login_xhj_page.dart';
import 'package:star_lock/main/lockMian/lockMain/xhj/lockMain_xhj_page.dart';
import 'package:star_lock/mine/about/debug/debug_tool.dart';
import 'package:star_lock/network/api_repository.dart';
import 'package:star_lock/tools/appFirstEnterHandle.dart';
import 'package:star_lock/tools/wechat/customer_tool.dart';
import 'package:star_lock/tools/storage.dart';
import '../main/lockMian/lockMain/lockMain_page.dart';
class StarLockApplication extends StatefulWidget {
const StarLockApplication({Key? key}) : super(key: key);
@override
State<StarLockApplication> createState() => _StarLockApplicationState();
}
class _StarLockApplicationState extends State<StarLockApplication> {
@override
void initState() {
super.initState();
}
@override
Widget build(BuildContext context) {
getAgreePrivacyShowUpdate();
return FutureBuilder<bool>(
future: getLoginStatus(),
builder: (BuildContext context, AsyncSnapshot<bool> snapshot) {
if (snapshot.connectionState == ConnectionState.waiting) {
// 如果异步操作尚未完成,返回一个加载指示器或其他等待状态的小部件
return const CircularProgressIndicator();
} else if (snapshot.hasData) {
if (snapshot.data!) {
// 如果用户已登录,返回主页面
// getAppInfo();
return F.sw(
skyCall: () => StarLockMainPage(),
xhjCall: () => const StarLockMainXHJPage());
} else {
// 如果用户未登录,返回登录页面
AppFirstEnterHandle().getAppFirstEnter(isAgreePrivacy);
return F.sw(
skyCall: () => const StarLockLoginPage(),
xhjCall: () => const StarLockLoginXHJPage());
}
} else {
// 如果没有数据,返回一个空白的小部件
return F.sw(
skyCall: () => const StarLockLoginPage(),
xhjCall: () => const StarLockLoginXHJPage());
}
},
);
}
}