編集:私は何年も前にこのプロジェクトに取り組んでいましたが、残念ながら、特定のシナリオで回答が機能しているかどうかを確認できません。
私たちのブログを表示する必要がある 1 つの WebView で苦労しています。初期化すると、問題なく動作します。ユーザーは、WebView 内のさまざまなリンクに移動できます。ブログに戻るには、メインのブログ サイトを再度読み込む必要がある WebView の外にあるボタンがあります。
問題は、loadUrl への 2 回目の呼び出しの後に何もロードされないことです。これが私のコードです:
private WebView wv;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setContentView(R.layout.blog);
wv = (WebView) findViewById(R.id.blog_webview);
wv.getSettings().setJavaScriptEnabled(true);
wv.setWebViewClient(new WebViewClient() {
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon {
MyLog.logDump("onPageStarted: " + url);
}
@Override
public void onPageFinished(WebView view, String url) {
MyLog.logDump("onPageFinished: " + url);
}
});
wv.loadUrl(Constants.BLOG_URL);
}
私の OnClickListener によって呼び出される関数は次のとおりです。
public void reLoadUrl() {
wv.loadUrl(Constants.BLOG_URL);
}
しかし、onPageFinished と onPageStarted のログは、wv.loadUrl が呼び出され、正しい URL をロードしていることを示していますが、webview 自体のコンテンツは変更されません。キャッシュ、履歴、ビューをクリアしようとしましたが、別の WebSettings を試し、webView.goBack() を使用しようとしましたが、結果は出ませんでした。また、これらのアイデアは機能しません: Android で奇妙な webview goBack の問題
reLoadUrl が望ましい結果を示す場合もありますが、失敗すると、再び機能させることはできなくなります。何が起こっているのでしょうか?WebView コードを読み込もうとしましたが、役に立ちそうなものは見つかりませんでした。
追加できる唯一のことは、webViews に大きく依存しているいくつかの広告ネットワークを使用していることです。それらを断ろうとしましたが、ライブラリを削除しなかったため、それらが原因ではないかどうかはわかりません。
何か案は??