【发布时间】:2022-10-19 23:14:24
【问题描述】:
我有这个颤振代码来在阅读时获取 NFC 标签的标识符。使用 nfc_manager 包 (https://pub.dev/packages/nfc_manager)。
运行设备为一加7 Pro。
void _tagRead() {
NfcManager.instance.startSession(onDiscovered: (NfcTag tag) async {
Ndef? ndef = Ndef.from(tag);
result.value = tag.data;
print('Tag read: ');
final String identifier = tag.data['ndef']['identifier']
.map((e) => e.toRadixString(16).padLeft(2, '0'))
.join('');
print(identifier);
NfcManager.instance.stopSession();
});
}
问题是,当成功读取标签时,设备默认阅读器会弹出并从应用程序中移除焦点。如何防止这种行为?
【问题讨论】:
-
在你的应用离开前台之前不要打电话给
stopSession? -
你修复了这个行为吗?
-
@Petri,做这样的事情:github.com/semlette/nfc_in_flutter/issues/50