Do not let guest user disable secure nfc
Bug: 209446496 Test: manual Change-Id: I7253f7f08fde04e30400a30d9a0d24f1ceff04b0
This commit is contained in:
@@ -18,9 +18,8 @@ package com.android.settings.nfc;
|
||||
|
||||
import android.content.Context;
|
||||
import android.nfc.NfcAdapter;
|
||||
import android.provider.Settings;
|
||||
import android.os.UserManager;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.preference.SwitchPreference;
|
||||
|
||||
import com.android.settings.R;
|
||||
@@ -32,10 +31,12 @@ import com.android.settings.R;
|
||||
*/
|
||||
public class SecureNfcEnabler extends BaseNfcEnabler {
|
||||
private final SwitchPreference mPreference;
|
||||
private final UserManager mUserManager;
|
||||
|
||||
public SecureNfcEnabler(Context context, SwitchPreference preference) {
|
||||
super(context);
|
||||
mPreference = preference;
|
||||
mUserManager = context.getSystemService(UserManager.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -48,7 +49,7 @@ public class SecureNfcEnabler extends BaseNfcEnabler {
|
||||
case NfcAdapter.STATE_ON:
|
||||
mPreference.setSummary(R.string.nfc_secure_toggle_summary);
|
||||
mPreference.setChecked(mPreference.isChecked());
|
||||
mPreference.setEnabled(true);
|
||||
mPreference.setEnabled(isToggleable());
|
||||
break;
|
||||
case NfcAdapter.STATE_TURNING_ON:
|
||||
mPreference.setEnabled(false);
|
||||
@@ -58,4 +59,11 @@ public class SecureNfcEnabler extends BaseNfcEnabler {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isToggleable() {
|
||||
if (mUserManager.isGuestUser()) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user