Firebase In App Messaging замедляет работу Google Map SDK - PullRequest
0 голосов
/ 28 марта 2019

Я обнаружил, что Google Map будет работать очень медленно, когда в приложении будет отображаться обмен сообщениями в стиле баннеров.Я думаю, что это проблема сочетания In App Messaging и Google Map SDK (см. Содержание ниже).

Наше приложение показывает Google Map (SupportMapFragment).Если над приложением отображается сообщение в стиле баннера.Перетаскивание карты становится слишком медленным.Это примерно 1-2 кадра в секунду.

Другие представления обрабатываются плавно, и в нашей деятельности достигаются события касания.Похоже, это происходит с комбинацией In App Messaging и Google Map.После этого я пытался выяснить, существует ли обходной путь, но этот, похоже, является проблемой с комбинацией с Google Map.

Если animateCamera и т. Д. Выполняется с DialogFragment на Google Map (MapView), обновление дисплея будеточень медленно.

Возможно, кажется, что MapView меняет поведение, вызванное потерей фокуса Window с помощью onWindowFocusChanged.(Частота кадров снижается, даже если DialogFragment появляется в таблице даже в баннере, отличном от сообщения в приложении)

Однако:

  • В сообщении приложения указан тип баннера, вы можете использовать приведенный ниже экран.без стирания баннера.
  • Когда Google Maps что-то сверху (чтобы снизить нагрузку на дисплей) сбрасывает частоту обновления экрана и т. д.

И я думаю, что это большая проблемачто направление интерфейса пользователя совпадает с тем, что предлагает ваша компания.

Вот некоторая информация о версии SDK разработчика.
-com.google.android.gms:play-services-maps:16.0.0 -Google Maps Android API: версия пакета служб Google Play: 14799037 -В приложении Message ver17.0.4

Действия по воспроизведению: очень легко воспроизвести эту проблему.

  1. Создать новый проект (Google Maps Activity) в Android Studio https://developers.google.com/maps/documentation/android-sdk/start

  2. Добавьте SDK Firebase In-App Messaging в проект https://firebase.google.com/docs/in-app-messaging/get-started

  3. Получите идентификатор экземпляра вашего приложения и отправьте сообщение на тестирующее устройство

VIDЭО воспроизвести

...