30 lines
866 B
Dart
30 lines
866 B
Dart
import 'dart:async';
|
|
|
|
import 'package:flutter/material.dart';
|
|
import 'package:flutter/services.dart';
|
|
import 'package:client_proxy_framework/client_proxy_framework.dart';
|
|
|
|
import 'app.dart';
|
|
import 'core/auth/auth_service.dart';
|
|
|
|
Future<void> main() async {
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
|
|
await ClientBootstrap.initFromAsset('assets/skin_config.json');
|
|
await ClientBootstrap.initAnalytics();
|
|
await AnalyticsService.initAttribution();
|
|
|
|
await ensureDeviceMemoryProfileInitialized();
|
|
|
|
SystemChrome.setSystemUIOverlayStyle(
|
|
const SystemUiOverlayStyle(
|
|
statusBarColor: Colors.transparent,
|
|
statusBarIconBrightness: Brightness.light,
|
|
),
|
|
);
|
|
|
|
// 与 app_client 一致:先首帧再异步登录,由 [App] 内遮罩等待 [loginComplete]
|
|
runApp(App(title: ClientBootstrap.skin.appName));
|
|
unawaited(AuthService.init());
|
|
}
|