そのため、アプリに内部ブラウザーがあります。Facebookのアドレスを指定すると、Androidが引き継ぎ、代わりにFacebookアプリを開きます...これは、戻るボタンがユーザーをビュービューに戻すため、電話の戻るボタンで興味深い効果をもたらします...その後、再びFacebookアプリを開きます...これにより、興味深い効果が得られます...
このような状況を「キャッチ」して WebViewClient の「履歴」を削除する方法はありますか?
そのため、アプリに内部ブラウザーがあります。Facebookのアドレスを指定すると、Androidが引き継ぎ、代わりにFacebookアプリを開きます...これは、戻るボタンがユーザーをビュービューに戻すため、電話の戻るボタンで興味深い効果をもたらします...その後、再びFacebookアプリを開きます...これにより、興味深い効果が得られます...
このような状況を「キャッチ」して WebViewClient の「履歴」を削除する方法はありますか?
次のように shouldOverrideUrlLoading() をオーバーライドできます。
private class MyWebViewClient extends WebViewClient
{
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
// detect facebook url, respond accordingly
}
}
facebook (またはその他のハンドラー) がインストールされているかどうかの確認については、こちらで説明しています: How to detect android apps that can handle requested Intent action?
また、アプリに戻った場合に、同じリダイレクト ページをリロードしないようにすることができます。