Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Экран с картой появляется поверх всего приложения после сворачивания приложения и повторного открытия #13

Open
fufylev opened this issue Nov 4, 2024 · 6 comments

Comments

@fufylev
Copy link

fufylev commented Nov 4, 2024

Если в приложении открыть карту и свернуть приложение то после открытия виджет с картой открывается ПОВЕРХ всего приложения и ничего нельзя сделать и ничего не работет, даже экран с картой не кликабельный и не отвечает на жесты. Только если убить приложение оно становится заново работоспособным.
Если ни разу не открывать карту то такого бага не вопроизводится.

Вопроизводится на всех реальных устройствах (проверено на Huawei nova 12i (14 android), Samsung S22 (14 android), Samsung M12 (13 android)

Пробовал последние 4 версии yandex_maps_mapkit - на всех версиях есть данный баг.

Версия флаттер 3.22.0

Весь код для открытия карты взят из ваших примеров полностью, переработанный под свои цели само-собой.
Но даже если убрать мой добавленный код и оставить чисто код из примеров то бага не исчезает.
Экран с картой является основным экраном Bottom Navigation Bar - то есть евляется одним из 4х основных экранов нижней ботом навигации. То есть экран с картой никогда не выгружается и всегда активен.
При попытке открыть приложение видно только карту - Bottom Navigation Bar исчезает, видно на доли секунды как приложение открывается и потом поверх него открывается экран с картой и самое интересное что он начинает запускать все процессы по загрузке заведений от бекенда (фича нашего приложения).

@fufylev
Copy link
Author

fufylev commented Nov 4, 2024

аналогичный баг
yandex/yandex_maps_mapkit_lite#1

@fufylev
Copy link
Author

fufylev commented Nov 4, 2024

Важное дополнение - баг возникает только в том случае если карта не показывается во время того как свернули приложение. То есть у меня 4 таба Bottom Navigation Bar (Home, Search, Map, Profile), одним из них является карта (3й таб), если приложение свернуть при открытой карте то бага нету, но если перейти например в профиль и свернуть приложение то проявляется этот баг.

Я пробовал сделать так что при смене таба навигации, когда карта не видна пользователю останавливать ее и запускать когда юзер возвращается в нее обратно, но это не помогло

import 'package:yandex_maps_mapkit/mapkit_factory.dart';

// ...
final tabIndex = news.tabIndex;
// у карты индекс таба ботом навигации == 2
if (mapLoaded) {
       if (tabIndex == 2) {
          _startMapkit();
        } else {
          _stopMapkit();
        }
       
}
      
// ...

void _startMapkit() {
    if (!_isMapkitActive) {
      _isMapkitActive = true;
      mapkit.onStart();
    }
  }

  void _stopMapkit() {
    if (_isMapkitActive) {
      _isMapkitActive = false;
      mapkit.onStop();
    }
  }

Баг сохраняется

@gle6ru381
Copy link
Contributor

Не совсем понятно, что имеется ввиду под основным экраном BottomNavigationBar? Передается виджетом в Scaffold.bottomNavigationBar? Есть какой-то воспроизводимый пример?

@fufylev
Copy link
Author

fufylev commented Nov 10, 2024

Не совсем понятно, что имеется ввиду под основным экраном BottomNavigationBar? Передается виджетом в Scaffold.bottomNavigationBar? Есть какой-то воспроизводимый пример?

Я попробовал сделать пустой проект и положить карту точно также как она лежит у меня в моем проекте, но бага не вопроизводится. Я прямо максимально одинаково сделал, но не понимаю почему в пробном проекте нету такого бага. Я использовал полностью одинаковые библиотеки и для auto_route (навигация) и для карты. Возможно чтбы был баг нужно добавлять всю логику работы с картой либо возможно это получается из-за какого то конфликта с другими пакетами и нативными модулями.
Но чтобы я не делал и так и не могу избавиться от этого бага в моем рабочем проекте, никаких ошибок нету, карта просто тупо перекрывает весь проект.

На счет вашего вопроса - как сделана ботом навигация можно посмотреть тут

@fufylev
Copy link
Author

fufylev commented Nov 10, 2024

Не совсем понятно, что имеется ввиду под основным экраном BottomNavigationBar? Передается виджетом в Scaffold.bottomNavigationBar? Есть какой-то воспроизводимый пример?

Я попробовал сделать пустой проект и положить карту точно также как она лежит у меня в моем проекте, но бага не вопроизводится. Я прямо максимально одинаково сделал, но не понимаю почему в пробном проекте нету такого бага. Я использовал полностью одинаковые библиотеки и для auto_route (навигация) и для карты. Возможно чтбы был баг нужно добавлять всю логику работы с картой либо возможно это получается из-за какого то конфликта с другими пакетами и нативными модулями. Но чтобы я не делал и так и не могу избавиться от этого бага, никаких ошибок нету, карта просто тупо перекрывает весь проект.

На счет вашего вопроса - как сделана ботом навигация можно посмотреть тут

я посмотрел проект описаный в баге yandex/yandex_maps_mapkit_lite#1 и там используется обычный нативный навигатор. То есть нету как я понимаю зависимости от того используется Navigator v1 или Navigator v2. То есть можно предположить что бага не связана с навигацией.

В этом чужом примере баг точно воспроизводится - сам лично проверил

@fufylev
Copy link
Author

fufylev commented Dec 1, 2024

Добрый день!
Есть какой-то апдейт по данной баге?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants