package com.jqmobile.core.android.time.impl;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
import android.util.Log;
public class Timer1 {
Timer timer;
Function f;
long timeDifference;
Timer1(Function function) {
f = function;
timer = new Timer();
timer.scheduleAtFixedRate(getTask(), 1 * 60 * 1000, 1 * 60 * 1000);
f.setTimeScale(0);
}
private TimerTask getTask() {
TimerTask task = new TimerTask() {
@Override
public void run() {
Log.d("debug", "һ����У��");
Date date = new Date(f.getLocalityTime());
timeDifference = new Date().getTime() - f.getLocalityTime();
if (timeDifference > f.getTimeScale() + 60 * 1000
|| timeDifference < f.getTimeScale()) {
Log.d("debug", "������!timeDifference:" + timeDifference
+ "timeScale:" + f.getTimeScale() + "\ndate:"
+ date);
f.setTimeScale(0);
try {
f.lockFalg = true;
f.syncTime();
} catch (Exception e) {
e.printStackTrace();
} finally {
f.lockFalg = false;
}
} else {
Log.d("debug", "������!");
f.setTimeScale(f.getTimeScale() + 1000 * 60);
}
}
};
return task;
}
}