Renamed Storage Access to Directory Access.
Test: manual verification Test: make RunSettingsRoboTests -j40 Bug: 63720392 Bug: 72135562 Change-Id: I31e63456994d7a9cd2a83a260930835a1052e793
This commit is contained in:
@@ -9193,9 +9193,9 @@
|
||||
<!-- UI debug setting: preference summary - describes the behavior of showing a dialog every time an app crashes [CHAR LIMIT=NONE] -->
|
||||
<string name="show_first_crash_dialog_summary">Show dialog every time an app crashes</string>
|
||||
|
||||
<!-- Title for Storage Access settings -->
|
||||
<string name="storage_access">Storage access</string>
|
||||
<!-- Keywords for Storage Access settings -->
|
||||
<string name="keywords_storage_access">storage access scoped directory</string>
|
||||
<!-- Title for Directory Access settings -->
|
||||
<string name="directory_access">Directory access</string>
|
||||
<!-- Keywords for Directory Access settings -->
|
||||
<string name="keywords_directory_access">directory access</string>
|
||||
|
||||
</resources>
|
||||
|
@@ -113,13 +113,13 @@
|
||||
|
||||
<!-- TODO(b/63720392): add when ready
|
||||
<Preference
|
||||
android:key="special_app_storage_access"
|
||||
android:title="@string/storage_access"
|
||||
android:key="special_app_directory_access"
|
||||
android:title="@string/directory_access"
|
||||
android:fragment="com.android.settings.applications.manageapplications.ManageApplications"
|
||||
settings:keywords="@string/keywords_storage_access">
|
||||
settings:keywords="@string/keywords_directory_access">
|
||||
<extra
|
||||
android:name="classname"
|
||||
android:value="com.android.settings.Settings$StorageAccessSettingsActivity" />
|
||||
android:value="com.android.settings.Settings$DirectoryeAccessSettingsActivity" />
|
||||
</Preference>
|
||||
-->
|
||||
|
||||
|
@@ -120,7 +120,7 @@ public class Settings extends SettingsActivity {
|
||||
public static class PhotosStorageActivity extends SettingsActivity {
|
||||
/* empty */
|
||||
}
|
||||
public static class StorageAccessSettingsActivity extends SettingsActivity { /* empty */ }
|
||||
public static class DirectoryAccessSettingsActivity extends SettingsActivity { /* empty */ }
|
||||
|
||||
public static class TopLevelSettings extends SettingsActivity { /* empty */ }
|
||||
public static class ApnSettingsActivity extends SettingsActivity { /* empty */ }
|
||||
|
@@ -34,11 +34,11 @@ import com.android.settingslib.applications.ApplicationsState.AppFilter;
|
||||
import java.util.Set;
|
||||
|
||||
// TODO(b/63720392): add unit tests
|
||||
public class AppStateStorageAccessBridge extends AppStateBaseBridge {
|
||||
public class AppStateDirectoryAccessBridge extends AppStateBaseBridge {
|
||||
|
||||
private static final String TAG = "StorageAccessBridge";
|
||||
private static final String TAG = "DirectoryAccessBridge";
|
||||
|
||||
public AppStateStorageAccessBridge(ApplicationsState appState, Callback callback) {
|
||||
public AppStateDirectoryAccessBridge(ApplicationsState appState, Callback callback) {
|
||||
super(appState, callback);
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ public class AppStateStorageAccessBridge extends AppStateBaseBridge {
|
||||
@Override
|
||||
protected void updateExtraInfo(AppEntry app, String pkg, int uid) { }
|
||||
|
||||
public static final AppFilter FILTER_APP_HAS_STORAGE_ACCESS = new AppFilter() {
|
||||
public static final AppFilter FILTER_APP_HAS_DIRECTORY_ACCESS = new AppFilter() {
|
||||
|
||||
private Set<String> mPackages;
|
||||
|
@@ -38,13 +38,13 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||
import com.android.settings.R;
|
||||
|
||||
/**
|
||||
* Detailed settings for an app's storage access permissions (A.K.A Scoped Directory Access).
|
||||
* Detailed settings for an app's directory access permissions (A.K.A Scoped Directory Access).
|
||||
*/
|
||||
// TODO(b/63720392): explain its layout
|
||||
// TODO(b/63720392): add unit tests
|
||||
public class StorageAccessDetails extends AppInfoWithHeader implements OnPreferenceChangeListener,
|
||||
public class DirectoryAccessDetails extends AppInfoWithHeader implements OnPreferenceChangeListener,
|
||||
OnPreferenceClickListener {
|
||||
private static final String MY_TAG = "StorageAccessDetails";
|
||||
private static final String MY_TAG = "DirectoryAccessDetails";
|
||||
|
||||
@Override
|
||||
public void onCreate(Bundle savedInstanceState) {
|
||||
@@ -105,6 +105,6 @@ public class StorageAccessDetails extends AppInfoWithHeader implements OnPrefere
|
||||
|
||||
@Override
|
||||
public int getMetricsCategory() {
|
||||
return MetricsEvent.APPLICATIONS_USAGE_ACCESS_DETAIL;
|
||||
return MetricsEvent.APPLICATIONS_DIRECTORY_ACCESS_DETAIL;
|
||||
}
|
||||
}
|
@@ -23,7 +23,7 @@ import com.android.settings.applications.AppStateInstallAppsBridge;
|
||||
import com.android.settings.applications.AppStateNotificationBridge;
|
||||
import com.android.settings.applications.AppStateOverlayBridge;
|
||||
import com.android.settings.applications.AppStatePowerBridge;
|
||||
import com.android.settings.applications.AppStateStorageAccessBridge;
|
||||
import com.android.settings.applications.AppStateDirectoryAccessBridge;
|
||||
import com.android.settings.applications.AppStateUsageBridge;
|
||||
import com.android.settings.applications.AppStateWriteSettingsBridge;
|
||||
import com.android.settingslib.applications.ApplicationsState;
|
||||
@@ -66,7 +66,7 @@ public class AppFilterRegistry {
|
||||
public static final int FILTER_APPS_WITH_OVERLAY = 10;
|
||||
public static final int FILTER_APPS_WRITE_SETTINGS = 11;
|
||||
public static final int FILTER_APPS_INSTALL_SOURCES = 12;
|
||||
public static final int FILTER_APP_HAS_STORAGE_ACCESS = 13;
|
||||
public static final int FILTER_APP_HAS_DIRECTORY_ACCESS = 13;
|
||||
// Next id: 14
|
||||
|
||||
private static AppFilterRegistry sRegistry;
|
||||
@@ -158,10 +158,10 @@ public class AppFilterRegistry {
|
||||
FILTER_APPS_INSTALL_SOURCES,
|
||||
R.string.filter_install_sources_apps);
|
||||
|
||||
// Apps that interacted with storage access permissions (A.K.A. Scoped Directory Access)
|
||||
mFilters[FILTER_APP_HAS_STORAGE_ACCESS] = new AppFilterItem(
|
||||
AppStateStorageAccessBridge.FILTER_APP_HAS_STORAGE_ACCESS,
|
||||
FILTER_APP_HAS_STORAGE_ACCESS,
|
||||
// Apps that interacted with directory access permissions (A.K.A. Scoped Directory Access)
|
||||
mFilters[FILTER_APP_HAS_DIRECTORY_ACCESS] = new AppFilterItem(
|
||||
AppStateDirectoryAccessBridge.FILTER_APP_HAS_DIRECTORY_ACCESS,
|
||||
FILTER_APP_HAS_DIRECTORY_ACCESS,
|
||||
R.string.filter_install_sources_apps);
|
||||
}
|
||||
|
||||
@@ -185,8 +185,8 @@ public class AppFilterRegistry {
|
||||
return FILTER_APPS_WRITE_SETTINGS;
|
||||
case ManageApplications.LIST_TYPE_MANAGE_SOURCES:
|
||||
return FILTER_APPS_INSTALL_SOURCES;
|
||||
case ManageApplications.LIST_TYPE_STORAGE_ACCESS:
|
||||
return FILTER_APP_HAS_STORAGE_ACCESS;
|
||||
case ManageApplications.LIST_TYPE_DIRECTORY_ACCESS:
|
||||
return FILTER_APP_HAS_DIRECTORY_ACCESS;
|
||||
default:
|
||||
return FILTER_APPS_ALL;
|
||||
}
|
||||
|
@@ -84,7 +84,7 @@ import com.android.settings.applications.AppStateInstallAppsBridge;
|
||||
import com.android.settings.applications.AppStateNotificationBridge;
|
||||
import com.android.settings.applications.AppStateOverlayBridge;
|
||||
import com.android.settings.applications.AppStatePowerBridge;
|
||||
import com.android.settings.applications.AppStateStorageAccessBridge;
|
||||
import com.android.settings.applications.AppStateDirectoryAccessBridge;
|
||||
import com.android.settings.applications.AppStateUsageBridge;
|
||||
import com.android.settings.applications.AppStateUsageBridge.UsageState;
|
||||
import com.android.settings.applications.AppStateWriteSettingsBridge;
|
||||
@@ -93,7 +93,7 @@ import com.android.settings.applications.DefaultAppSettings;
|
||||
import com.android.settings.applications.InstalledAppCounter;
|
||||
import com.android.settings.applications.InstalledAppDetails;
|
||||
import com.android.settings.applications.NotificationApps;
|
||||
import com.android.settings.applications.StorageAccessDetails;
|
||||
import com.android.settings.applications.DirectoryAccessDetails;
|
||||
import com.android.settings.applications.UsageAccessDetails;
|
||||
import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
|
||||
import com.android.settings.applications.appinfo.DrawOverlayDetails;
|
||||
@@ -206,7 +206,7 @@ public class ManageApplications extends InstrumentedPreferenceFragment
|
||||
public static final int LIST_TYPE_GAMES = 9;
|
||||
public static final int LIST_TYPE_MOVIES = 10;
|
||||
public static final int LIST_TYPE_PHOTOGRAPHY = 11;
|
||||
public static final int LIST_TYPE_STORAGE_ACCESS = 12;
|
||||
public static final int LIST_TYPE_DIRECTORY_ACCESS = 12;
|
||||
|
||||
// List types that should show instant apps.
|
||||
public static final Set<Integer> LIST_TYPES_WITH_INSTANT = new ArraySet<>(Arrays.asList(
|
||||
@@ -282,9 +282,9 @@ public class ManageApplications extends InstrumentedPreferenceFragment
|
||||
mListType = LIST_TYPE_PHOTOGRAPHY;
|
||||
mSortOrder = R.id.sort_order_size;
|
||||
mStorageType = args.getInt(EXTRA_STORAGE_TYPE, STORAGE_TYPE_DEFAULT);
|
||||
} else if (className.equals(Settings.StorageAccessSettingsActivity.class.getName())) {
|
||||
mListType = LIST_TYPE_STORAGE_ACCESS;
|
||||
screenTitle = R.string.storage_access;
|
||||
} else if (className.equals(Settings.DirectoryAccessSettingsActivity.class.getName())) {
|
||||
mListType = LIST_TYPE_DIRECTORY_ACCESS;
|
||||
screenTitle = R.string.directory_access;
|
||||
} else {
|
||||
mListType = LIST_TYPE_MAIN;
|
||||
}
|
||||
@@ -449,8 +449,8 @@ public class ManageApplications extends InstrumentedPreferenceFragment
|
||||
return MetricsEvent.SYSTEM_ALERT_WINDOW_APPS;
|
||||
case LIST_TYPE_MANAGE_SOURCES:
|
||||
return MetricsEvent.MANAGE_EXTERNAL_SOURCES;
|
||||
case LIST_TYPE_STORAGE_ACCESS:
|
||||
return MetricsEvent.STORAGE_ACCESS;
|
||||
case LIST_TYPE_DIRECTORY_ACCESS:
|
||||
return MetricsEvent.DIRECTORY_ACCESS;
|
||||
default:
|
||||
return MetricsEvent.VIEW_UNKNOWN;
|
||||
}
|
||||
@@ -545,8 +545,8 @@ public class ManageApplications extends InstrumentedPreferenceFragment
|
||||
case LIST_TYPE_PHOTOGRAPHY:
|
||||
startAppInfoFragment(AppStorageSettings.class, R.string.storage_photos_videos);
|
||||
break;
|
||||
case LIST_TYPE_STORAGE_ACCESS:
|
||||
startAppInfoFragment(StorageAccessDetails.class, R.string.storage_access);
|
||||
case LIST_TYPE_DIRECTORY_ACCESS:
|
||||
startAppInfoFragment(DirectoryAccessDetails.class, R.string.directory_access);
|
||||
break;
|
||||
|
||||
// TODO: Figure out if there is a way where we can spin up the profile's settings
|
||||
@@ -852,8 +852,8 @@ public class ManageApplications extends InstrumentedPreferenceFragment
|
||||
mExtraInfoBridge = new AppStateWriteSettingsBridge(mContext, mState, this);
|
||||
} else if (mManageApplications.mListType == LIST_TYPE_MANAGE_SOURCES) {
|
||||
mExtraInfoBridge = new AppStateInstallAppsBridge(mContext, mState, this);
|
||||
} else if (mManageApplications.mListType == LIST_TYPE_STORAGE_ACCESS) {
|
||||
mExtraInfoBridge = new AppStateStorageAccessBridge(mState, this);
|
||||
} else if (mManageApplications.mListType == LIST_TYPE_DIRECTORY_ACCESS) {
|
||||
mExtraInfoBridge = new AppStateDirectoryAccessBridge(mState, this);
|
||||
} else {
|
||||
mExtraInfoBridge = null;
|
||||
}
|
||||
@@ -1255,7 +1255,7 @@ public class ManageApplications extends InstrumentedPreferenceFragment
|
||||
case LIST_TYPE_MANAGE_SOURCES:
|
||||
holder.setSummary(ExternalSourcesDetails.getPreferenceSummary(mContext, entry));
|
||||
break;
|
||||
case LIST_TYPE_STORAGE_ACCESS:
|
||||
case LIST_TYPE_DIRECTORY_ACCESS:
|
||||
holder.setSummary(null);
|
||||
break;
|
||||
default:
|
||||
|
@@ -44,7 +44,7 @@ import com.android.settings.applications.ManageDomainUrls;
|
||||
import com.android.settings.applications.NotificationApps;
|
||||
import com.android.settings.applications.ProcessStatsSummary;
|
||||
import com.android.settings.applications.ProcessStatsUi;
|
||||
import com.android.settings.applications.StorageAccessDetails;
|
||||
import com.android.settings.applications.DirectoryAccessDetails;
|
||||
import com.android.settings.applications.UsageAccessDetails;
|
||||
import com.android.settings.applications.VrListenerSettings;
|
||||
import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
|
||||
@@ -254,7 +254,7 @@ public class SettingsGateway {
|
||||
LockscreenDashboardFragment.class.getName(),
|
||||
BluetoothDeviceDetailsFragment.class.getName(),
|
||||
DataUsageList.class.getName(),
|
||||
StorageAccessDetails.class.getName()
|
||||
DirectoryAccessDetails.class.getName()
|
||||
};
|
||||
|
||||
public static final String[] SETTINGS_FOR_RESTRICTED = {
|
||||
|
@@ -73,4 +73,4 @@ com.android.settings.TetherSettings
|
||||
com.android.settings.ApnEditor
|
||||
com.android.settings.UserCredentialsSettings
|
||||
com.android.settings.TestingSettings
|
||||
com.android.settings.applications.StorageAccessDetails
|
||||
com.android.settings.applications.DirectoryAccessDetails
|
Reference in New Issue
Block a user