Приложение зависло на белом экране во Flutter с использованием GetXAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Приложение зависло на белом экране во Flutter с использованием GetX

Сообщение Anonymous »

Я работаю над приложением Flutter и использую управление состоянием GetX.
Каждый раз, когда я запускаю свое приложение в режиме отладки или выпускаю его в эмуляторе, оно работает совершенно нормально. Но когда я запускаю выпуск на физическом устройстве, он зависает на белом экране. Иногда при первом запуске он работает нормально, но после закрытия и повторного открытия приложения отображается тот же белый экран.
Вот код
main .dart:

Код: Выделить всё

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:google_fonts/google_fonts.dart';
import 'package:orbit_money_app/controllers/send_money_controller.dart';
import 'package:orbit_money_app/providers/customer_provider.dart';
import 'package:orbit_money_app/routes/route_bindings.dart';
import 'package:get/get.dart';
import 'package:orbit_money_app/util/color_util.dart';
import 'package:provider/provider.dart';

void main() {
WidgetsFlutterBinding.ensureInitialized();
SystemChrome.setSystemUIOverlayStyle(
const SystemUiOverlayStyle(
statusBarColor: Colors.white,
statusBarIconBrightness: Brightness.dark,
systemNavigationBarColor: Colors.transparent,
systemNavigationBarIconBrightness: Brightness.dark,
),
);

SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]);
runApp(const MyApp());
}

class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MultiProvider(
providers: [
ChangeNotifierProvider(create: (context) => CustomerProvider()),
],
child: GetMaterialApp(
debugShowCheckedModeBanner: false,
title: 'Orbit Money',
theme: ThemeData(
colorScheme: ColorScheme.fromSeed(
seedColor: ColorUtil.secondaryColor,
secondary: ColorUtil.secondaryColor,
primary: ColorUtil.secondaryColor,
),
primarySwatch: Colors.red,
useMaterial3: true,
inputDecorationTheme: InputDecorationTheme(
focusedBorder: const OutlineInputBorder(
borderSide: BorderSide(
color: ColorUtil.secondaryColor,
),
borderRadius: BorderRadius.all(Radius.circular(10)),
),
enabledBorder: const OutlineInputBorder(
borderSide: BorderSide(
color: ColorUtil.secondaryColor,
),
borderRadius: BorderRadius.all(Radius.circular(10)),
),
border: const OutlineInputBorder(
borderSide: BorderSide(
color: ColorUtil.secondaryColor,
),
borderRadius: BorderRadius.all(Radius.circular(10)),
),
errorBorder: const OutlineInputBorder(
borderSide: BorderSide(
color: Colors.red,
),
borderRadius: BorderRadius.all(Radius.circular(10)),
),
errorStyle: GoogleFonts.poppins(
color: Colors.red,
))),
getPages: RouteBindings.routes,
initialRoute: RouteBindings.getInitialRoute(),
initialBinding: BindingsBuilder(() {
Get.lazyPut(() =>  SendMoneyController());
}),
),
);
}
}
Вот один из экранов:

Код: Выделить всё

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:get/get.dart';
import 'package:google_fonts/google_fonts.dart';
import 'package:orbit_money_app/util/color_util.dart';
import 'package:orbit_money_app/routes/route_names.dart';

class GetStarted2View extends GetWidget {
const GetStarted2View({super.key});

@override
Widget build(BuildContext context) {
SystemChrome.setSystemUIOverlayStyle(
const SystemUiOverlayStyle(
statusBarColor: Colors.transparent,
statusBarIconBrightness: Brightness.dark,
systemNavigationBarColor: Colors.transparent,
systemNavigationBarIconBrightness: Brightness.light,
),
);
return Scaffold(
body: Container(
padding: EdgeInsets.symmetric(
horizontal: Get.mediaQuery.size.width * 0.05,
vertical: Get.mediaQuery.size.height * 0.1),
decoration: const BoxDecoration(
image: DecorationImage(
image: AssetImage(
'lib/assets/background_images/offwhite_circles_background.png'),
fit: BoxFit.cover,
),
),
height: Get.mediaQuery.size.height,
width: Get.mediaQuery.size.width,
child: Column(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
crossAxisAlignment: CrossAxisAlignment.center,
children: [
Image.asset(
'lib/assets/logos/logo_long_black.png',
width: Get.mediaQuery.size.width * 0.5,
),
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"Hello!",
style: GoogleFonts.poppins(
fontSize: Get.mediaQuery.size.width * 0.1,
fontWeight: FontWeight.w600,
color: ColorUtil.secondaryColor),
),
const SizedBox(
height: 10,
),
Text(
"Welcome to Orbitmoney app, seamless experiences await at your fingertips!",
style: GoogleFonts.poppins(
fontSize: Get.mediaQuery.size.width * 0.045,
fontWeight: FontWeight.w400,
color: ColorUtil.secondaryColor),
),
const SizedBox(
height: 25,
),
Row(
children: [
InkWell(
onTap: () {
Get.toNamed(RouteNames.signIn);
},
child: Container(
padding: EdgeInsets.symmetric(
horizontal: Get.mediaQuery.size.width * 0.05,
vertical: Get.mediaQuery.size.width * 0.035),
decoration: BoxDecoration(
border: Border.all(
color: ColorUtil.tertiaryColor,
width: 1,
),
borderRadius: BorderRadius.circular(15),
),
child: Text(
"Sign In",
style: GoogleFonts.poppins(
fontSize: Get.mediaQuery.size.width * 0.05,
fontWeight: FontWeight.w500,
color: Colors.black),
),
),
),
SizedBox(
width: Get.mediaQuery.size.width * 0.03,
),
ElevatedButton(
onPressed: () {
Get.toNamed(RouteNames.chooseAgent);
},
style: ElevatedButton.styleFrom(
padding: EdgeInsets.symmetric(
horizontal: Get.mediaQuery.size.width * 0.15,
vertical: Get.mediaQuery.size.width * 0.035),
backgroundColor: ColorUtil.tertiaryColor,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(15),
),
),
child:  Text(
"Get Started",
style: GoogleFonts.poppins(
fontSize: Get.mediaQuery.size.width * 0.05,
fontWeight: FontWeight.w400,
color: Colors.white),
),
)
],
),
],
),
],
),
));
}
}
И вот с какой ошибкой я столкнулся:
[img]https://i. sstatic.net/TYLU6wJj.jpg[/img]


Подробнее здесь: https://stackoverflow.com/questions/785 ... using-getx
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Приложение зависло на белом экране во Flutter, используя GetX
    Anonymous » » в форуме Android
    0 Ответы
    40 Просмотры
    Последнее сообщение Anonymous
  • Приложение Flutter CarPlay зависло на черном экране во время сборки
    Anonymous » » в форуме IOS
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Приложение React Native зависло на экране логотипа Expo после сборки с использованием eas
    Anonymous » » в форуме Android
    0 Ответы
    37 Просмотры
    Последнее сообщение Anonymous
  • Результаты Java Swing JScrollPane на белом экране
    Anonymous » » в форуме JAVA
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Приложение Flutter ios зависло на заставке по умолчанию на устройствах iPhone 13 Pro Max и iPhone 14 Max
    Anonymous » » в форуме IOS
    0 Ответы
    122 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Android»