diff --git a/res/values/strings.xml b/res/values/strings.xml
index cd9da3b97e2..5bfe608c1dc 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -5620,6 +5620,8 @@
Call and SMS history will be shared with this user.
Emergency information
+
+ Information about %1$s
Allow apps and content
@@ -8032,7 +8034,7 @@
Your storage is now being managed by the storage manager
- Accounts
+ Accounts for %1$s
Configure
diff --git a/src/com/android/settings/accounts/AccountPreferenceController.java b/src/com/android/settings/accounts/AccountPreferenceController.java
index 38f6b1a660d..c08c924cbdd 100644
--- a/src/com/android/settings/accounts/AccountPreferenceController.java
+++ b/src/com/android/settings/accounts/AccountPreferenceController.java
@@ -295,7 +295,8 @@ public class AccountPreferenceController extends PreferenceController
mHelper.createAccessiblePreferenceCategory(mParent.getPreferenceManager().getContext());
preferenceGroup.setOrder(mAccountProfileOrder++);
if (isSingleProfile()) {
- preferenceGroup.setTitle(R.string.account_for_section_header);
+ preferenceGroup.setTitle(context.getString(R.string.account_for_section_header,
+ userInfo.name));
preferenceGroup.setContentDescription(
mContext.getString(R.string.account_settings));
} else if (userInfo.isManagedProfile()) {
diff --git a/src/com/android/settings/accounts/EmergencyInfoPreferenceController.java b/src/com/android/settings/accounts/EmergencyInfoPreferenceController.java
index 0568d83920d..12219472d79 100644
--- a/src/com/android/settings/accounts/EmergencyInfoPreferenceController.java
+++ b/src/com/android/settings/accounts/EmergencyInfoPreferenceController.java
@@ -18,10 +18,14 @@ package com.android.settings.accounts;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ResolveInfo;
+import android.content.pm.UserInfo;
import android.content.res.Resources;
+import android.os.UserHandle;
+import android.os.UserManager;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
+import com.android.settings.R;
import com.android.settings.core.PreferenceController;
import com.android.settings.search.SearchIndexableRaw;
@@ -48,6 +52,12 @@ public class EmergencyInfoPreferenceController extends PreferenceController {
}
}
+ public void updateState(Preference preference) {
+ UserInfo info = mContext.getSystemService(UserManager.class).getUserInfo(
+ UserHandle.myUserId());
+ preference.setSummary(mContext.getString(R.string.emergency_info_summary, info.name));
+ }
+
@Override
public boolean handlePreferenceTreeClick(Preference preference) {
if (KEY_EMERGENCY_INFO.equals(preference.getKey())) {
diff --git a/tests/robotests/src/com/android/settings/accounts/AccountPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accounts/AccountPreferenceControllerTest.java
index 87be7561e2e..e5c4a66d870 100644
--- a/tests/robotests/src/com/android/settings/accounts/AccountPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/accounts/AccountPreferenceControllerTest.java
@@ -190,6 +190,25 @@ public class AccountPreferenceControllerTest {
verify(mScreen, times(2)).removePreference(preferenceGroup);
}
+ @Test
+ @Config(shadows = {ShadowAccountManager.class, ShadowContentResolver.class})
+ public void onResume_oneProfile_shouldSetAccountTitleWithUserName() {
+ final List infos = new ArrayList<>();
+ infos.add(new UserInfo(1, "user 1", UserInfo.FLAG_MANAGED_PROFILE));
+ when(mUserManager.isManagedProfile()).thenReturn(false);
+ when(mUserManager.isLinkedUser()).thenReturn(false);
+ when(mUserManager.getProfiles(anyInt())).thenReturn(infos);
+ AccessiblePreferenceCategory preferenceGroup = mock(AccessiblePreferenceCategory.class);
+ when(mAccountHelper.createAccessiblePreferenceCategory(any(Context.class))).thenReturn(
+ preferenceGroup);
+
+ mController.onResume();
+
+ verify(preferenceGroup).setTitle(
+ mContext.getString(R.string.account_for_section_header, "user 1"));
+
+ }
+
@Test
@Config(shadows = {ShadowAccountManager.class, ShadowContentResolver.class})
public void onResume_noPreferenceScreen_shouldNotCrash() {
diff --git a/tests/robotests/src/com/android/settings/accounts/EmergencyInfoPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accounts/EmergencyInfoPreferenceControllerTest.java
index 128c211612c..d31c0f63bec 100644
--- a/tests/robotests/src/com/android/settings/accounts/EmergencyInfoPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/accounts/EmergencyInfoPreferenceControllerTest.java
@@ -18,11 +18,17 @@ package com.android.settings.accounts;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ResolveInfo;
+import android.content.pm.UserInfo;
+import android.os.UserManager;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceScreen;
+
+import com.android.settings.R;
import com.android.settings.SettingsRobolectricTestRunner;
import com.android.settings.TestConfig;
import com.android.settings.search.SearchIndexableRaw;
+import com.android.settings.testutils.shadow.ShadowAccountManager;
+import com.android.settings.testutils.shadow.ShadowContentResolver;
import java.util.ArrayList;
import java.util.List;
@@ -51,6 +57,8 @@ public class EmergencyInfoPreferenceControllerTest {
private Context mContext;
@Mock(answer = RETURNS_DEEP_STUBS)
private PreferenceScreen mScreen;
+ @Mock(answer = RETURNS_DEEP_STUBS)
+ private UserManager mUserManager;
private EmergencyInfoPreferenceController mController;
@@ -111,6 +119,21 @@ public class EmergencyInfoPreferenceControllerTest {
verify(mScreen, never()).removePreference(any(Preference.class));
}
+ @Test
+ @Config(shadows = {ShadowAccountManager.class, ShadowContentResolver.class})
+ public void updateState_shouldSetSummary() {
+ final List infos = new ArrayList<>();
+ infos.add(new UserInfo(1, "user 1", UserInfo.FLAG_MANAGED_PROFILE));
+ when((Object) mContext.getSystemService(UserManager.class)).thenReturn(mUserManager);
+ when(mUserManager.getProfiles(anyInt())).thenReturn(infos);
+ final Preference preference = mock(Preference.class);
+
+ mController.updateState(preference);
+
+ verify(preference).setSummary(
+ mContext.getString(R.string.emergency_info_summary, "user 1"));
+ }
+
@Test
public void handlePreferenceTreeClick_shouldStartActivity() {
final ShadowApplication application = ShadowApplication.getInstance();