У меня уже некоторое время возникает неприятная проблема с Flutter и GoRouter: когда я нажимаю кнопку «Назад» на телефоне, оно либо сворачивает приложение, либо закрывает его, а не переходит на предыдущую страницу. Кажется, эта проблема возникает только на Android 14 и прекрасно отображается на более ранних версиях Android.
Я использую PopScope для обработки всплывающих окон.
Как я уже сказал, Popping отлично работает в приложение, а также при использовании более старых версий Android, но оно не работает с v14 при нажатии собственной кнопки «Назад» на Android.
В настоящее время я испытываю это на своем Samsung, а также на эмуляторе Android, использующем Android 14.
Я видел похожие сообщения, но ничего конкретно не связанного с этой проблемой.
Я смиренно прошу помощи у всех, кто знает, как решить эту проблему... И да, я читал документация
Я попробовал кучу изменений в GoRouter и даже заменил PopScope на что-то другое и спросил об этом в другой форме, я тоже изучил
https://docs.flutter.dev/release/breaki ... ctive-back
что тоже не решило проблему
Изучил похожие проблемы также на StackOverflow
Я не думаю, что backButtonDispatcher GoRouter хорошо работает с Android 14.
есть какие мысли?
Мой маршрутизатор настроен так
GoRouter router = GoRouter(
initialLocation: LoginScreen.routeName,
debugLogDiagnostics: true,
routes: [
GoRoute(
path: LoginScreen.routeName,
name: LoginScreen.title,
pageBuilder: (context, state) => MaterialPage(
key: state.pageKey,
child: const LoginScreen(),
),
),
GoRoute(
path: PinScreen.routeName,
name: PinScreen.title,
pageBuilder: (context, state) => MaterialPage(
key: state.pageKey,
child: const PinScreen(),
),
),
And my main is setup like
return MaterialApp.router(
scaffoldMessengerKey: scaffoldMessengerKey,
title: 'My APP',
localizationsDelegates: const [
AppLocalizationsDelegate(),
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
],
locale: AppLocalizations.getStoredLocale(),
supportedLocales: const [
Locale('en'),
Locale('af'),
],
theme: ThemeData(brightness: Brightness.light, useMaterial3: false),
darkTheme: ThemeData(brightness: Brightness.dark, useMaterial3: false),
routerConfig: router,
);
Подробнее здесь: https://stackoverflow.com/questions/781 ... of-popping
Кнопка «Назад» в Android 14 закрывает приложение Flutter, а не выскакивает ⇐ Android
Форум для тех, кто программирует под Android
1721127628
Anonymous
У меня уже некоторое время возникает неприятная проблема с Flutter и GoRouter: когда я нажимаю кнопку «Назад» на телефоне, оно либо сворачивает приложение, либо закрывает его, а не переходит на предыдущую страницу. Кажется, эта проблема возникает только на Android 14 и прекрасно отображается на более ранних версиях Android.
Я использую PopScope для обработки всплывающих окон.
Как я уже сказал, Popping отлично работает в приложение, а также при использовании более старых версий Android, но оно не работает с v14 при нажатии собственной кнопки «Назад» на Android.
В настоящее время я испытываю это на своем Samsung, а также на эмуляторе Android, использующем Android 14.
Я видел похожие сообщения, но ничего конкретно не связанного с этой проблемой.
Я смиренно прошу помощи у всех, кто знает, как решить эту проблему... И да, я читал документация
Я попробовал кучу изменений в GoRouter и даже заменил PopScope на что-то другое и спросил об этом в другой форме, я тоже изучил
https://docs.flutter.dev/release/breaking-changes/android-predictive-back
что тоже не решило проблему
Изучил похожие проблемы также на StackOverflow
Я не думаю, что backButtonDispatcher GoRouter хорошо работает с Android 14.
есть какие мысли?
Мой маршрутизатор настроен так
GoRouter router = GoRouter(
initialLocation: LoginScreen.routeName,
debugLogDiagnostics: true,
routes: [
GoRoute(
path: LoginScreen.routeName,
name: LoginScreen.title,
pageBuilder: (context, state) => MaterialPage(
key: state.pageKey,
child: const LoginScreen(),
),
),
GoRoute(
path: PinScreen.routeName,
name: PinScreen.title,
pageBuilder: (context, state) => MaterialPage(
key: state.pageKey,
child: const PinScreen(),
),
),
And my main is setup like
return MaterialApp.router(
scaffoldMessengerKey: scaffoldMessengerKey,
title: 'My APP',
localizationsDelegates: const [
AppLocalizationsDelegate(),
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
],
locale: AppLocalizations.getStoredLocale(),
supportedLocales: const [
Locale('en'),
Locale('af'),
],
theme: ThemeData(brightness: Brightness.light, useMaterial3: false),
darkTheme: ThemeData(brightness: Brightness.dark, useMaterial3: false),
routerConfig: router,
);
Подробнее здесь: [url]https://stackoverflow.com/questions/78160498/android-14-back-button-closes-flutter-app-instead-of-popping[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия