Android 计时器没有开始计数
若我超出了某个特定纬度和经度的半径,那个么计时器就会运行。当我尝试将此代码放入onCreate()方法时,它运行正常。但当我尝试将此代码放入onServiceUpdate方法时,它并没有开始计数。此方法类似于googleMaps API中的onLocationChanged() 代码如下:Android 计时器没有开始计数,android,countdowntimer,Android,Countdowntimer,若我超出了某个特定纬度和经度的半径,那个么计时器就会运行。当我尝试将此代码放入onCreate()方法时,它运行正常。但当我尝试将此代码放入onServiceUpdate方法时,它并没有开始计数。此方法类似于googleMaps API中的onLocationChanged() 代码如下: public void onServiceUpdate(ServiceState state) { final float[] distance = new float[2]; Location.di
public void onServiceUpdate(ServiceState state) {
final float[] distance = new float[2];
Location.distanceBetween(state.getGeoPoint().getLatitude(), state.getGeoPoint().getLongitude(), -6.182215, 106.785118, distance);
if (distance[0] > 100.0) {
countDownTimer = new CountDownTimer(5000, 1000) {
@Override
public void onTick(long millisUntilFinished) {
txtCount.setText("Second : " + millisUntilFinished /1000);
}
@Override
public void onFinish() {
txtCount.setText("Finish !");
}
}.start();
countDownTimer.start();
}
}
有什么想法吗?试着在runonuithread上运行它。该类是如何调用的?如果确切的代码在Oncreate中运行,但不是在它自己的类中运行,则会导致人们相信onServiceUpdate类没有被调用。感谢ASP和Phil3992的合作