diff options
author | 2020-11-13 18:34:42 +0800 | |
---|---|---|
committer | 2020-12-21 12:27:56 -0800 | |
commit | 23abf11a3a8518a665f12f173c53d77993a27a32 (patch) | |
tree | 4018e6726c403fa19f17c21c8296800f4385fabe | |
parent | 44889fb4271ae82dab38c1af3aaf996736ad32da (diff) |
Nfc adapter randomly returns null on devices having Nfc
Try to get NfcAdapter from NfcManager only when nfc service interface is
ready.
Bug: 173184157
Test: manaul test
Change-Id: Ifcb0f60e23f01cafd8b6b5f6bc8522773ece23a6
(cherry picked from commit 3217255a4d1f6dcbc28a0351dc74f136331f2d39)
-rw-r--r-- | core/java/android/nfc/NfcAdapter.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/core/java/android/nfc/NfcAdapter.java b/core/java/android/nfc/NfcAdapter.java index c61f10f50c93..dc4ce039bf77 100644 --- a/core/java/android/nfc/NfcAdapter.java +++ b/core/java/android/nfc/NfcAdapter.java @@ -677,6 +677,12 @@ public final class NfcAdapter { throw new IllegalArgumentException( "context not associated with any application (using a mock context?)"); } + + if (getServiceInterface() == null) { + // NFC is not available + return null; + } + /* use getSystemService() for consistency */ NfcManager manager = (NfcManager) context.getSystemService(Context.NFC_SERVICE); if (manager == null) { |