カスタムHTMLを使用してロードしているWebビューがありますloadDataWithBaseURL
:
mArticleWebView.loadDataWithBaseURL("http://www.example.com/", htmlString, "text/html", "utf-8", null);
これはいくつかのページで機能し、タブレットの Jelly Bean では理由がないように見え、Web ビューが空白になります。
これはWebViewCreation
コードです:
private void prepareWebView() {
mArticleWebView.setBackgroundColor(getResources().getColor(R.color.white));
mArticleWebView.setScrollBarStyle(WebView.SCROLLBARS_INSIDE_OVERLAY);
mArticleWebView.addJavascriptInterface(new ArticleJavaScriptInterface(getActivity()), "Company");
mArticleWebView.setWebChromeClient(new CustomChromeClient());
/* WebViewClient must be set BEFORE calling loadUrl! */
mArticleWebView.setWebViewClient(new WebViewClient() {
@Override
public void onPageStarted(WebView view, String url, Bitmap favi) {
Log.e(TAG, "Signs of life, shock and awe.");
super.onPageStarted(view, url, favi);
}
@Override
public void onPageFinished(WebView view, String url) {
Log.e(TAG, "onPageFinished..." + url);
super.onPageFinished(view, url);
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url != null && (url.startsWith("http://") || url.startsWith(Constants.MEDIA_ENTRY_PROTOCOL + "://"))) {
view.getContext().startActivity(
new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
return true;
} else {
return false;
}
}
});
WebSettings webSettings = mArticleWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);
if (BuildConfig.DEBUG) {
Log.d(TAG, "User Agent is " + webSettings.getUserAgentString());
}
}
特定の問題はonPageStarted
、他のオーバーライドがしばらくすると呼び出されなくなることです。他のすべてのコードに到達し、生成された HTML は問題なく表示されます。
無効化、再ロード、再初期化は何の役にも立たないようです。それはただ死んで死んでいる。
他に何を試すことができますか?他に何が問題を引き起こしている可能性がありますか?
- - - - - - 編集 - - - - -
何時間も何時間も頭をぶつけた後、ページャーの外でもこれを行っていることを発見した後、以下にリンクされている問題に遭遇していることを90%確信しています. そうは言っても、誰かに提案があれば、まだ修正はありません。
向きの変更やマルチスレッドの実行時にすべての Web ビューの読み込みが停止する原因となる AdView のバグ?
----- 最終編集 ------- これは「修正」されたことはありません。Jelly Bean のネイティブではなく、HTML 経由で広告をロードするようになりました。
そうではない:
に関係することは何でもViewPager
。インタースティシャル広告も最終的にはそれを引き起こします. ほとんどの広告はViewPager
.
間の競合ActionBarSherlock
。に更新しAppCompat
ても何の役にも立ちませんでした。
ただの問題WebView
。XWalk
広告自体を読み込もうとすると、ちらつき、恐ろしい奇妙な動作が発生するなど、奇妙な動作もXWalk
. これは と の両方ActionBarSherlock
でしAppCompat
た。
私の問題は回転とは何の関係もありません。私は一般的にスレッド化を非難しています。かなりの数のスレッドが進行中です。
(6.21) より前の古いバージョンのGoogle 広告がありました。問題の原因となっている広告に指を向ける前に、Google Play 7 に更新しました。アップデートによる動作の変更はありませんでした。別名:PublisherAdView
と DfpAdView はどちらも同じように反応します。
プロジェクトを Android Studio に移動するために何かが起こったのではないかと思っていますが、何を指すべきかわかりません。
結局のところ、これは OS の問題ですが、特に何がそれをくすぐったのかはわかりません。同じことを経験している人の話を聞くことに非常に興味があります。