Use the upstreamed StorageStatsSource wrapper.
This was upstreamed into SettingsLib when similar wrappers started showing up in other projects. Settings, however, was using the non-upstreamed version. Change-Id: Iffadb75655165d3b64a25fd7b21e5b9765cb40be Fixes: 35680800 Test: Settings Robotests still pass despite the data swap out.
This commit is contained in:
@@ -71,7 +71,6 @@ import com.android.settings.applications.AppStateInstallAppsBridge.InstallAppsSt
|
|||||||
import com.android.settings.applications.AppStateUsageBridge.UsageState;
|
import com.android.settings.applications.AppStateUsageBridge.UsageState;
|
||||||
import com.android.settings.core.InstrumentedPreferenceFragment;
|
import com.android.settings.core.InstrumentedPreferenceFragment;
|
||||||
import com.android.settings.dashboard.SummaryLoader;
|
import com.android.settings.dashboard.SummaryLoader;
|
||||||
import com.android.settings.deviceinfo.storage.StorageStatsSource;
|
|
||||||
import com.android.settings.fuelgauge.HighPowerDetail;
|
import com.android.settings.fuelgauge.HighPowerDetail;
|
||||||
import com.android.settings.fuelgauge.PowerWhitelistBackend;
|
import com.android.settings.fuelgauge.PowerWhitelistBackend;
|
||||||
import com.android.settings.notification.AppNotificationSettings;
|
import com.android.settings.notification.AppNotificationSettings;
|
||||||
@@ -85,6 +84,7 @@ import com.android.settingslib.applications.ApplicationsState.AppEntry;
|
|||||||
import com.android.settingslib.applications.ApplicationsState.AppFilter;
|
import com.android.settingslib.applications.ApplicationsState.AppFilter;
|
||||||
import com.android.settingslib.applications.ApplicationsState.CompoundFilter;
|
import com.android.settingslib.applications.ApplicationsState.CompoundFilter;
|
||||||
import com.android.settingslib.applications.ApplicationsState.VolumeFilter;
|
import com.android.settingslib.applications.ApplicationsState.VolumeFilter;
|
||||||
|
import com.android.settingslib.applications.StorageStatsSource;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
|
@@ -26,7 +26,7 @@ import android.text.format.Formatter;
|
|||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.Utils;
|
import com.android.settings.Utils;
|
||||||
import com.android.settings.deviceinfo.storage.StorageStatsSource;
|
import com.android.settingslib.applications.StorageStatsSource;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* MusicViewHolderController controls an Audio/Music file view in the ManageApplications view.
|
* MusicViewHolderController controls an Audio/Music file view in the ManageApplications view.
|
||||||
|
@@ -1,90 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (C) 2017 The Android Open Source Project
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License
|
|
||||||
*/
|
|
||||||
|
|
||||||
package com.android.settings.deviceinfo.storage;
|
|
||||||
|
|
||||||
import android.app.usage.StorageStats;
|
|
||||||
import android.app.usage.StorageStatsManager;
|
|
||||||
import android.content.Context;
|
|
||||||
import android.os.UserHandle;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* StorageStatsSource wraps the StorageStatsManager for testability purposes.
|
|
||||||
*/
|
|
||||||
public class StorageStatsSource {
|
|
||||||
private StorageStatsManager mStorageStatsManager;
|
|
||||||
|
|
||||||
public StorageStatsSource(Context context) {
|
|
||||||
mStorageStatsManager = context.getSystemService(StorageStatsManager.class);
|
|
||||||
}
|
|
||||||
|
|
||||||
public ExternalStorageStats getExternalStorageStats(String volumeUuid, UserHandle user) {
|
|
||||||
return new ExternalStorageStats(
|
|
||||||
mStorageStatsManager.queryExternalStatsForUser(volumeUuid, user));
|
|
||||||
}
|
|
||||||
|
|
||||||
public AppStorageStats getStatsForUid(String volumeUuid, int uid) {
|
|
||||||
return new AppStorageStatsImpl(mStorageStatsManager.queryStatsForUid(volumeUuid, uid));
|
|
||||||
}
|
|
||||||
|
|
||||||
public static class ExternalStorageStats {
|
|
||||||
public long totalBytes;
|
|
||||||
public long audioBytes;
|
|
||||||
public long videoBytes;
|
|
||||||
public long imageBytes;
|
|
||||||
|
|
||||||
public ExternalStorageStats(long totalBytes, long audioBytes, long videoBytes,
|
|
||||||
long imageBytes) {
|
|
||||||
this.totalBytes = totalBytes;
|
|
||||||
this.audioBytes = audioBytes;
|
|
||||||
this.videoBytes = videoBytes;
|
|
||||||
this.imageBytes = imageBytes;
|
|
||||||
}
|
|
||||||
|
|
||||||
public ExternalStorageStats(android.app.usage.ExternalStorageStats stats) {
|
|
||||||
totalBytes = stats.getTotalBytes();
|
|
||||||
audioBytes = stats.getAudioBytes();
|
|
||||||
videoBytes = stats.getVideoBytes();
|
|
||||||
imageBytes = stats.getImageBytes();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public interface AppStorageStats {
|
|
||||||
long getCodeBytes();
|
|
||||||
long getDataBytes();
|
|
||||||
long getCacheBytes();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static class AppStorageStatsImpl implements AppStorageStats {
|
|
||||||
private StorageStats mStats;
|
|
||||||
|
|
||||||
public AppStorageStatsImpl(StorageStats stats) {
|
|
||||||
mStats = stats;
|
|
||||||
}
|
|
||||||
|
|
||||||
public long getCodeBytes() {
|
|
||||||
return mStats.getCodeBytes();
|
|
||||||
}
|
|
||||||
|
|
||||||
public long getDataBytes() {
|
|
||||||
return mStats.getDataBytes();
|
|
||||||
}
|
|
||||||
|
|
||||||
public long getCacheBytes() {
|
|
||||||
return mStats.getCacheBytes();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@@ -32,8 +32,8 @@ import android.view.LayoutInflater;
|
|||||||
|
|
||||||
import com.android.settings.SettingsRobolectricTestRunner;
|
import com.android.settings.SettingsRobolectricTestRunner;
|
||||||
import com.android.settings.TestConfig;
|
import com.android.settings.TestConfig;
|
||||||
import com.android.settings.deviceinfo.storage.StorageStatsSource;
|
|
||||||
import com.android.settingslib.deviceinfo.StorageVolumeProvider;
|
import com.android.settingslib.deviceinfo.StorageVolumeProvider;
|
||||||
|
import com.android.settingslib.applications.StorageStatsSource;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
Reference in New Issue
Block a user