Merge "Declare ACTION_MANAGE_SUPERVISOR_RESTRICTED_SETTING intent as an API."
This commit is contained in:
@@ -35536,6 +35536,7 @@ package android.provider {
|
||||
field public static final String ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION = "android.settings.MANAGE_APP_ALL_FILES_ACCESS_PERMISSION";
|
||||
field public static final String ACTION_MANAGE_DEFAULT_APPS_SETTINGS = "android.settings.MANAGE_DEFAULT_APPS_SETTINGS";
|
||||
field public static final String ACTION_MANAGE_OVERLAY_PERMISSION = "android.settings.action.MANAGE_OVERLAY_PERMISSION";
|
||||
field public static final String ACTION_MANAGE_SUPERVISOR_RESTRICTED_SETTING = "android.settings.MANAGE_SUPERVISOR_RESTRICTED_SETTING";
|
||||
field public static final String ACTION_MANAGE_UNKNOWN_APP_SOURCES = "android.settings.MANAGE_UNKNOWN_APP_SOURCES";
|
||||
field public static final String ACTION_MANAGE_WRITE_SETTINGS = "android.settings.action.MANAGE_WRITE_SETTINGS";
|
||||
field public static final String ACTION_MEMORY_CARD_SETTINGS = "android.settings.MEMORY_CARD_SETTINGS";
|
||||
@@ -35604,10 +35605,13 @@ package android.provider {
|
||||
field public static final String EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY = "android.provider.extra.SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY";
|
||||
field public static final String EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI = "android.provider.extra.SETTINGS_EMBEDDED_DEEP_LINK_INTENT_URI";
|
||||
field public static final String EXTRA_SUB_ID = "android.provider.extra.SUB_ID";
|
||||
field public static final String EXTRA_SUPERVISOR_RESTRICTED_SETTING_KEY = "android.provider.extra.SUPERVISOR_RESTRICTED_SETTING_KEY";
|
||||
field public static final String EXTRA_WIFI_NETWORK_LIST = "android.provider.extra.WIFI_NETWORK_LIST";
|
||||
field public static final String EXTRA_WIFI_NETWORK_RESULT_LIST = "android.provider.extra.WIFI_NETWORK_RESULT_LIST";
|
||||
field public static final String INTENT_CATEGORY_USAGE_ACCESS_CONFIG = "android.intent.category.USAGE_ACCESS_CONFIG";
|
||||
field public static final String METADATA_USAGE_ACCESS_REASON = "android.settings.metadata.USAGE_ACCESS_REASON";
|
||||
field public static final String SUPERVISOR_VERIFICATION_SETTING_BIOMETRICS = "supervisor_restricted_biometrics_controller";
|
||||
field public static final String SUPERVISOR_VERIFICATION_SETTING_UNKNOWN = "";
|
||||
}
|
||||
|
||||
public static final class Settings.Global extends android.provider.Settings.NameValueTable {
|
||||
|
||||
@@ -24,6 +24,7 @@ import android.annotation.Nullable;
|
||||
import android.annotation.RequiresPermission;
|
||||
import android.annotation.SdkConstant;
|
||||
import android.annotation.SdkConstant.SdkConstantType;
|
||||
import android.annotation.StringDef;
|
||||
import android.annotation.SuppressLint;
|
||||
import android.annotation.SystemApi;
|
||||
import android.annotation.TestApi;
|
||||
@@ -2077,8 +2078,56 @@ public final class Settings {
|
||||
// Intent#EXTRA_USER_ID can also be used
|
||||
@SystemApi
|
||||
@SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION)
|
||||
public static final String ACTION_SHOW_ADMIN_SUPPORT_DETAILS
|
||||
= "android.settings.SHOW_ADMIN_SUPPORT_DETAILS";
|
||||
public static final String ACTION_SHOW_ADMIN_SUPPORT_DETAILS =
|
||||
"android.settings.SHOW_ADMIN_SUPPORT_DETAILS";
|
||||
|
||||
/**
|
||||
* Intent extra: The id of a setting restricted by supervisors.
|
||||
* <p>
|
||||
* Type: String with a value from the SupervisorVerificationSetting annotation below.
|
||||
* <ul>
|
||||
* <li>{@link #SUPERVISOR_VERIFICATION_SETTING_UNKNOWN}
|
||||
* <li>{@link #SUPERVISOR_VERIFICATION_SETTING_BIOMETRICS}
|
||||
* </ul>
|
||||
* </p>
|
||||
*/
|
||||
public static final String EXTRA_SUPERVISOR_RESTRICTED_SETTING_KEY =
|
||||
"android.provider.extra.SUPERVISOR_RESTRICTED_SETTING_KEY";
|
||||
|
||||
/**
|
||||
* Unknown setting.
|
||||
*/
|
||||
public static final String SUPERVISOR_VERIFICATION_SETTING_UNKNOWN = "";
|
||||
|
||||
/**
|
||||
* Biometric settings for supervisors.
|
||||
*/
|
||||
public static final String SUPERVISOR_VERIFICATION_SETTING_BIOMETRICS =
|
||||
"supervisor_restricted_biometrics_controller";
|
||||
|
||||
/**
|
||||
* Keys for {@link #EXTRA_SUPERVISOR_RESTRICTED_SETTING_KEY}.
|
||||
* @hide
|
||||
*/
|
||||
@Retention(RetentionPolicy.SOURCE)
|
||||
@StringDef(prefix = { "SUPERVISOR_VERIFICATION_SETTING_" }, value = {
|
||||
SUPERVISOR_VERIFICATION_SETTING_UNKNOWN,
|
||||
SUPERVISOR_VERIFICATION_SETTING_BIOMETRICS,
|
||||
})
|
||||
public @interface SupervisorVerificationSetting {}
|
||||
|
||||
/**
|
||||
* Activity action: Launch UI to manage a setting restricted by supervisors.
|
||||
* <p>
|
||||
* Input: {@link #EXTRA_SUPERVISOR_RESTRICTED_SETTING_KEY} specifies what setting to open.
|
||||
* </p>
|
||||
* <p>
|
||||
* Output: Nothing.
|
||||
* </p>
|
||||
*/
|
||||
@SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION)
|
||||
public static final String ACTION_MANAGE_SUPERVISOR_RESTRICTED_SETTING =
|
||||
"android.settings.MANAGE_SUPERVISOR_RESTRICTED_SETTING";
|
||||
|
||||
/**
|
||||
* Activity Action: Show a dialog for remote bugreport flow.
|
||||
|
||||
@@ -20,10 +20,10 @@ import android.annotation.NonNull;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
import android.provider.Settings;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
|
||||
import com.android.settingslib.RestrictedLockUtils;
|
||||
|
||||
@@ -31,15 +31,6 @@ public class BiometricActionDisabledByAdminController extends BaseActionDisabled
|
||||
|
||||
private static final String TAG = "BiometricActionDisabledByAdminController";
|
||||
|
||||
// These MUST not change, as they are the stable API between here and device admin specified
|
||||
// by the component below.
|
||||
@VisibleForTesting
|
||||
static final String ACTION_LEARN_MORE = "android.intent.action.MANAGE_RESTRICTED_SETTING";
|
||||
@VisibleForTesting
|
||||
static final String EXTRA_SETTING_KEY = "extra_setting";
|
||||
@VisibleForTesting
|
||||
static final String EXTRA_SETTING_VALUE = "biometric_disabled_by_admin_controller";
|
||||
|
||||
BiometricActionDisabledByAdminController(
|
||||
DeviceAdminStringProvider stringProvider) {
|
||||
super(stringProvider);
|
||||
@@ -66,8 +57,9 @@ public class BiometricActionDisabledByAdminController extends BaseActionDisabled
|
||||
@NonNull RestrictedLockUtils.EnforcedAdmin enforcedAdmin) {
|
||||
return (dialog, which) -> {
|
||||
Log.d(TAG, "Positive button clicked, component: " + enforcedAdmin.component);
|
||||
final Intent intent = new Intent(ACTION_LEARN_MORE)
|
||||
.putExtra(EXTRA_SETTING_KEY, EXTRA_SETTING_VALUE)
|
||||
final Intent intent = new Intent(Settings.ACTION_MANAGE_SUPERVISOR_RESTRICTED_SETTING)
|
||||
.putExtra(Settings.EXTRA_SUPERVISOR_RESTRICTED_SETTING_KEY,
|
||||
Settings.SUPERVISOR_VERIFICATION_SETTING_BIOMETRICS)
|
||||
.setPackage(enforcedAdmin.component.getPackageName());
|
||||
context.startActivity(intent);
|
||||
};
|
||||
|
||||
@@ -32,6 +32,7 @@ import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
import android.os.UserHandle;
|
||||
import android.provider.Settings;
|
||||
|
||||
import com.android.settingslib.RestrictedLockUtils;
|
||||
|
||||
@@ -77,11 +78,11 @@ public class BiometricActionDisabledByAdminControllerTest {
|
||||
|
||||
ArgumentCaptor<Intent> intentCaptor = ArgumentCaptor.forClass(Intent.class);
|
||||
verify(mContext).startActivity(intentCaptor.capture());
|
||||
assertEquals(BiometricActionDisabledByAdminController.ACTION_LEARN_MORE,
|
||||
assertEquals(Settings.ACTION_MANAGE_SUPERVISOR_RESTRICTED_SETTING,
|
||||
intentCaptor.getValue().getAction());
|
||||
assertEquals(BiometricActionDisabledByAdminController.EXTRA_SETTING_VALUE,
|
||||
assertEquals(Settings.SUPERVISOR_VERIFICATION_SETTING_BIOMETRICS,
|
||||
intentCaptor.getValue().getStringExtra(
|
||||
BiometricActionDisabledByAdminController.EXTRA_SETTING_KEY));
|
||||
Settings.EXTRA_SUPERVISOR_RESTRICTED_SETTING_KEY));
|
||||
assertSame(componentName, intentCaptor.getValue().getComponent());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user