Merge "Replace HashMap with ArrayMap for better performance" into main
This commit is contained in:
@@ -20,6 +20,7 @@ import android.annotation.Nullable;
|
||||
import android.content.Context;
|
||||
import android.os.BadParcelableException;
|
||||
import android.os.Bundle;
|
||||
import android.util.ArrayMap;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
@@ -35,7 +36,6 @@ import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settings.widget.CardPreference;
|
||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
@@ -65,7 +65,7 @@ public class BatteryTipPreferenceController extends BasePreferenceController {
|
||||
|
||||
public BatteryTipPreferenceController(Context context, String preferenceKey) {
|
||||
super(context, preferenceKey);
|
||||
mBatteryTipMap = new HashMap<>();
|
||||
mBatteryTipMap = new ArrayMap<>();
|
||||
mMetricsFeatureProvider = FeatureFactory.getFeatureFactory().getMetricsFeatureProvider();
|
||||
mNeedUpdate = true;
|
||||
}
|
||||
|
@@ -18,9 +18,9 @@ package com.android.settings.fuelgauge.batterytip.tips;
|
||||
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.Context;
|
||||
import android.content.res.Resources;
|
||||
import android.icu.text.ListFormatter;
|
||||
import android.os.Parcel;
|
||||
import android.util.ArrayMap;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
|
||||
@@ -31,7 +31,6 @@ import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -66,7 +65,7 @@ public class RestrictAppTip extends BatteryTip {
|
||||
final CharSequence appLabel = num > 0 ? Utils.getApplicationLabel(context,
|
||||
mRestrictAppList.get(0).packageName) : "";
|
||||
|
||||
Map<String, Object> arguments = new HashMap<>();
|
||||
Map<String, Object> arguments = new ArrayMap<>();
|
||||
arguments.put("count", num);
|
||||
arguments.put("label", appLabel);
|
||||
return mState == StateType.HANDLED
|
||||
@@ -84,7 +83,7 @@ public class RestrictAppTip extends BatteryTip {
|
||||
final int resId = mState == StateType.HANDLED
|
||||
? R.string.battery_tip_restrict_handled_summary
|
||||
: R.string.battery_tip_restrict_summary;
|
||||
Map<String, Object> arguments = new HashMap<>();
|
||||
Map<String, Object> arguments = new ArrayMap<>();
|
||||
arguments.put("count", num);
|
||||
arguments.put("label", appLabel);
|
||||
return StringUtil.getIcuPluralsString(context, arguments, resId);
|
||||
|
@@ -23,6 +23,7 @@ import android.graphics.drawable.Drawable;
|
||||
import android.os.UserHandle;
|
||||
import android.os.UserManager;
|
||||
import android.text.TextUtils;
|
||||
import android.util.ArrayMap;
|
||||
import android.util.Log;
|
||||
import android.util.Pair;
|
||||
|
||||
@@ -33,7 +34,6 @@ import com.android.settings.fuelgauge.BatteryUtils;
|
||||
import com.android.settingslib.utils.StringUtil;
|
||||
|
||||
import java.util.Comparator;
|
||||
import java.util.HashMap;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -43,14 +43,14 @@ public class BatteryDiffEntry {
|
||||
|
||||
static Locale sCurrentLocale = null;
|
||||
// Caches app label and icon to improve loading performance.
|
||||
static final Map<String, BatteryEntry.NameAndIcon> sResourceCache = new HashMap<>();
|
||||
static final Map<String, BatteryEntry.NameAndIcon> sResourceCache = new ArrayMap<>();
|
||||
|
||||
// Caches package name and uid to improve loading performance.
|
||||
static final Map<String, Integer> sPackageNameAndUidCache = new HashMap<>();
|
||||
static final Map<String, Integer> sPackageNameAndUidCache = new ArrayMap<>();
|
||||
|
||||
// Whether a specific item is valid to launch restriction page?
|
||||
@VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE)
|
||||
static final Map<String, Boolean> sValidForRestriction = new HashMap<>();
|
||||
static final Map<String, Boolean> sValidForRestriction = new ArrayMap<>();
|
||||
|
||||
/** A comparator for {@link BatteryDiffEntry} based on the sorting key. */
|
||||
static final Comparator<BatteryDiffEntry> COMPARATOR =
|
||||
|
@@ -33,6 +33,7 @@ import android.os.UidBatteryConsumer;
|
||||
import android.os.UserBatteryConsumer;
|
||||
import android.os.UserHandle;
|
||||
import android.os.UserManager;
|
||||
import android.util.ArrayMap;
|
||||
import android.util.DebugUtils;
|
||||
import android.util.Log;
|
||||
|
||||
@@ -41,7 +42,6 @@ import com.android.settings.fuelgauge.BatteryUtils;
|
||||
import com.android.settingslib.Utils;
|
||||
|
||||
import java.util.Comparator;
|
||||
import java.util.HashMap;
|
||||
import java.util.Locale;
|
||||
|
||||
/**
|
||||
@@ -90,7 +90,7 @@ public class BatteryEntry {
|
||||
BatteryConsumer.POWER_COMPONENT_ANY, BatteryConsumer.PROCESS_STATE_CACHED),
|
||||
};
|
||||
|
||||
static final HashMap<String, UidToDetail> sUidCache = new HashMap<>();
|
||||
static final ArrayMap<String, UidToDetail> sUidCache = new ArrayMap<>();
|
||||
|
||||
static Locale sCurrentLocale = null;
|
||||
|
||||
|
@@ -23,6 +23,7 @@ import android.graphics.drawable.Drawable;
|
||||
import android.os.Handler;
|
||||
import android.os.Looper;
|
||||
import android.text.TextUtils;
|
||||
import android.util.ArrayMap;
|
||||
import android.util.ArraySet;
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
@@ -50,7 +51,6 @@ import com.android.settingslib.core.lifecycle.events.OnResume;
|
||||
import com.android.settingslib.widget.FooterPreference;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Optional;
|
||||
@@ -75,7 +75,7 @@ public class BatteryUsageBreakdownController extends BasePreferenceController
|
||||
private final Handler mHandler = new Handler(Looper.getMainLooper());
|
||||
|
||||
@VisibleForTesting
|
||||
final Map<String, Preference> mPreferenceCache = new HashMap<>();
|
||||
final Map<String, Preference> mPreferenceCache = new ArrayMap<>();
|
||||
|
||||
private int mSpinnerPosition;
|
||||
private String mSlotTimestamp;
|
||||
|
@@ -34,7 +34,6 @@ import com.android.settings.Utils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Calendar;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
@@ -293,7 +292,7 @@ public class DataProcessManager {
|
||||
Log.d(TAG, "there is no work profile");
|
||||
}
|
||||
|
||||
final Map<Long, UsageEvents> usageEventsMap = new HashMap<>();
|
||||
final Map<Long, UsageEvents> usageEventsMap = new ArrayMap<>();
|
||||
usageEventsMap.put(Long.valueOf(currentUserId), usageEventsForCurrentUser);
|
||||
if (usageEventsForWorkProfile != null) {
|
||||
Log.d(TAG, "usageEventsForWorkProfile is null");
|
||||
|
Reference in New Issue
Block a user