Web API からのデータの受信に問題があります。私の主な問題は、ユーザーのデータ接続が良好でない場合です。たとえば、ユーザーの電話がインターネットに接続されているが、受信データの品質が低く、データパケットがまったくダウンロードされない場合があります...この状態では、私のコード強制終了します...
私はこの条件をチェックする2つのステップを使用します:
1- 電話がインターネットに接続されているかどうかを確認する
2- JSON を受信した検証
しかし、時々アプリがクラッシュします。正しいデータが受信されたときにアプリが動作することを保証する他の方法はありますか...この状況でアプリがクラッシュしないようにしたい...
json の検証:
public boolean jsonValidate(String test) {
boolean valid = false;
try {
new JSONObject(test);
valid = true;
}
catch (JSONException ex) {
valid = false;
}
return valid;
}
インターネット接続の確認:
public boolean isOnline(Context cont) {
ConnectivityManager connectivityManager = (ConnectivityManager) cont.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
return activeNetworkInfo != null;
}