Webアプリを構築し、Webアプリを表示するWebビューを持つAndroidアプリを作成したいと考えています。 Google Developerの指示に従ってアプリを作成した後、Android 5.1.1を搭載した携帯電話に正常にインストールしました。
ただし、アプリを初めて実行すると、Webビューに次のメッセージが表示されます。
Webページは利用できません
http://www.google.com.sg のWebページを次のようにロードできませんでした:
net :: ERR_CACHE_MISS
Googleでしばらく検索して解決策を試した後も、このエラーが続いています。必要なすべてのアクセス許可を含めたので、それが原因ではないはずです。私のAndroid Studioも完全に更新されているため、そのためではありません。
AndroidManifest.xml
を変更して問題を解決しました。
古い:<uses-permission Android:name="Android.permission.internet"/>
新規:<uses-permission Android:name="Android.permission.INTERNET"/>
上記の解決策を試しましたが、次のコードはこの問題を解決するのに役立ちます。
if (18 < Build.VERSION.SDK_INT ){
//18 = JellyBean MR2, KitKat=19
mWeb.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);
}
インターネットに関連するものについては、アプリにManifestFileのインターネット権限が必要です。 AndroidManifest.xml
に許可を追加することでこの問題を解決しました
<uses-permission Android:name="Android.permission.INTERNET" />
私の問題に対する答えを見つけました。誤ってAndroidManifest.xml
のアプリケーションで権限をネストしたためです。
@Bidhanコメントしたことは使いませんでしたが、迅速な対応ありがとうございました
つかいます
if (Build.VERSION.SDK_INT >= 19) {
mWebView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
}
エラーを解決するはずです。
また、コードがsetBlockNetworkLoadsに当てはまらないことを確認してください
webView.getSettings().setBlockNetworkLoads (false);