約 1 時間ごとに Web サイトにアクセスしてデータを取得するアプリを作成しました。ほとんどの場合、これはうまく機能します。ただし、最近、アプリが突然データの更新を停止するという問題が繰り返し発生しました。言い換えれば、アプリは問題なく機能しており、ウェブサイトにアクセスしてデータを取得しています...そして突然、それができなくなります。最終的に「java.net.UnknownHostException: www.mysite.com」まで追跡しました。
問題は...デバイス(これはデバイス上にあり、エミュレーターではありません)は引き続きインターネットにアクセスできるため、ネットワークアクセスの問題ではありません. もう 1 つは、これが自然に解消されることはありません... DAYS の間、このエラーが発生し続けます。これまでのところ、私が見つけた唯一の修正は、電話の再起動です。
残念ながら、これは私の電話では発生したことがないため、自分でテストすることはできません. 私はちょうど他の人からそれについて聞いています。
それが問題である場合、ドメイン名を解決する電話ネットワーク インターフェイスの部分を「再起動」する方法はありますか?
Web サイトにアクセスするために使用するコードは次のとおりです。
try {
HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams, HTTP_TIMEOUT);
HttpConnectionParams.setSoTimeout(httpParams, HTTP_TIMEOUT);
DefaultHttpClient httpClient = new DefaultHttpClient(httpParams);
HttpPost httpPost = new HttpPost(url);
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity entity = httpResponse.getEntity();
if (entity == null) {
throw new Exception("Entity was null");
}
line = EntityUtils.toString(entity);
}
catch (ClientProtocolException cpe) {
throw new NetworkNotAvailableException("A client protocol exception occurred: " + cpe.getLocalizedMessage());
}
...and more catches below this