1

У меня есть две веб-страницы. Первый открывает вторую в новой вкладке. Они разговаривают друг с другом с помощью postMessage JavaScript. Эта настройка отлично работает в каждом браузере (рабочий стол/мобильный).Пользовательские вкладки Android Chrome - Открыть ссылку в новой вкладке + Опубликовать

Когда я пытаюсь моделировать такое же поведение с помощью пользовательских вкладок Chrome на Android, вторая страница открывается в том же макете, а не в новом. В результате я больше не могу использовать postMessage.

Как заставить ссылки внутри пользовательской вкладки, которые нужно открыть на новой пользовательской вкладке, и сохранить возможности postMessage?

ответ

0

Невозможно создать другую пользовательскую вкладку из веб-содержимого. Это связано с тем, что мы хотим сохранить быстрый способ вернуться в приложение, открывшее вкладку.

С другой стороны, я не могу вспомнить логическую проверку типа табуляции/видимости в postMessage. Звучит как ошибка.

Исправлена ​​ошибка с подробным репродуктора поможет много, пожалуйста, используйте «шаблон» ссылки в README.md: https://github.com/GoogleChrome/custom-tabs-client

Спасибо!

0

Егор, спасибо за помощь!

Проблема была решена путем установки новейшей версии Chrome для Android.

Использование Chrome пользовательских вкладок с Chrome 48.0.2564.95 window2 загружает его содержимое в window1. Начиная с Chrome 49.0.2623.91, Состояние окна 1 сохранено, и window2 открывается сверху в той же пользовательской вкладке, скрывая при этом window1. PostMessage работает отлично. Вы можете увидеть прилагаемый скриншот.

Android Chrome Debugging with Inspect Devices

Однако незначительная ошибка все еще присутствует. Когда срабатывает предупреждение с нижней страницы window1, window2 становится неактивным, но остается видимым. Точка зрения находится на window1, но вы видите window2. Мне нужно переместить фокус обратно в window2 вручную, используя отладчик, чтобы восстановить правильную рабочую настройку.

Смежные вопросы