Fix incorrect usage for the logging method to cause no data in WW

Fix incorrect usage for the logging method to cause the schedule type
and percentage data is not logged  into the WW, since
MetricsFeatureProvider doesn't support log Pair.of() data into the
WestWorld or Clearcut directly, it is used for EventLogWriter only

Bug: 202906853
Test: make SettingsRoboTests
Change-Id: I9f1d157c77df9bd74f441105318790a2505a9c01
This commit is contained in:
ykhung
2021-11-10 10:28:26 +08:00
parent 64e49a9393
commit 101dc6878a
4 changed files with 31 additions and 36 deletions

View File

@@ -29,7 +29,6 @@ import android.os.UserHandle;
import android.text.TextUtils; import android.text.TextUtils;
import android.text.format.DateUtils; import android.text.format.DateUtils;
import android.util.Log; import android.util.Log;
import android.util.Pair;
import android.view.View; import android.view.View;
import androidx.annotation.VisibleForTesting; import androidx.annotation.VisibleForTesting;
@@ -87,6 +86,7 @@ public class AdvancedPowerUsageDetail extends DashboardFragment implements
private static final String KEY_PREF_OPTIMIZED = "optimized_pref"; private static final String KEY_PREF_OPTIMIZED = "optimized_pref";
private static final String KEY_PREF_RESTRICTED = "restricted_pref"; private static final String KEY_PREF_RESTRICTED = "restricted_pref";
private static final String KEY_FOOTER_PREFERENCE = "app_usage_footer_preference"; private static final String KEY_FOOTER_PREFERENCE = "app_usage_footer_preference";
private static final String PACKAGE_NAME_NONE = "none";
private static final int REQUEST_UNINSTALL = 0; private static final int REQUEST_UNINSTALL = 0;
private static final int REQUEST_REMOVE_DEVICE_ADMIN = 1; private static final int REQUEST_REMOVE_DEVICE_ADMIN = 1;
@@ -484,14 +484,14 @@ public class AdvancedPowerUsageDetail extends DashboardFragment implements
} }
if (metricCategory != 0) { if (metricCategory != 0) {
final String packageName = mBatteryOptimizeUtils.getPackageName();
FeatureFactory.getFactory(getContext()).getMetricsFeatureProvider() FeatureFactory.getFactory(getContext()).getMetricsFeatureProvider()
.action( .action(
getContext(), /* attribution */ SettingsEnums.OPEN_APP_BATTERY_USAGE,
metricCategory, /* action */ metricCategory,
new Pair(ConvertUtils.METRIC_KEY_PACKAGE, /* pageId */ SettingsEnums.OPEN_APP_BATTERY_USAGE,
mBatteryOptimizeUtils.getPackageName()), TextUtils.isEmpty(packageName) ? PACKAGE_NAME_NONE : packageName,
new Pair(ConvertUtils.METRIC_KEY_BATTERY_USAGE, getArguments().getInt(EXTRA_POWER_USAGE_AMOUNT));
getArguments().getString(EXTRA_POWER_USAGE_PERCENT)));
} }
} }

View File

