Use new dataManagementLabel AIDL in Backup Settings
1) Uses new AIDL method getDataManagementLabelForUser 2) Changes data management label type from String to CharSequence Bug: 113856654 Test: atest $(find \ packages/apps/Settings/tests/robotests/src/com/android/settings/backup \ -name '*Test.java') Change-Id: I2325527c67878467b96fb93de50faafe153fdb21
This commit is contained in:
@@ -25,6 +25,7 @@ import android.os.RemoteException;
|
|||||||
import android.os.ServiceManager;
|
import android.os.ServiceManager;
|
||||||
import android.os.UserHandle;
|
import android.os.UserHandle;
|
||||||
import android.os.UserManager;
|
import android.os.UserManager;
|
||||||
|
import android.text.TextUtils;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import androidx.annotation.VisibleForTesting;
|
import androidx.annotation.VisibleForTesting;
|
||||||
@@ -91,9 +92,9 @@ public class BackupSettingsHelper {
|
|||||||
*
|
*
|
||||||
* @return Label for the backup settings item.
|
* @return Label for the backup settings item.
|
||||||
*/
|
*/
|
||||||
public String getLabelForBackupSettings() {
|
public CharSequence getLabelForBackupSettings() {
|
||||||
String label = getLabelFromBackupTransport();
|
CharSequence label = getLabelFromBackupTransport();
|
||||||
if (label == null || label.isEmpty()) {
|
if (TextUtils.isEmpty(label)) {
|
||||||
label = mContext.getString(R.string.privacy_settings_title);
|
label = mContext.getString(R.string.privacy_settings_title);
|
||||||
}
|
}
|
||||||
return label;
|
return label;
|
||||||
@@ -222,10 +223,11 @@ public class BackupSettingsHelper {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
String getLabelFromBackupTransport() {
|
CharSequence getLabelFromBackupTransport() {
|
||||||
try {
|
try {
|
||||||
String label =
|
CharSequence label =
|
||||||
mBackupManager.getDataManagementLabel(mBackupManager.getCurrentTransport());
|
mBackupManager.getDataManagementLabelForUser(
|
||||||
|
UserHandle.myUserId(), mBackupManager.getCurrentTransport());
|
||||||
if (Log.isLoggable(TAG, Log.DEBUG)) {
|
if (Log.isLoggable(TAG, Log.DEBUG)) {
|
||||||
Log.d(TAG, "Received the backup settings label from backup transport: " + label);
|
Log.d(TAG, "Received the backup settings label from backup transport: " + label);
|
||||||
}
|
}
|
||||||
|
@@ -31,7 +31,7 @@ public class BackupSettingsPreferenceController extends AbstractPreferenceContro
|
|||||||
private static final String BACKUP_SETTINGS = "backup_settings";
|
private static final String BACKUP_SETTINGS = "backup_settings";
|
||||||
private static final String MANUFACTURER_SETTINGS = "manufacturer_backup";
|
private static final String MANUFACTURER_SETTINGS = "manufacturer_backup";
|
||||||
private Intent mBackupSettingsIntent;
|
private Intent mBackupSettingsIntent;
|
||||||
private String mBackupSettingsTitle;
|
private CharSequence mBackupSettingsTitle;
|
||||||
private String mBackupSettingsSummary;
|
private String mBackupSettingsSummary;
|
||||||
private Intent mManufacturerIntent;
|
private Intent mManufacturerIntent;
|
||||||
private String mManufacturerLabel;
|
private String mManufacturerLabel;
|
||||||
|
@@ -48,7 +48,7 @@ public class DataManagementPreferenceController extends BasePreferenceController
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
preference.setIntent(mPSCD.getManageIntent());
|
preference.setIntent(mPSCD.getManageIntent());
|
||||||
final String manageLabel = mPSCD.getManageLabel();
|
final CharSequence manageLabel = mPSCD.getManageLabel();
|
||||||
if (manageLabel != null) {
|
if (manageLabel != null) {
|
||||||
preference.setTitle(manageLabel);
|
preference.setTitle(manageLabel);
|
||||||
}
|
}
|
||||||
|
@@ -27,7 +27,7 @@ public class PrivacySettingsConfigData {
|
|||||||
private Intent mConfigIntent;
|
private Intent mConfigIntent;
|
||||||
private String mConfigSummary;
|
private String mConfigSummary;
|
||||||
private Intent mManageIntent;
|
private Intent mManageIntent;
|
||||||
private String mManageLabel;
|
private CharSequence mManageLabel;
|
||||||
|
|
||||||
private PrivacySettingsConfigData() {
|
private PrivacySettingsConfigData() {
|
||||||
mBackupEnabled = false;
|
mBackupEnabled = false;
|
||||||
@@ -85,11 +85,11 @@ public class PrivacySettingsConfigData {
|
|||||||
mManageIntent = manageIntent;
|
mManageIntent = manageIntent;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getManageLabel() {
|
public CharSequence getManageLabel() {
|
||||||
return mManageLabel;
|
return mManageLabel;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setManageLabel(final String manageLabel) {
|
public void setManageLabel(final CharSequence manageLabel) {
|
||||||
mManageLabel = manageLabel;
|
mManageLabel = manageLabel;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -97,7 +97,8 @@ public class PrivacySettingsUtils {
|
|||||||
data.setConfigSummary(backupManager.getDestinationString(transport));
|
data.setConfigSummary(backupManager.getDestinationString(transport));
|
||||||
data.setManageIntent(validatedActivityIntent(context,
|
data.setManageIntent(validatedActivityIntent(context,
|
||||||
backupManager.getDataManagementIntent(transport), "management"));
|
backupManager.getDataManagementIntent(transport), "management"));
|
||||||
data.setManageLabel(backupManager.getDataManagementLabel(transport));
|
data.setManageLabel(
|
||||||
|
backupManager.getDataManagementLabelForUser(UserHandle.myUserId(), transport));
|
||||||
data.setBackupGray(false);
|
data.setBackupGray(false);
|
||||||
} catch (RemoteException e) {
|
} catch (RemoteException e) {
|
||||||
// leave it 'false' and disable the UI; there's no backup manager
|
// leave it 'false' and disable the UI; there's no backup manager
|
||||||
|
@@ -256,20 +256,21 @@ public class BackupSettingsHelperTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetLabelBackupTransport() throws Exception {
|
public void testGetLabelBackupTransport() throws Exception {
|
||||||
String label = "test_label";
|
CharSequence label = "test_label";
|
||||||
|
|
||||||
when(mBackupManager.getDataManagementLabel(anyString())).thenReturn(label);
|
when(mBackupManager.getDataManagementLabelForUser(anyInt(), anyString())).thenReturn(label);
|
||||||
|
|
||||||
String backupLabel = mBackupSettingsHelper.getLabelFromBackupTransport();
|
CharSequence backupLabel = mBackupSettingsHelper.getLabelFromBackupTransport();
|
||||||
|
|
||||||
assertThat(backupLabel).isEqualTo(label);
|
assertThat(backupLabel).isEqualTo(label);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetLabelBackupTransport_RemoteException() throws Exception {
|
public void testGetLabelBackupTransport_RemoteException() throws Exception {
|
||||||
when(mBackupManager.getDataManagementLabel(anyString())).thenThrow(new RemoteException());
|
when(mBackupManager.getDataManagementLabelForUser(anyInt(), anyString()))
|
||||||
|
.thenThrow(new RemoteException());
|
||||||
|
|
||||||
String backupLabel = mBackupSettingsHelper.getLabelFromBackupTransport();
|
CharSequence backupLabel = mBackupSettingsHelper.getLabelFromBackupTransport();
|
||||||
|
|
||||||
assertThat(backupLabel).isNull();
|
assertThat(backupLabel).isNull();
|
||||||
}
|
}
|
||||||
@@ -291,31 +292,31 @@ public class BackupSettingsHelperTest {
|
|||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetLabelForBackupSettings_WithLabelFromTransport() throws Exception {
|
public void testGetLabelForBackupSettings_WithLabelFromTransport() throws Exception {
|
||||||
String label = "test_label";
|
CharSequence label = "test_label";
|
||||||
|
|
||||||
when(mBackupManager.getDataManagementLabel(anyString())).thenReturn(label);
|
when(mBackupManager.getDataManagementLabelForUser(anyInt(), anyString())).thenReturn(label);
|
||||||
|
|
||||||
String backupLabel = mBackupSettingsHelper.getLabelForBackupSettings();
|
CharSequence backupLabel = mBackupSettingsHelper.getLabelForBackupSettings();
|
||||||
|
|
||||||
assertThat(backupLabel).isEqualTo(label);
|
assertThat(backupLabel).isEqualTo(label);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetLabelForBackupSettings_WithEmptyLabelFromTransport() throws Exception {
|
public void testGetLabelForBackupSettings_WithEmptyLabelFromTransport() throws Exception {
|
||||||
String label = "";
|
CharSequence label = "";
|
||||||
|
|
||||||
when(mBackupManager.getDataManagementLabel(anyString())).thenReturn(label);
|
when(mBackupManager.getDataManagementLabelForUser(anyInt(), anyString())).thenReturn(label);
|
||||||
|
|
||||||
String backupLabel = mBackupSettingsHelper.getLabelForBackupSettings();
|
CharSequence backupLabel = mBackupSettingsHelper.getLabelForBackupSettings();
|
||||||
|
|
||||||
assertThat(backupLabel).isEqualTo(mContext.getString(DEFAULT_LABEL_RESOURCE));
|
assertThat(backupLabel).isEqualTo(mContext.getString(DEFAULT_LABEL_RESOURCE));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testGetLabelForBackupSettings_WithoutLabelFromTransport() throws Exception {
|
public void testGetLabelForBackupSettings_WithoutLabelFromTransport() throws Exception {
|
||||||
when(mBackupManager.getDataManagementLabel(anyString())).thenReturn(null);
|
when(mBackupManager.getDataManagementLabelForUser(anyInt(), anyString())).thenReturn(null);
|
||||||
|
|
||||||
String backupLabel = mBackupSettingsHelper.getLabelForBackupSettings();
|
CharSequence backupLabel = mBackupSettingsHelper.getLabelForBackupSettings();
|
||||||
|
|
||||||
assertThat(backupLabel).isEqualTo(mContext.getString(DEFAULT_LABEL_RESOURCE));
|
assertThat(backupLabel).isEqualTo(mContext.getString(DEFAULT_LABEL_RESOURCE));
|
||||||
}
|
}
|
||||||
|
@@ -43,7 +43,7 @@ public class DataManagementPreferenceControllerTest {
|
|||||||
private DataManagementPreferenceController mController;
|
private DataManagementPreferenceController mController;
|
||||||
private PrivacySettingsConfigData mPSCD;
|
private PrivacySettingsConfigData mPSCD;
|
||||||
private Preference mPreference;
|
private Preference mPreference;
|
||||||
private String mTitle;
|
private CharSequence mTitle;
|
||||||
|
|
||||||
@Mock
|
@Mock
|
||||||
private Intent mIntent;
|
private Intent mIntent;
|
||||||
|
Reference in New Issue
Block a user