summaryrefslogtreecommitdiffstats
path: root/src/com/android/packageinstaller/PackageUtil.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/packageinstaller/PackageUtil.java')
-rw-r--r--src/com/android/packageinstaller/PackageUtil.java57
1 files changed, 38 insertions, 19 deletions
diff --git a/src/com/android/packageinstaller/PackageUtil.java b/src/com/android/packageinstaller/PackageUtil.java
index 3d40f7de..45c42890 100644
--- a/src/com/android/packageinstaller/PackageUtil.java
+++ b/src/com/android/packageinstaller/PackageUtil.java
@@ -115,9 +115,44 @@ public class PackageUtil {
* @param appInfo ApplicationInfo object of package whose resources are to be loaded
* @param snippetId view id of app snippet view
*/
- public static View initSnippetForNewApp(Activity pContext, ApplicationInfo appInfo,
- int snippetId, Uri packageURI) {
+ public static View initSnippetForNewApp(Activity pContext, AppSnippet as,
+ int snippetId) {
View appSnippet = pContext.findViewById(snippetId);
+ ((ImageView)appSnippet.findViewById(R.id.app_icon)).setImageDrawable(as.icon);
+ ((TextView)appSnippet.findViewById(R.id.app_name)).setText(as.label);
+ return appSnippet;
+ }
+
+ public static boolean isPackageAlreadyInstalled(Activity context, String pkgName) {
+ List<PackageInfo> installedList = context.getPackageManager().getInstalledPackages(
+ PackageManager.GET_UNINSTALLED_PACKAGES);
+ int installedListSize = installedList.size();
+ for(int i = 0; i < installedListSize; i++) {
+ PackageInfo tmp = installedList.get(i);
+ if(pkgName.equalsIgnoreCase(tmp.packageName)) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ static public class AppSnippet {
+ CharSequence label;
+ Drawable icon;
+ public AppSnippet(CharSequence label, Drawable icon) {
+ this.label = label;
+ this.icon = icon;
+ }
+ }
+ /*
+ * Utility method to load application label
+ *
+ * @param pContext context of package that can load the resources
+ * @param appInfo ApplicationInfo object of package whose resources are to be loaded
+ * @param snippetId view id of app snippet view
+ */
+ public static AppSnippet getAppSnippet(Activity pContext, ApplicationInfo appInfo,
+ Uri packageURI) {
final String archiveFilePath = packageURI.getPath();
Resources pRes = pContext.getResources();
AssetManager assmgr = new AssetManager();
@@ -148,22 +183,6 @@ public class PackageUtil {
if (icon == null) {
icon = pContext.getPackageManager().getDefaultActivityIcon();
}
- ((ImageView)appSnippet.findViewById(R.id.app_icon)).setImageDrawable(icon);
- ((TextView)appSnippet.findViewById(R.id.app_name)).setText(label);
- return appSnippet;
- }
-
- public static boolean isPackageAlreadyInstalled(Activity context, String pkgName) {
- List<PackageInfo> installedList = context.getPackageManager().getInstalledPackages(
- PackageManager.GET_UNINSTALLED_PACKAGES);
- int installedListSize = installedList.size();
- for(int i = 0; i < installedListSize; i++) {
- PackageInfo tmp = installedList.get(i);
- if(pkgName.equalsIgnoreCase(tmp.packageName)) {
- return true;
- }
-
- }
- return false;
+ return new PackageUtil.AppSnippet(label, icon);
}
}