Webサービスから値が少なくなっています。値はWebサービスから値を取得するたびに変更され続けます。値を繰り返し取得するには、をService
に使用します。新しい値が古い値と同じであることを確認してください。
私が得た価値が以前と同じかどうかをチェックする方法は考えられません。
public ArrayList getCo_ordinates(String deviceId) {
String URL_CO_ORDINATES = "http://192.168.1.42:8080/image/getDevicePosition?deviceId=" + deviceId;
// trimCache(getApplicationContext());
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.start();
final JsonArrayRequest request = new JsonArrayRequest(URL_CO_ORDINATES, new Response.Listener<JSONArray>() {
@Override
public void onResponse(JSONArray response) {
try {
for (int i = 0; i < response.length(); i++) {
X = response.getJSONObject(i).getString("xCoordinate");
Y = response.getJSONObject(i).getString("yCoodinate");
System.out.println("xCoordinate" + X);
System.out.println("yCoodinate" + Y);
// tap();
addTap(Integer.parseInt(X), Integer.parseInt(Y));
}
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(context,""+e,Toast.LENGTH_SHORT).show();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
Toast.makeText(getApplicationContext(), "Could Not connect to server", Toast.LENGTH_LONG).show();
}
});
requestQueue.add(request);
return null;
}
SharedPreferencesに古い値を保存しますか? –
@ cricket_007..yeah他の方法はありません。私はこのためにSharedPreferencesを使いたくありません。 – boo
必要なのはコンテキストだけで、永続的なハッシュマップのように動作します。あなたは永続的なストレージが必要だと思っていました。そうでない場合は、シングルトンのインスタンスは –