【发布时间】:2022-11-04 17:16:00
【问题描述】:
我制作了一个同时使用相机和 nfc 的屏幕,但发现某些设备或在 Android 11 之后,使用相机时 NFC 似乎被阻止。
因此,我试图实现如果 NFC 被阻止,我试图在屏幕上显示一个文本,说明 NFC 由于相机而被阻止,但很难检查 NFC 是否处于活动状态。
有没有办法可以检查使用相机时 NFC 是否被阻止?
在使用相机时找到一种方法来检查 NFC 是否处于活动状态
【问题讨论】:
我制作了一个同时使用相机和 nfc 的屏幕,但发现某些设备或在 Android 11 之后,使用相机时 NFC 似乎被阻止。
因此,我试图实现如果 NFC 被阻止,我试图在屏幕上显示一个文本,说明 NFC 由于相机而被阻止,但很难检查 NFC 是否处于活动状态。
有没有办法可以检查使用相机时 NFC 是否被阻止?
在使用相机时找到一种方法来检查 NFC 是否处于活动状态
【问题讨论】:
我自己没有任何 Android 11 设备可以找到它,这取决于相机正在做什么来阻止/禁用 NFC,但是有一个用于 NFC 状态的广播接收器
例如
// Listen to NFC setting changes
this.registerReceiver(mReceiver, filter);
}
// Listen for NFC being turned on while in the App
private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
final String action = intent.getAction();
if (action.equals(NfcAdapter.ACTION_ADAPTER_STATE_CHANGED)) {
final int state = intent.getIntExtra(NfcAdapter.EXTRA_ADAPTER_STATE,
NfcAdapter.STATE_OFF);
switch (state) {
case NfcAdapter.STATE_OFF:
// Tell the user to turn NFC on if App requires it
break;
case NfcAdapter.STATE_TURNING_OFF:
break;
case NfcAdapter.STATE_ON:
// Enabled NFC;
break;
case NfcAdapter.STATE_TURNING_ON:
break;
}
}
}
};
【讨论】: