From 5bf4e1ec4f878e64427ebdcddbd1b00a87ddd7c3 Mon Sep 17 00:00:00 2001 From: Ruchi Kandoi Date: Thu, 17 Jan 2019 15:31:02 -0800 Subject: [PATCH] Add Secure NFC functionality Secure NFC will permit NFC acitvity only when screen is unlocked. Bug: 117253725 Test: Manual; Toggle switch; check if HCE works with screen off Change-Id: I9977d85065fc7ebca3ed4991ffa52fef0590cf90 --- res/values/strings.xml | 7 +- res/xml/connected_devices_advanced.xml | 8 ++ .../settings/nfc/AndroidBeamEnabler.java | 2 +- .../settings/nfc/SecureNfcEnabler.java | 60 +++++++++++ .../nfc/SecureNfcPreferenceController.java | 99 +++++++++++++++++++ ...dConnectedDeviceDashboardFragmentTest.java | 14 ++- 6 files changed, 187 insertions(+), 3 deletions(-) create mode 100644 src/com/android/settings/nfc/SecureNfcEnabler.java create mode 100644 src/com/android/settings/nfc/SecureNfcPreferenceController.java diff --git a/res/values/strings.xml b/res/values/strings.xml index f77c10d577c..9576c1482b7 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -1859,6 +1859,11 @@ NFC exchanges data between this device and other nearby devices or targets, such as payment terminals, access readers, and interactive ads or tags. + + Secure NFC + + Allow NFC Payment and Transit use only when screen is unlocked + Android Beam @@ -1866,7 +1871,7 @@ Off - Unavailable because NFC is turned off + Unavailable because NFC is turned off Android Beam diff --git a/res/xml/connected_devices_advanced.xml b/res/xml/connected_devices_advanced.xml index b5d2a999e4b..2ceceb384f0 100644 --- a/res/xml/connected_devices_advanced.xml +++ b/res/xml/connected_devices_advanced.xml @@ -44,6 +44,14 @@ android:icon="@drawable/ic_android" android:order="-6"/> + + niks = AdvancedConnectedDeviceDashboardFragment.SEARCH_INDEX_DATA_PROVIDER - .getNonIndexableKeys(RuntimeEnvironment.application); + .getNonIndexableKeys(context); assertThat(niks).contains(AdvancedConnectedDeviceDashboardFragment.KEY_BLUETOOTH); }