在使用NfcAdapter.enableReaderMode启用NFC读取模式时,应确认您的Activity已经设置了callback。下面是正确的代码示例:
public class MyActivity extends Activity implements NfcAdapter.ReaderCallback {
private NfcAdapter nfcAdapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.my_layout);
nfcAdapter = NfcAdapter.getDefaultAdapter(this);
if (nfcAdapter == null) {
// 设备不支持NFC
return;
}
nfcAdapter.enableReaderMode(this, this, NfcAdapter.FLAG_READER_NFC_A | NfcAdapter.FLAG_READER_SKIP_NDEF_CHECK, null);
}
@Override
public void onTagDiscovered(Tag tag) {
// 处理您的标签数据
}
}
在此示例中,我们将Activity(MyActivity)设置为NfcAdapter.ReaderCallback的实现,以便处理onTagDiscovered()回调。确保在调用enableReaderMode时向其提供正确的实现。