MyTimerCallBack = new TimerTask() {
@Override
public void run() { // timer task -> 타이머 이벤트 처리
final Runnable timerAction = new Runnable() {
@Override
public void run() {
UpdateText();
}
};
current1.post(timerAction);
current2.post(timerAction);
current3.post(timerAction);
volt1.post(timerAction);
volt2.post(timerAction);
volt3.post(timerAction);
}
};
StartTimer(1);
}
private void StartTimer(long seconds) {
final Timer timer = new Timer();
timer.scheduleAtFixedRate(MyTimerCallBack, 0, seconds * 3000);
}
public void UpdateText() {
StringBuilder sb = new StringBuilder();
try {
URL url = new URL("localhost/test/vc_check.php");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
if (conn != null) {
conn.setConnectTimeout(10000);
conn.setUseCaches(false);
volt1.setText(String.valueOf(conn.getResponseCode()) + "\n"
+ String.valueOf(HttpURLConnection.HTTP_OK));
if (conn.getResponseCode() == HttpURLConnection.HTTP_OK) {
BufferedReader br = new BufferedReader(
new InputStreamReader(conn.getInputStream()));
while (true) {
String line = br.readLine();
if (line == null)
break;
sb.append(line + "\n");
}
br.close();
} else {
volt1.setText("http_not");
}
conn.disconnect();
}
} catch (Exception e) {
volt1.setText(e.toString());
volt2.setText(e.toString());
volt3.setText(e.toString());
current1.setText(e.toString());
current2.setText(e.toString());
current3.setText(e.toString());
}
String jsonString = sb.toString();
try {
String data1 = "";
String data2 = "";
String data3 = "";
String data4 = "";
String data5 = "";
String data6 = "";
JSONArray ja = new JSONArray(jsonString);
/*for (int i = 0; i < ja.length(); i++) {
JSONObject jo = ja.getJSONObject(i);
// 결과물
data1 += jo.getString("volt") + "V";
data2 += jo.getString("current") + "A";
}*/
data1 = ja.getJSONObject(0).getString("volt");
data2 = ja.getJSONObject(0).getString("current");
data3 = ja.getJSONObject(1).getString("volt");
data4 = ja.getJSONObject(1).getString("current");
data5 = ja.getJSONObject(2).getString("volt");
data6 = ja.getJSONObject(2).getString("current");
// 결과 출력
volt1.setText(data1);
volt2.setText(data3);
volt3.setText(data5);
current1.setText(data2);
current2.setText(data4);
current3.setText(data6);
} catch (JSONException e) {
// TODO Auto-generated catch block
volt1.setText(e.toString());
volt2.setText(e.toString());
volt3.setText(e.toString());
current1.setText(e.toString());
current2.setText(e.toString());
current3.setText(e.toString());
}
}
3초마다 DB 업데이트 해주는건데 처음에 들어가면
org.json.jsonexception end of input at character 0 ,,,
뜨는데 다른페이지 넘어갔다가 다시오면 제대로 동작합니다
어떤문제가 있는거나요?