android怎么在launcher改动内置apk的icon

找到launcher下的IconCache中加入变量用来存储要改动apk的包名 及要改动成的icon

    private String[] className = {"com.google.android.apps.maps","com.google.android.googlequicksearchbox"};
    private int[]  resId = {R.drawable.com_android_google_map,R.drawable.com_android_googlesearch};

在cacheLocked方法中加入例如以下代码


 if (SystemProperties.getBoolean("persist.sys.ts18.sp025",false)) {
            Resources res = mContext.getResources();
            for (int i = 0; i < className.length; i++) {
                if (componentName.getPackageName().equals(className[i])) {
                    entry.icon = BitmapFactory.decodeResource(res,resId[i]);
                } else {
                    entry.icon = Utilities.createIconBitmap(
                            getFullResIcon(info), mContext);
                }
            }
            } else {
                entry.icon = Utilities.createIconBitmap(
                        getFullResIcon(info), mContext);
            }


改动title同理

posted @ 2015-12-19 10:34  mengfanrong  阅读(450)  评论(0编辑  收藏  举报