Android: обратные вызовы с компонентом WebView?

Я выполняю аутентификацию с стороннего сайта, который должен перенаправить обратно в мое приложение с токеном auth (OAUTH).

У меня нормально работает обратный вызов, если я открываю сторонний сайт в отдельном браузере через

this.startActivity(new Intent(Intent.ACTION_VIEW, uri)); 

Но, если я вставляю компонент WebView в свой макет и открываю URL-адрес в этом, обратный вызов не работает. Webview говорит: «У вас нет разрешения на открытие myapp: // callback? Token = ….» и быстро обновляется до «веб-страницы недоступно … временно вниз … бла-бла»,

Есть идеи?

Вам необходимо реализовать WebViewClient для перехвата пользовательского URI перед его загрузкой. Учебник Hello, WebView показывает простой пример. Где они:

 private class HelloWebViewClient extends WebViewClient { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { view.loadUrl(url); return true; } } 

Вы можете изменить «view.loadUrl (url)», чтобы проверить, является ли URL вашим пользовательским URL-адресом и обрабатывает его, как вы хотите.

Intereting Posts