我目前正在對NFC閱讀應用程序,我遇到了這個問題:Android的NFC掃描錯誤回調
通常當我掃描標籤,我能聽到,在掃描和我的應用程序,標誌着成功的一個聲音檢測標籤。
但是有時候,如果我在每次掃描之間以很小的延遲掃描標籤,我會聽到不同的聲音,這可能表示掃描期間發生錯誤,並且我的應用程序未檢測到標籤。
經過短暫的延遲後,我可以成功掃描相同的標籤。
我想問一下,有沒有可能檢測到這種情況,並通知用戶等待並嘗試再次掃描標籤?
在此先感謝。
我目前正在對NFC閱讀應用程序,我遇到了這個問題:Android的NFC掃描錯誤回調
通常當我掃描標籤,我能聽到,在掃描和我的應用程序,標誌着成功的一個聲音檢測標籤。
但是有時候,如果我在每次掃描之間以很小的延遲掃描標籤,我會聽到不同的聲音,這可能表示掃描期間發生錯誤,並且我的應用程序未檢測到標籤。
經過短暫的延遲後,我可以成功掃描相同的標籤。
我想問一下,有沒有可能檢測到這種情況,並通知用戶等待並嘗試再次掃描標籤?
在此先感謝。
不,Android只會在標籤成功讀取時通知應用程序,並且在標籤讀取被中斷/失敗時不提供任何通知。
在固定設備上,您可以使用動態修改框架(如Xposed)來修改NFC服務的行爲以檢測此類事件。例如,您可以掛接NFC服務的方法playSound()
(請參閱NfcService.java:625),並檢查是否使用參數SOUND_ERROR
調用了它(假設讀取失敗時播放聲音)。
但是,這隻能在NFC堆棧的低層向NFC系統服務通知標籤掃描時通知您的應用。如果讀取在NFC堆棧的較低部分中較早中斷,或者如果NFC控制器甚至沒有將有關標籤掃描的任何信息傳遞給主機系統,您仍然無法發現此情況。
謝謝您的回答:) –
顯示吐司消息 – KCN
@KCN這就是我想要做的,真正的問題是,我應該如何檢測何時應顯示吐司? –
如果卡未正確掃描Toast your message.Check卡掃描與否 – KCN