У меня недавно была похожая проблема, и я обнаружил, что если вы установите URL в Javascript с помощью window.location.href="http://example.com/whatever"
, то iOS не переключится на Safari. Мне удалось заставить PayPal оформить заказ и войти в Facebook, работая в автономных веб-приложениях, не переходя на сафари с помощью этого метода! Если вы отправляете форму, сделайте это также через JS и получите URL-адрес перенаправления из ответа, затем укажите местоположение. Что касается возврата к вашему приложению впоследствии, это зависит от того, как работает внешний сервис.
Если это нехорошо, вы можете сделать всплывающее окно alert('You will be passed to Safari for authentication. Reload this app afterwards.')
, прежде чем они перейдут на Safari. Не здорово, но лучше, чем удивлять их с помощью автоматического переключения приложений!