Enforce Keyguard policy in Notification Settings

- Applied getKeyguardDisabledFeatures for notification settings and
    notification setup page (after settings a screenlock)
- If a notification settings is disabled, the next least secure setting
    will be chosen
- Although KEYGUARD_DISABLE_UNREDACTED_NOTIFICATIONS can be set be
    profile, it will not be reflected in both settings page. This is
    because it does not affect the owner (user 0), as mentioned in
    DevicePolicyManagerService.PROFILE_KEYGUARD_FEATURES_AFFECT_OWNER
- Skip RedactionInterstitial if there is <= 1 options for the user
- Tested with both Setup wizard and settings case, both pattern and
    password, as well as toggling the policy on and off

Bug: 19307118
Bug: 17099898

Change-Id: If640d5576caa0163e9942569f7b4643a30bbfe0a
This commit is contained in:
Alex Chau
2015-06-12 11:45:08 +01:00
parent 2c55f738c4
commit ccade40278
10 changed files with 129 additions and 43 deletions

View File

@@ -103,7 +103,9 @@ public class SetupChooseLockPattern extends ChooseLockPattern {
@Override
protected Intent getRedactionInterstitialIntent(Context context) {
Intent intent = SetupRedactionInterstitial.createStartIntent(context);
SetupWizardUtils.copySetupExtras(getActivity().getIntent(), intent);
if (intent != null) {
SetupWizardUtils.copySetupExtras(getActivity().getIntent(), intent);
}
return intent;
}