使用自定义启动器向应用程序图标添加叠加层

Add an overlay to app icon with custom launcher

我使用以下代码来实现我自己的自定义启动器:

https://github.com/fookwood/Launcher3

我的目标是将位图或 PNG 文件设置为普通应用程序图标上方的叠加层。但是我找不到 google 最初在 "All Apps View" 中设置应用程序图标的区域。有人知道具体在哪里看吗?

已经自己找到了。对于所有想知道它的人。有一个 class 叫做 IconCache.Java。

/**
 * Fill in "application" with the icon and label for "info."
 */
public synchronized void getTitleAndIcon(AppInfo application, LauncherActivityInfoCompat info,
        HashMap<Object, CharSequence> labelCache) {
    CacheEntry entry = cacheLocked(application.componentName, info, labelCache,
            info.getUser(), false);

    application.title = entry.title;
    application.iconBitmap = overlay(entry.icon,BitmapFactory.decodeResource(mContext.getResources(), R.drawable.overlay_green));
    //application.iconBitmap = entry.icon;
    application.contentDescription = entry.contentDescription;
}