public ComponentName getComponentName() { return mLauncherActivityInfo.getComponentName(); }
public ComponentName getComponentName() { return mLauncherActivityInfo.getComponentName(); }
public ComponentName getComponentName() { return mLauncherActivityInfo.getComponentName(); }
public ComponentName getComponentName() { return mLauncherActivityInfo.getComponentName(); }
public static Intent makeLaunchIntent(LauncherActivityInfo info) { return new Intent(Intent.ACTION_MAIN) .addCategory(Intent.CATEGORY_LAUNCHER) .setComponent(info.getComponentName()) .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED); }
/** * Returns whether <em>apps</em> contains <em>component</em>. */ private static boolean findActivity(List<LauncherActivityInfo> apps, ComponentName component) { for (LauncherActivityInfo info : apps) { if (info.getComponentName().equals(component)) { return true; } } return false; }
ShortcutConfigActivityInfoVO(LauncherActivityInfo info) { super(info.getComponentName(), info.getUser()); mInfo = info; }
private Drawable getIconFromHandler(LauncherActivityInfo info) { Bitmap bm = mIconsManager.getDrawableIconForPackage(info.getComponentName()); if (bm == null) { return null; } return new BitmapDrawable(mContext.getResources(), LauncherIcons.createIconBitmap(bm, mContext)); } }
public CacheEntry getCacheEntry(LauncherActivityInfo app) { final ComponentKey key = new ComponentKey(app.getComponentName(), app.getUser()); return mCache.get(key); }
public Drawable getIcon(int density, IconPackHelper helper) { if (helper != null && helper.isIconPackLoaded()) { int iconId = helper.getResourceIdForActivityIcon(mLauncherActivityInfo.getComponentName().getPackageName(), mLauncherActivityInfo.getComponentName().getClassName()); if (iconId != 0) { isThemed = true; return helper.getIconPackResources().getDrawableForDensity(iconId, density); } } return mLauncherActivityInfo.getIcon(density); }
@Override public void run() { if (!mAppsToUpdate.isEmpty()) { LauncherActivityInfo app = mAppsToUpdate.pop(); String pkg = app.getComponentName().getPackageName(); PackageInfo info = mPkgInfoMap.get(pkg); addIconToDBAndMemCache(app, info, mUserSerial, true /*replace existing*/); mUpdatedPackages.add(pkg); if (mAppsToUpdate.isEmpty() && !mUpdatedPackages.isEmpty()) { // No more app to update. Notify model. LauncherAppState.getInstance(mContext).getModel().onPackageIconsUpdated( mUpdatedPackages, mUserManager.getUserForSerialNumber(mUserSerial)); } // Let it run one more time. scheduleNext(); } else if (!mAppsToAdd.isEmpty()) { LauncherActivityInfo app = mAppsToAdd.pop(); PackageInfo info = mPkgInfoMap.get(app.getComponentName().getPackageName()); // We do not check the mPkgInfoMap when generating the mAppsToAdd. Although every // app should have package info, this is not guaranteed by the api if (info != null) { addIconToDBAndMemCache(app, info, mUserSerial, false /*replace existing*/); } if (!mAppsToAdd.isEmpty()) { scheduleNext(); } } }
public AppInfo(LauncherActivityInfo info, UserHandle user, boolean quietModeEnabled) { this.componentName = info.getComponentName(); this.container = ItemInfo.NO_ID; this.user = user; if (PackageManagerHelper.isAppSuspended(info.getApplicationInfo())) { isDisabled |= ShortcutInfo.FLAG_DISABLED_SUSPENDED; } if (quietModeEnabled) { isDisabled |= ShortcutInfo.FLAG_DISABLED_QUIET_USER; } intent = makeLaunchIntent(info); }
String packageName = info.getComponentName().getPackageName(); newPackageSet.add(packageName); packagesRemoved.remove(packageName);
info.getComponentName().getPackageName(), user, info.getComponentName().getClassName()); if (applicationInfo == null) { add(new AppInfo(context, info, user), info);
componentMap.put(app.getComponentName(), app);
ComponentName cn = info.getComponentName(); String component = cn.flattenToString(); if (!iconPackChanged && DatabaseHelper.hasApp(Apps.this, component)) {
/** * @return the component name that should be uninstalled or null. */ private static ComponentName getUninstallTarget(Context context, Object item) { Intent intent = null; UserHandle user = null; if (item instanceof AppInfo) { AppInfo info = (AppInfo) item; intent = info.intent; user = info.user; } else if (item instanceof ShortcutInfo) { ShortcutInfo info = (ShortcutInfo) item; if (info.itemType == LauncherSettings.BaseLauncherColumns.ITEM_TYPE_APPLICATION) { // Do not use restore/target intent here as we cannot uninstall an app which is // being installed/restored. intent = info.intent; user = info.user; } } if (intent != null) { LauncherActivityInfo info = LauncherAppsCompat.getInstance(context) .resolveActivity(intent, user); if (info != null && (info.getApplicationInfo().flags & ApplicationInfo.FLAG_SYSTEM) == 0) { return info.getComponentName(); } } return null; }
public void addCustomInfoToDataBase(Drawable icon, ItemInfo info, CharSequence title) { LauncherActivityInfo app = mLauncherApps.resolveActivity(info.getIntent(), info.user); final ComponentKey key = new ComponentKey(app.getComponentName(), app.getUser()); CacheEntry entry = mCache.get(key); PackageInfo packageInfo = null; try { packageInfo = mPackageManager.getPackageInfo( app.getComponentName().getPackageName(), 0); } catch (NameNotFoundException e) { e.printStackTrace(); } // We can't reuse the entry if the high-res icon is not present. if (entry == null || entry.isLowResIcon || entry.icon == null) { entry = new CacheEntry(); } entry.icon = LauncherIcons.createIconBitmap(icon, mContext); entry.title = title != null ? title : app.getLabel(); entry.contentDescription = mUserManager.getBadgedLabelForUser(entry.title, app.getUser()); mCache.put(key, entry); Bitmap lowResIcon = generateLowResIcon(entry.icon, mActivityBgColor); ContentValues values = newContentValues(entry.icon, lowResIcon, entry.title.toString(), app.getApplicationInfo().packageName); if (packageInfo != null) { addIconToDB(values, app.getComponentName(), packageInfo, mUserManager.getSerialNumberForUser(app.getUser())); } }
break; case ROUND_COLORFUL: Bitmap defaultIcon = mIconsManager.getDrawableIconForPackage(info.getComponentName()); Bitmap round = BoardUtils.createRoundIcon(mContext, defaultIcon); iconStyle = new BitmapDrawable(mContext.getResources(), round); ActivityInfo activityInfo = mPackageManager.getActivityInfo(info.getComponentName(), PackageManager.GET_META_DATA | uninstalled); Bundle metaData = activityInfo.metaData;
/** * Adds an entry into the DB and the in-memory cache. * @param replaceExisting if true, it will recreate the bitmap even if it already exists in * the memory. This is useful then the previous bitmap was created using * old data. */ @Thunk private synchronized void addIconToDBAndMemCache(LauncherActivityInfo app, PackageInfo info, long userSerial, boolean replaceExisting) { final ComponentKey key = new ComponentKey(app.getComponentName(), app.getUser()); CacheEntry entry = null; if (!replaceExisting) { entry = mCache.get(key); // We can't reuse the entry if the high-res icon is not present. if (entry == null || entry.isLowResIcon || entry.icon == null) { entry = null; } } if (entry == null) { entry = new CacheEntry(); entry.icon = LauncherIcons.createBadgedIconBitmap(getFullResIcon(app), app.getUser(), mContext, app.getApplicationInfo().targetSdkVersion); } entry.title = app.getLabel(); entry.contentDescription = mUserManager.getBadgedLabelForUser(entry.title, app.getUser()); mCache.put(key, entry); Bitmap lowResIcon = generateLowResIcon(entry.icon, mActivityBgColor); ContentValues values = newContentValues(entry.icon, lowResIcon, entry.title.toString(), app.getApplicationInfo().packageName); addIconToDB(values, app.getComponentName(), info, userSerial); }