Add BatteryTipDialogFragment.
This DialogFragment handles all the tip related dialogs. This cl makes:
1. All the tips parcelable.
2. Add dialog for HighUsageTip. It also need adapter to populate app
list in dialog.
3. Add and update tests
Bug: 70570352
Test: RunSettingsRoboTests
Change-Id: Ie4c986172cfc73d8746abc7457d966c8600c6145
diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java
index cd64799..ad95121 100644
--- a/src/com/android/settings/Utils.java
+++ b/src/com/android/settings/Utils.java
@@ -94,6 +94,7 @@
import android.text.format.DateUtils;
import android.text.style.TtsSpan;
import android.util.ArraySet;
+import android.util.IconDrawableFactory;
import android.util.Log;
import android.util.TypedValue;
import android.view.LayoutInflater;
@@ -1382,4 +1383,18 @@
}
return new BitmapDrawable(null, bitmap);
}
+
+ /**
+ * Get the {@link Drawable} that represents the app icon
+ */
+ public static Drawable getBadgedIcon(IconDrawableFactory iconDrawableFactory,
+ PackageManager packageManager, String packageName, int userId) {
+ try {
+ final ApplicationInfo appInfo = packageManager.getApplicationInfo(packageName,
+ PackageManager.GET_META_DATA);
+ return iconDrawableFactory.getBadgedIcon(appInfo, userId);
+ } catch (PackageManager.NameNotFoundException e) {
+ return packageManager.getDefaultActivityIcon();
+ }
+ }
}