写了个毫秒级日期时间显示APK, 用于测试时间延迟,60Hz屏幕上,基本做到16ms刷新一次。
编译好的APK: mstimer.apk_android毫秒计时器-其它文档类资源-CSDN下载
主要代码:
private static String TAG = "MainActivity";
private TextView timeView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.i(TAG, "onCreate");
setContentView(R.layout.activity_main);
timeView = (TextView)findViewById(R.id.timeView);
handler = new Handler(MainActivity.this);
}
Handler handler;
@Override
protected void onStart() {
super.onStart();
Log.i(TAG, "onStart");
handler.sendEmptyMessageDelayed(0, 4);
}
@Override
protected void onStop() {
super.onStop();
handler.removeMessages(0);
Log.i(TAG, "onStop");
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.i(TAG, "onDestroy");
}
@Override
public boolean handleMessage(@NonNull Message msg) {
handler.sendEmptyMessageDelayed(1, 4);
Calendar calendar = Calendar.getInstance();
String text = String.format("%02d:%02d:%02d %03d",
calendar.get(Calendar.HOUR_OF_DAY),
calendar.get(Calendar.MINUTE),
calendar.get(Calendar.SECOND),
calendar.get(Calendar.MILLISECOND % 1000));
timeView.setText(text);
return false;
}