diff --git a/core/java/android/nfc/NfcAdapter.java b/core/java/android/nfc/NfcAdapter.java index 3282d567d369f..c38626cf67dd5 100644 --- a/core/java/android/nfc/NfcAdapter.java +++ b/core/java/android/nfc/NfcAdapter.java @@ -565,7 +565,8 @@ public final class NfcAdapter { return sNullContextNfcAdapter; } if (!sIsInitialized) { - PackageManager pm = context.getPackageManager(); + PackageManager pm; + pm = context.getPackageManager(); sHasNfcFeature = pm.hasSystemFeature(PackageManager.FEATURE_NFC); sHasBeamFeature = pm.hasSystemFeature(PackageManager.FEATURE_NFC_BEAM); boolean hasHceFeature = @@ -616,12 +617,8 @@ public final class NfcAdapter { /** get handle to NFC service interface */ private static INfcAdapter getServiceInterface() { - if (!sHasNfcFeature) { - /* NFC is not supported */ - return null; - } /* get a handle to NFC service */ - IBinder b = ServiceManager.waitForService("nfc"); + IBinder b = ServiceManager.getService("nfc"); if (b == null) { return null; } @@ -651,15 +648,6 @@ public final class NfcAdapter { "context not associated with any application (using a mock context?)"); } - synchronized (NfcAdapter.class) { - if (!sIsInitialized) { - PackageManager pm = context.getPackageManager(); - sHasNfcFeature = pm.hasSystemFeature(PackageManager.FEATURE_NFC); - } - if (!sHasNfcFeature) { - return null; - } - } if (getServiceInterface() == null) { // NFC is not available return null;