我正在开发一些 NFC 动作的应用程序。现在我正在处理从发现到完成数据读取的读取标签时间。我认为这应该很容易,所以我做了:
@Override
public void onNewIntent(final Intent intent) {
super.onNewIntent(intent);
if (NfcAdapter.ACTION_NDEF_DISCOVERED.equals(intent.getAction())) {
startReadTime = System.currentTimeMillis(); // i am reading time if Tag is doscovered
new Thread(new Runnable() {
public void run() {
ReadContent(intent);
}
}).start();
}
}
并读取标签数据
private void ReadContent(Intent intent) {
NdefMessage[] messages = null;
Parcelable[] rawMsgs = intent
.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES);
final long stopReadTime = System.currentTimeMillis();//I am reading time when read is stopped
//rest of the code
......
}
但时间似乎并不可靠。我读了 8K 标签,用简单的秒表我可以看到它需要大约 3 秒,但测量的时间戳只给了我 1-3 毫秒。我想测量从标记在 Android 上发现声音到完成阅读的时间。我做错了什么?