|
...
|
...
|
@@ -9,13 +9,13 @@ import 'package:flutter_bugly/flutter_bugly.dart'; |
|
|
|
import 'package:flutter_easyrefresh/ball_pulse_footer.dart';
|
|
|
|
import 'package:flutter_easyrefresh/easy_refresh.dart';
|
|
|
|
import 'package:flutter_easyrefresh/material_header.dart';
|
|
|
|
import 'package:flutter_screenutil/screenutil.dart';
|
|
|
|
|
|
|
|
import 'package:fluwx/fluwx.dart';
|
|
|
|
import 'package:one_key/pages/detail/handle_online_page.dart';
|
|
|
|
|
|
|
|
import 'package:one_key/pages/home/home_page.dart';
|
|
|
|
import 'package:one_key/pages/login/first_page.dart';
|
|
|
|
import 'package:one_key/pages/login/login_page_f.dart';
|
|
|
|
import 'package:one_key/provider/base_info_provider.dart';
|
|
|
|
|
|
|
|
import 'package:one_key/provider/coupon_provider.dart';
|
|
|
|
import 'package:one_key/provider/create_store_model.dart';
|
|
|
|
import 'package:one_key/provider/customer_making_provider.dart';
|
|
...
|
...
|
@@ -23,110 +23,97 @@ import 'package:one_key/provider/message_dialog_model.dart'; |
|
|
|
import 'package:intl/date_symbol_data_local.dart';
|
|
|
|
import 'package:one_key/provider/message_model.dart';
|
|
|
|
import 'package:one_key/provider/notebook_detail_model.dart';
|
|
|
|
import 'package:one_key/provider/online_check_edit_provider.dart';
|
|
|
|
|
|
|
|
import 'package:one_key/provider/other_login_provider.dart';
|
|
|
|
import 'package:one_key/provider/remark_manager_model.dart';
|
|
|
|
import 'package:one_key/provider/tools.dart';
|
|
|
|
import 'package:one_key/provider/upload_img_provider.dart';
|
|
|
|
import 'package:one_key/route/navigator_util.dart';
|
|
|
|
import 'package:one_key/utils/utils.dart';
|
|
|
|
import 'package:provider/provider.dart';
|
|
|
|
import 'package:tpns_flutter_plugin/tpns_flutter_plugin.dart';
|
|
|
|
|
|
|
|
import 'app.dart';
|
|
|
|
import 'net/dio_util.dart';
|
|
|
|
import 'net/http_url.dart';
|
|
|
|
import 'pages/login/login_page.dart';
|
|
|
|
import 'provider/order_food_provider.dart';
|
|
|
|
import 'provider/user_model.dart';
|
|
|
|
import 'route/navigate_service.dart';
|
|
|
|
import 'route/routes.dart';
|
|
|
|
import 'package:flutter/services.dart';
|
|
|
|
import 'package:flutter/material.dart';
|
|
|
|
import 'package:flutter/services.dart';
|
|
|
|
import 'package:permission_handler/permission_handler.dart';
|
|
|
|
|
|
|
|
Future<bool> _requestPermissions() async {
|
|
|
|
Map<Permission, PermissionStatus> permissions = await [
|
|
|
|
Permission.photos,
|
|
|
|
Permission.location,
|
|
|
|
Permission.camera,
|
|
|
|
Permission.contacts,
|
|
|
|
Permission.storage,
|
|
|
|
Permission.notification
|
|
|
|
].request();
|
|
|
|
|
|
|
|
List<bool> results = permissions.values.toList().map((status) {
|
|
|
|
return status == PermissionStatus.granted;
|
|
|
|
}).toList();
|
|
|
|
print(results.toString());
|
|
|
|
}
|
|
|
|
|
|
|
|
// Future<bool> _requestPermissions() async {
|
|
|
|
// Map<Permission, PermissionStatus> permissions = await [
|
|
|
|
// Permission.photos,
|
|
|
|
// Permission.location,
|
|
|
|
// Permission.camera,
|
|
|
|
// Permission.contacts,
|
|
|
|
// Permission.storage,
|
|
|
|
// Permission.notification
|
|
|
|
// ].request();
|
|
|
|
|
|
|
|
// List<bool> results = permissions.values.toList().map((status) {
|
|
|
|
// return status == PermissionStatus.granted;
|
|
|
|
// }).toList();
|
|
|
|
// print(results.toString());
|
|
|
|
// }
|
|
|
|
|
|
|
|
Future<void> main() async {
|
|
|
|
FlutterBugly.postCatchedException(() async {
|
|
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
|
|
FluroRouter router = FluroRouter();
|
|
|
|
Routes.configureRoutes(router);
|
|
|
|
App.router = router;
|
|
|
|
App.setupLocator();
|
|
|
|
LogUtil.init(isDebug: true, tag: 'ONE_KEY');
|
|
|
|
Provider.debugCheckInvalidValueType = null;
|
|
|
|
await initializeDateFormatting();
|
|
|
|
// _requestPermissions();
|
|
|
|
Utils.changeStatusColor();
|
|
|
|
// FlutterBugly.postCatchedException(() async {
|
|
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
|
|
// _requestPermissions();
|
|
|
|
Utils.changeStatusColor();
|
|
|
|
await App.initSp();
|
|
|
|
// App.setupLocator();
|
|
|
|
FluroRouter router = FluroRouter();
|
|
|
|
Routes.configureRoutes(router);
|
|
|
|
App.router = router;
|
|
|
|
|
|
|
|
await App.initSp();
|
|
|
|
SystemChrome.setPreferredOrientations(
|
|
|
|
[DeviceOrientation.portraitUp, DeviceOrientation.portraitDown])
|
|
|
|
.then((_) {
|
|
|
|
runApp(MultiProvider(
|
|
|
|
providers: [
|
|
|
|
ChangeNotifierProvider<MessageModel>(
|
|
|
|
create: (_) => MessageModel(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<UserModel>(
|
|
|
|
create: (_) => UserModel(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<MessageDialogModel>(
|
|
|
|
create: (_) => MessageDialogModel()..init(),
|
|
|
|
),
|
|
|
|
// ChangeNotifierProvider<OnlineCheckEditProvider>(
|
|
|
|
// create: (_) => OnlineCheckEditProvider(),
|
|
|
|
// ),
|
|
|
|
ChangeNotifierProvider<OrderFoodProvider>(
|
|
|
|
create: (_) => OrderFoodProvider(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<NotebookDetailModel>(
|
|
|
|
create: (_) => NotebookDetailModel(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<CouponProvider>(
|
|
|
|
create: (_) => CouponProvider(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<UploadImageProvider>(
|
|
|
|
create: (_) => UploadImageProvider(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<CreateStoreModel>(
|
|
|
|
create: (_) => CreateStoreModel(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<RemarkManagerModel>(
|
|
|
|
create: (_) => RemarkManagerModel(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<CustomerMakingProvider>(
|
|
|
|
create: (_) => CustomerMakingProvider(),
|
|
|
|
),
|
|
|
|
],
|
|
|
|
child: MyApp(),
|
|
|
|
));
|
|
|
|
});
|
|
|
|
// await App.initSp();
|
|
|
|
await AmapService.instance.init(
|
|
|
|
iosKey: 'e373581528f8fd901c01dfbda236159e',
|
|
|
|
androidKey: 'dbced781d0acd36184d5b4b54da7188d');
|
|
|
|
|
|
|
|
/// 如果你觉得引擎的日志太多, 可以关闭Fluttify引擎的日志
|
|
|
|
await enableFluttifyLog(false); // 关闭log
|
|
|
|
FlutterBugly.init(androidAppId: "f71a313f42", iOSAppId: "3089e4587e");
|
|
|
|
SystemChrome.setPreferredOrientations(
|
|
|
|
[DeviceOrientation.portraitUp, DeviceOrientation.portraitDown]).then((_) {
|
|
|
|
runApp(MultiProvider(
|
|
|
|
providers: [
|
|
|
|
ChangeNotifierProvider<MessageModel>(
|
|
|
|
create: (_) => MessageModel(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<UserModel>(
|
|
|
|
create: (_) => UserModel(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<MessageDialogModel>(
|
|
|
|
create: (_) => MessageDialogModel()..init(),
|
|
|
|
),
|
|
|
|
// ChangeNotifierProvider<OnlineCheckEditProvider>(
|
|
|
|
// create: (_) => OnlineCheckEditProvider(),
|
|
|
|
// ),
|
|
|
|
ChangeNotifierProvider<OrderFoodProvider>(
|
|
|
|
create: (_) => OrderFoodProvider(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<NotebookDetailModel>(
|
|
|
|
create: (_) => NotebookDetailModel(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<CouponProvider>(
|
|
|
|
create: (_) => CouponProvider(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<UploadImageProvider>(
|
|
|
|
create: (_) => UploadImageProvider(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<CreateStoreModel>(
|
|
|
|
create: (_) => CreateStoreModel(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<RemarkManagerModel>(
|
|
|
|
create: (_) => RemarkManagerModel(),
|
|
|
|
),
|
|
|
|
ChangeNotifierProvider<CustomerMakingProvider>(
|
|
|
|
create: (_) => CustomerMakingProvider(),
|
|
|
|
),
|
|
|
|
],
|
|
|
|
child: MyApp(),
|
|
|
|
));
|
|
|
|
});
|
|
|
|
// await App.initSp();
|
|
|
|
|
|
|
|
/// 如果你觉得引擎的日志太多, 可以关闭Fluttify引擎的日志
|
|
|
|
// await enableFluttifyLog(false); // 关闭log
|
|
|
|
// FlutterBugly.init(androidAppId: "f71a313f42", iOSAppId: "3089e4587e");
|
|
|
|
// });
|
|
|
|
}
|
|
|
|
|
|
|
|
class MyApp extends StatefulWidget {
|
|
...
|
...
|
@@ -145,8 +132,7 @@ class MyAppState extends State<MyApp> { |
|
|
|
void initState() {
|
|
|
|
// TODO: implement initState
|
|
|
|
super.initState();
|
|
|
|
initDio();
|
|
|
|
_initFluwx();
|
|
|
|
|
|
|
|
_isFirst();
|
|
|
|
Utils.changeStatusColor();
|
|
|
|
// 设置EasyRefresh的默认样式
|
|
...
|
...
|
@@ -181,18 +167,26 @@ class MyAppState extends State<MyApp> { |
|
|
|
}
|
|
|
|
|
|
|
|
//第一次打开应用
|
|
|
|
bool _isFirst() {
|
|
|
|
_isFirst() async {
|
|
|
|
isFirst = App.sp.getBool("isFirst") ?? true;
|
|
|
|
if (!isFirst) {
|
|
|
|
_isLogin();
|
|
|
|
initDio();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
//判断是否登录
|
|
|
|
bool _isLogin() {
|
|
|
|
_isLogin() async {
|
|
|
|
UserModel userModel = Provider.of<UserModel>(context, listen: false);
|
|
|
|
userModel.initUser();
|
|
|
|
isLogin = App.sp.getBool("isLogin") ?? false;
|
|
|
|
if (isLogin) {
|
|
|
|
LogUtil.init(isDebug: true, tag: 'ONE_KEY');
|
|
|
|
Provider.debugCheckInvalidValueType = null;
|
|
|
|
await initializeDateFormatting();
|
|
|
|
|
|
|
|
_initFluwx();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
@override
|
|
...
|
...
|
@@ -201,7 +195,7 @@ class MyAppState extends State<MyApp> { |
|
|
|
return MaterialApp(
|
|
|
|
debugShowCheckedModeBanner: false,
|
|
|
|
title: '一键订',
|
|
|
|
navigatorKey: App.getIt<NavigateService>().key,
|
|
|
|
// navigatorKey: App.getIt<NavigateService>().key,
|
|
|
|
theme: ThemeData(
|
|
|
|
brightness: Brightness.light,
|
|
|
|
primaryColor: Colors.white,
|
...
|
...
|
|