package
com.example.timertest;
import
android.app.Service;
import
android.content.Intent;
import
android.os.Handler;
import
android.os.IBinder;
import
android.util.Log;
import
android.widget.TextView;
public
class
ServiceClass
extends
Service {
private
int
minute =
0
;
private
int
second =
0
;
private
int
t100ms =
0
;
private
TextView text;
private
Handler handler =
new
Handler();
@Override
public
IBinder onBind(Intent intent) {
return
null
;
}
public
void
onStart(Intent intent,
int
startId) {
handler.removeCallbacks(doUpdateTimer);
handler.postDelayed(doUpdateTimer,
1
);
Log.d(
"slog"
,
"onStart()"
);
super
.onStart(intent, startId);
}
@Override
public
void
onDestroy() {
handler.removeCallbacks(doUpdateTimer);
Log.d(
"slog"
,
"onDestroy()"
);
super
.onDestroy();
}
private
Runnable doUpdateTimer =
new
Runnable() {
public
void
run() {
t100ms++;
if
(t100ms >=
10
) {
t100ms =
0
;
second++;
if
(second >=
60
) {
second =
0
;
minute++;
if
(minute >=
60
)
minute =
0
;
}
}
String strFormat = String.format(
"%02d:%02d:%2d"
, minute, second, t100ms);
text.setText(strFormat);
handler.postDelayed(doUpdateTimer,
100
);
}
};
}