Allow Device Management Role Holder to update Settings strings.
Test: manual Bug: 188414370 Change-Id: I6e1a06619799a9e99382d791e72e2e4518f93cac
This commit is contained in:
@@ -16,6 +16,9 @@
|
||||
|
||||
package com.android.settings.notification;
|
||||
|
||||
import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_APPS_CANNOT_ACCESS_NOTIFICATION_SETTINGS;
|
||||
import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_PROFILE_NOTIFICATION_LISTENER_BLOCKED;
|
||||
|
||||
import android.annotation.Nullable;
|
||||
import android.app.NotificationManager;
|
||||
import android.app.admin.DevicePolicyManager;
|
||||
@@ -103,7 +106,9 @@ public class NotificationAccessSettings extends EmptyTextSettings {
|
||||
|
||||
if (UserManager.get(mContext).isManagedProfile()) {
|
||||
// Apps in the work profile do not support notification listeners.
|
||||
Toast.makeText(mContext, R.string.notification_settings_work_profile,
|
||||
Toast.makeText(mContext,
|
||||
mDpm.getString(WORK_APPS_CANNOT_ACCESS_NOTIFICATION_SETTINGS,
|
||||
() -> mContext.getString(R.string.notification_settings_work_profile)),
|
||||
Toast.LENGTH_SHORT).show();
|
||||
finish();
|
||||
}
|
||||
@@ -163,7 +168,9 @@ public class NotificationAccessSettings extends EmptyTextSettings {
|
||||
if (managedProfileId != UserHandle.USER_NULL
|
||||
&& !mDpm.isNotificationListenerServicePermitted(
|
||||
service.packageName, managedProfileId)) {
|
||||
pref.setSummary(R.string.work_profile_notification_access_blocked_summary);
|
||||
pref.setSummary(mDpm.getString(WORK_PROFILE_NOTIFICATION_LISTENER_BLOCKED,
|
||||
() -> getString(
|
||||
R.string.work_profile_notification_access_blocked_summary)));
|
||||
}
|
||||
pref.setOnPreferenceClickListener(preference -> {
|
||||
final Bundle args = new Bundle();
|
||||
|
@@ -16,8 +16,13 @@
|
||||
|
||||
package com.android.settings.notification;
|
||||
|
||||
import static android.app.admin.DevicePolicyResources.Strings.Settings.ENABLE_WORK_PROFILE_SYNC_WITH_PERSONAL_SOUNDS_DIALOG_MESSAGE;
|
||||
import static android.app.admin.DevicePolicyResources.Strings.Settings.ENABLE_WORK_PROFILE_SYNC_WITH_PERSONAL_SOUNDS_DIALOG_TITLE;
|
||||
import static android.app.admin.DevicePolicyResources.Strings.Settings.WORK_PROFILE_SYNC_WITH_PERSONAL_SOUNDS_ACTIVE_SUMMARY;
|
||||
|
||||
import android.annotation.UserIdInt;
|
||||
import android.app.Dialog;
|
||||
import android.app.admin.DevicePolicyManager;
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.BroadcastReceiver;
|
||||
import android.content.Context;
|
||||
@@ -252,11 +257,16 @@ public class SoundWorkSettingsController extends AbstractPreferenceController
|
||||
private void enableWorkSyncSettings() {
|
||||
mWorkUsePersonalSounds.setChecked(true);
|
||||
|
||||
String summary = mContext.getSystemService(DevicePolicyManager.class).getString(
|
||||
WORK_PROFILE_SYNC_WITH_PERSONAL_SOUNDS_ACTIVE_SUMMARY,
|
||||
() -> mContext.getString(R.string.work_sound_same_as_personal)
|
||||
);
|
||||
|
||||
if (mWorkPhoneRingtonePreference != null) {
|
||||
mWorkPhoneRingtonePreference.setSummary(R.string.work_sound_same_as_personal);
|
||||
mWorkPhoneRingtonePreference.setSummary(summary);
|
||||
}
|
||||
mWorkNotificationRingtonePreference.setSummary(R.string.work_sound_same_as_personal);
|
||||
mWorkAlarmRingtonePreference.setSummary(R.string.work_sound_same_as_personal);
|
||||
mWorkNotificationRingtonePreference.setSummary(summary);
|
||||
mWorkAlarmRingtonePreference.setSummary(summary);
|
||||
}
|
||||
|
||||
private void disableWorkSync() {
|
||||
@@ -339,9 +349,18 @@ public class SoundWorkSettingsController extends AbstractPreferenceController
|
||||
|
||||
@Override
|
||||
public Dialog onCreateDialog(Bundle savedInstanceState) {
|
||||
|
||||
Context context = getActivity().getApplicationContext();
|
||||
DevicePolicyManager devicePolicyManager =
|
||||
context.getSystemService(DevicePolicyManager.class);
|
||||
|
||||
return new AlertDialog.Builder(getActivity())
|
||||
.setTitle(R.string.work_sync_dialog_title)
|
||||
.setMessage(R.string.work_sync_dialog_message)
|
||||
.setTitle(devicePolicyManager.getString(
|
||||
ENABLE_WORK_PROFILE_SYNC_WITH_PERSONAL_SOUNDS_DIALOG_TITLE,
|
||||
() -> context.getString(R.string.work_sync_dialog_title)))
|
||||
.setMessage(devicePolicyManager.getString(
|
||||
ENABLE_WORK_PROFILE_SYNC_WITH_PERSONAL_SOUNDS_DIALOG_MESSAGE,
|
||||
() -> context.getString(R.string.work_sync_dialog_message)))
|
||||
.setPositiveButton(R.string.work_sync_dialog_yes,
|
||||
SoundWorkSettingsController.UnifyWorkDialogFragment.this)
|
||||
.setNegativeButton(android.R.string.no, /* listener= */ null)
|
||||
|
@@ -17,7 +17,6 @@
|
||||
package com.android.settings.notification.zen;
|
||||
|
||||
import android.annotation.Nullable;
|
||||
import android.app.ActivityManager;
|
||||
import android.app.NotificationManager;
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.Context;
|
||||
@@ -28,8 +27,8 @@ import android.os.Bundle;
|
||||
import android.os.UserHandle;
|
||||
import android.os.UserManager;
|
||||
import android.util.ArraySet;
|
||||
import android.view.View;
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
@@ -138,7 +137,7 @@ public class ZenAccessSettings extends EmptyTextSettings implements
|
||||
pref.setOnPreferenceClickListener(preference -> {
|
||||
AppInfoBase.startAppInfoFragment(
|
||||
ZenAccessDetails.class /* fragment */,
|
||||
R.string.manage_zen_access_title /* titleRes */,
|
||||
getString(R.string.manage_zen_access_title) /* titleRes */,
|
||||
pkg,
|
||||
app.uid,
|
||||
this /* source */,
|
||||
|
Reference in New Issue
Block a user