WebView で HTML5、JS、CSS3 を使用して iOS/Android アプリを開発しています。Android 2.x を搭載した iOS デバイスおよび電話は問題なく動作します。ただし、Android 3.x または 4.x を搭載したタブレットでは Web ページが読み込まれません。
基本的に私はこのようなウェブページを構築しています
<html lang="en" style="-webkit-text-size-adjust:none; display:block;">
<head>
<meta charset="utf-8"></meta>
<meta http-equiv="content-script-type" content="text/javascript">
<title>Project Name</title>
<script type="text/javascript" src="File1.js"></script>
<script type="text/javascript" src="File2.js"></script>
<script type="text/javascript" src="File3.js"></script>
<script type="text/javascript" src="File4.js"></script>
...
<body style="margin: 0px; width: 100%; height: 100%; overflow:hidden">
</body>
</html>
(合計 25 個の JavaScript ファイルが含まれます)
WebViewClient::onPageStarted、WebViewClient::onReceivedError、WebViewClient::onPageFinished を上書きしました。WebViewClient::onPageStarted が呼び出され、ロードされている JavaScript が LOG に表示されます。ただし、 WebViewClient::onPageFinished は呼び出されず、Web ページはビルドされません。ウィンドウの「ロード」コールバックは発生しないため、js ファイルは実行されません。
そのため、ウィンドウの「ロード」機能に警告ポップアップを配置し、ファイルを次々と削除して、これが役立つかどうかを確認しました。そして実際、これは役に立ちました。4〜6個のファイルのみを含めると、ウィンドウの「ロード」機能が呼び出されます。ただし、これもランダムであり、削除するファイルには依存しません。LOG にもエラーは表示されません。すべてがうまくいくようです
Android 3.x 以降で導入されたインクルード ファイルの数に制限はありますか? Android 2.x は問題なく動作します。また、デスクトップ PC の Chrome と Safari では、エラーなしでサイトが表示されます。
何か案は?