From 8b14531569e711aa69845e566c76e36cc441cb4c Mon Sep 17 00:00:00 2001 From: Ruchi Kandoi Date: Fri, 11 Jan 2019 12:53:18 -0800 Subject: [PATCH] Don't start Android Beam Activity if feature is not supported Test: manual; application using NFCSHARING intent Bug: 117519147 Change-Id: I2caa881c73e3d5976b7b2666351e773e504a8925 --- src/com/android/settings/nfc/AndroidBeam.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/com/android/settings/nfc/AndroidBeam.java b/src/com/android/settings/nfc/AndroidBeam.java index 2b7f872c0ce..a157c7f52b1 100644 --- a/src/com/android/settings/nfc/AndroidBeam.java +++ b/src/com/android/settings/nfc/AndroidBeam.java @@ -18,6 +18,8 @@ package com.android.settings.nfc; import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin; +import android.content.Context; +import android.content.pm.PackageManager; import android.nfc.NfcAdapter; import android.os.Bundle; import android.os.UserHandle; @@ -52,8 +54,10 @@ public class AndroidBeam extends InstrumentedFragment @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - mNfcAdapter = NfcAdapter.getDefaultAdapter(getActivity()); - if (mNfcAdapter == null) + final Context context = getActivity(); + mNfcAdapter = NfcAdapter.getDefaultAdapter(context); + final PackageManager pm = context.getPackageManager(); + if (mNfcAdapter == null || !pm.hasSystemFeature(PackageManager.FEATURE_NFC_BEAM)) getActivity().finish(); setHasOptionsMenu(true); }