@@ -28,7 +28,6 @@ import android.text.TextUtils;
import android.text.format.DateFormat; import android.text.format.DateFormat;
import android.text.format.DateUtils; import android.text.format.DateUtils;
import android.util.Log; import android.util.Log;
import android.util.Pair;
import androidx.annotation.VisibleForTesting; import androidx.annotation.VisibleForTesting;
import androidx.preference.Preference; import androidx.preference.Preference;
@@ -65,6 +64,7 @@ public class BatteryChartPreferenceController extends AbstractPreferenceControll
ExpandDividerPreference.OnExpandListener { ExpandDividerPreference.OnExpandListener {
private static final String TAG = "BatteryChartPreferenceController"; private static final String TAG = "BatteryChartPreferenceController";
private static final String KEY_FOOTER_PREF = "battery_graph_footer"; private static final String KEY_FOOTER_PREF = "battery_graph_footer";
private static final String PACKAGE_NAME_NONE = "none";
/** Desired battery history size for timestamp slots. */ /** Desired battery history size for timestamp slots. */
public static final int DESIRED_HISTORY_SIZE = 25; public static final int DESIRED_HISTORY_SIZE = 25;
@@ -223,13 +223,13 @@ public class BatteryChartPreferenceController extends AbstractPreferenceControll
final String packageName = histEntry.mPackageName; final String packageName = histEntry.mPackageName;
final boolean isAppEntry = histEntry.isAppEntry(); final boolean isAppEntry = histEntry.isAppEntry();
mMetricsFeatureProvider.action( mMetricsFeatureProvider.action(
mPrefContext, /* attribution */ SettingsEnums.OPEN_BATTERY_USAGE,
isAppEntry /* action */ isAppEntry
? SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM ? SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM
: SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM, : SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM,
new Pair(ConvertUtils.METRIC_KEY_PACKAGE, packageName), /* pageId */ SettingsEnums.OPEN_BATTERY_USAGE,
new Pair(ConvertUtils.METRIC_KEY_BATTERY_LEVEL, histEntry.mBatteryLevel), TextUtils.isEmpty(packageName) ? PACKAGE_NAME_NONE : packageName,
new Pair(ConvertUtils.METRIC_KEY_BATTERY_USAGE, powerPref.getPercent())); (int) Math.round(diffEntry.getPercentOfTotal()));
Log.d(TAG, String.format("handleClick() label=%s key=%s package=%s", Log.d(TAG, String.format("handleClick() label=%s key=%s package=%s",
diffEntry.getAppLabel(), histEntry.getKey(), histEntry.mPackageName)); diffEntry.getAppLabel(), histEntry.getKey(), histEntry.mPackageName));
AdvancedPowerUsageDetail.startBatteryDetailPage( AdvancedPowerUsageDetail.startBatteryDetailPage(

View File

@@ -806,12 +806,11 @@ public class AdvancedPowerUsageDetailTest {
verify(mMetricsFeatureProvider) verify(mMetricsFeatureProvider)
.action( .action(
mContext, SettingsEnums.OPEN_APP_BATTERY_USAGE,
SettingsEnums.ACTION_APP_BATTERY_USAGE_OPTIMIZED, SettingsEnums.ACTION_APP_BATTERY_USAGE_OPTIMIZED,
(Pair<Integer, Object>[]) new Pair[] { SettingsEnums.OPEN_APP_BATTERY_USAGE,
new Pair(ConvertUtils.METRIC_KEY_PACKAGE, null), /* package name*/ "none",
new Pair(ConvertUtils.METRIC_KEY_BATTERY_USAGE, "app label") /* consumed battery */ 0);
});
} }
@Test @Test

View File

@@ -344,13 +344,11 @@ public final class BatteryChartPreferenceControllerTest {
mPowerGaugePreference)).isTrue(); mPowerGaugePreference)).isTrue();
verify(mMetricsFeatureProvider) verify(mMetricsFeatureProvider)
.action( .action(
mContext, SettingsEnums.OPEN_BATTERY_USAGE,
SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM, SettingsEnums.ACTION_BATTERY_USAGE_SYSTEM_ITEM,
(Pair<Integer, Object>[]) new Pair[] { SettingsEnums.OPEN_BATTERY_USAGE,
new Pair(ConvertUtils.METRIC_KEY_PACKAGE, null), /* package name */ "none",
new Pair(ConvertUtils.METRIC_KEY_BATTERY_LEVEL, 0), /* percentage of total */ 0);
new Pair(ConvertUtils.METRIC_KEY_BATTERY_USAGE, null)
});
} }
@Test @Test
@@ -363,13 +361,11 @@ public final class BatteryChartPreferenceControllerTest {
mPowerGaugePreference)).isTrue(); mPowerGaugePreference)).isTrue();
verify(mMetricsFeatureProvider) verify(mMetricsFeatureProvider)
.action( .action(
mContext, SettingsEnums.OPEN_BATTERY_USAGE,
SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM, SettingsEnums.ACTION_BATTERY_USAGE_APP_ITEM,
(Pair<Integer, Object>[]) new Pair[] { SettingsEnums.OPEN_BATTERY_USAGE,
new Pair(ConvertUtils.METRIC_KEY_PACKAGE, null), /* package name */ "none",
new Pair(ConvertUtils.METRIC_KEY_BATTERY_LEVEL, 0), /* percentage of total */ 0);
new Pair(ConvertUtils.METRIC_KEY_BATTERY_USAGE, null)
});
} }
@Test @Test