Моему приложению нужна страница входа с внешнего URL-адреса.
Логика входа, которую я думал, такова:
Шаги
- Открывать внешний URL при запуске ionic
- Как только пользователь войдет в систему, вернитесь к внутреннему приложению, используя глубокую ссылку (например: myapp://main).
Я проверил шаг 2, который представляет собой глубокую ссылку. Работает хорошо.
Итак, я должен сделать шаг 1 сейчас.
Сначала я тестировал с iframe
. И получил Refused to display 'https:....' in a frame because it set 'X-Frame-Options' to 'deny'.
ошибку. Кажется, для этого нужна конфигурация на стороне сервера. Но в любом случае мы не хотим использовать этот путь. iframe
похоже на взлом.
Во-вторых, я попробовал location.href = this.loginUrl;
. Хорошо работал в браузере Chrome, но когда я встроил симулятор iOS, я вижу адресную строку, панель инструментов и кнопку закрытия. Мне это не нравится, потому что я не хочу, чтобы пользователь закрывал страницу входа или изменить URL-адрес.
В-третьих, попробовал window.open(this.loginUrl, '_self', 'location=no')
. Тот же результат, что и во втором.
В-четвертых, попытался использовать ионную версию in-app-browser
плагина. Но результат такой же, как у второго и третьего. Он по-прежнему открывает браузер с адресной строкой, панелью инструментов, даже если она показывает «назад к моему приложению». Таким образом, пользователь почувствует, что это не приложение. Проверьте здесь, люди ищут для решения еще.
Проведя день, я даже не знаю, есть ли вариант, который я могу попробовать.
toolbar=no
посмотреть параметры IOS на github.com/apache/cordova-plugin-inappbrowser - person Sohan   schedule 28.06.2017