Merge "Fix inconsistent data usage cycle start time."

This commit is contained in:
Doris Ling
2019-01-24 22:29:05 +00:00
committed by Android (Google) Code Review
2 changed files with 6 additions and 7 deletions

View File

@@ -22,7 +22,6 @@ import static android.net.NetworkStatsHistory.FIELD_TX_BYTES;
import android.app.usage.NetworkStats;
import android.app.usage.NetworkStatsManager;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.INetworkStatsService;
import android.net.INetworkStatsSession;
import android.net.NetworkPolicy;
@@ -35,14 +34,14 @@ import android.os.ServiceManager;
import android.text.format.DateUtils;
import android.util.Pair;
import androidx.annotation.VisibleForTesting;
import androidx.loader.content.AsyncTaskLoader;
import com.android.settingslib.NetworkPolicyEditor;
import java.time.ZonedDateTime;
import java.util.Iterator;
import androidx.annotation.VisibleForTesting;
import androidx.loader.content.AsyncTaskLoader;
/**
* Loader for network data usage history. It returns a list of usage data per billing cycle.
*/
@@ -121,8 +120,7 @@ public abstract class NetworkCycleDataLoader<D> extends AsyncTaskLoader<D> {
long cycleEnd = historyEnd;
while (cycleEnd > historyStart) {
final long cycleStart = Math.max(
historyStart, cycleEnd - (DateUtils.WEEK_IN_MILLIS * 4));
final long cycleStart = cycleEnd - (DateUtils.WEEK_IN_MILLIS * 4);
recordUsage(cycleStart, cycleEnd);
cycleEnd = cycleStart;
}

View File

@@ -130,7 +130,8 @@ public class NetworkCycleDataLoaderTest {
.thenReturn(networkHistory);
final long now = System.currentTimeMillis();
final long fourWeeksAgo = now - (DateUtils.WEEK_IN_MILLIS * 4);
when(networkHistory.getStart()).thenReturn(fourWeeksAgo);
final long twoDaysAgo = now - (DateUtils.DAY_IN_MILLIS * 2);
when(networkHistory.getStart()).thenReturn(twoDaysAgo);
when(networkHistory.getEnd()).thenReturn(now);
mLoader.loadFourWeeksData();