透過 NfcManager 取得 NfcAdapter 並檢查 isEnabled() 即可判斷 NFC 狀態。但 Android 不允許應用程式直接開啟/關閉 NFC,必須由使用者在設定中手動操作。
NfcManager manager = (NfcManager) getSystemService(Context.NFC_SERVICE);
NfcAdapter adapter = manager.getDefaultAdapter();
if (adapter != null && adapter.isEnabled()) {
// NFC 可用,執行相關邏輯
} else {
// 提示使用者開啟 NFC
Intent intent = new Intent(Settings.ACTION_NFC_SETTINGS);
startActivity(intent);
}
getDefaultAdapter() 若裝置不支援 NFC 會回傳 null。Settings.ACTION_NFC_SETTINGS 或 Settings.ACTION_WIRELESS_SETTINGS。