Merge "Support special tethering and removed apps UID in the usage list" into tm-dev am: 434009d709

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/18158878

Change-Id: Id5e216edab65a83c6c7836e719e8dd11c500acb6
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
YK Hung
2022-05-05 12:41:20 +00:00
committed by Automerger Merge Worker
8 changed files with 71 additions and 6 deletions

View File

@@ -243,7 +243,8 @@ public class BatteryAppListPreferenceController extends AbstractPreferenceContro
continue;
}
final UserHandle userHandle = new UserHandle(UserHandle.getUserId(entry.getUid()));
final int uid = entry.getUid();
final UserHandle userHandle = new UserHandle(UserHandle.getUserId(uid));
final Drawable badgedIcon = mUserManager.getBadgedIconForUser(entry.getIcon(),
userHandle);
final CharSequence contentDescription = mUserManager.getBadgedLabelForUser(
@@ -261,6 +262,8 @@ public class BatteryAppListPreferenceController extends AbstractPreferenceContro
pref.setOrder(i + 1);
pref.setPercent(percentOfTotal);
pref.shouldShowAnomalyIcon(false);
pref.setEnabled(uid != BatteryUtils.UID_TETHERING
&& uid != BatteryUtils.UID_REMOVED_APPS);
setUsageSummary(pref, entry);
addedSome = true;
mAppListGroup.addPreference(pref);

View File

@@ -153,13 +153,16 @@ public class BatteryDiffEntry {
case ConvertUtils.CONSUMER_TYPE_SYSTEM_BATTERY:
return true;
case ConvertUtils.CONSUMER_TYPE_UID_BATTERY:
if (mBatteryHistEntry.mIsHidden) {
final int uid = (int) mBatteryHistEntry.mUid;
if (mBatteryHistEntry.mIsHidden
|| uid == BatteryUtils.UID_REMOVED_APPS
|| uid == BatteryUtils.UID_TETHERING) {
return true;
}
final boolean combineSystemComponents =
mContext.getResources().getBoolean(
R.bool.config_battery_combine_system_components);
return combineSystemComponents && isSystemUid((int) mBatteryHistEntry.mUid);
return combineSystemComponents && isSystemUid(uid);
}
return false;
}

View File

@@ -550,6 +550,10 @@ public class BatteryEntry {
Drawable icon = context.getDrawable(R.drawable.ic_power_system);
if (uid == 0) {
name = context.getResources().getString(R.string.process_kernel_label);
} else if (uid == BatteryUtils.UID_REMOVED_APPS) {
name = context.getResources().getString(R.string.process_removed_apps);
} else if (uid == BatteryUtils.UID_TETHERING) {
name = context.getResources().getString(R.string.process_network_tethering);
} else if ("mediaserver".equals(name)) {
name = context.getResources().getString(R.string.process_mediaserver_label);
} else if ("dex2oat".equals(name) || "dex2oat32".equals(name) ||

View File

@@ -65,6 +65,10 @@ import java.util.List;
public class BatteryUtils {
public static final int UID_NULL = -1;
public static final int SDK_NULL = -1;
/** Special UID value for data usage by removed apps. */
public static final int UID_REMOVED_APPS = -4;
/** Special UID value for data usage by tethering. */
public static final int UID_TETHERING = -5;
@Retention(RetentionPolicy.SOURCE)
@IntDef({StatusType.SCREEN_USAGE,
@@ -188,7 +192,10 @@ public class BatteryUtils {
*/
boolean shouldHideUidBatteryConsumerUnconditionally(UidBatteryConsumer consumer,
String[] packages) {
return consumer.getUid() < 0 || isHiddenSystemModule(packages);
final int uid = consumer.getUid();
return uid == UID_TETHERING
? false
: uid < 0 || isHiddenSystemModule(packages);
}
/**