static List<ResolveInfo> mHome;
String intentStringAppName[];
static String intentString_cls[];
static String intentString_pkg[];
static String intentDefaultString_cls = "com.android.cat.vLauncher";
static String intentDefaultString_pkg = "com.android.cat";
static String intentCustomString_cls = "com.android.launcher2.Launcher";
static String intentCustomString_pkg = "com.android.launcher";
private static void clearDefaultHome(Context context) {
PackageManager pkgMgt = context.getPackageManager();Intent it = new Intent(Intent.ACTION_MAIN);
it.addCategory(Intent.CATEGORY_HOME);
mHome =pkgMgt.queryIntentActivities(it,0);
for(int i=0;i<mHome.size();i++){
ActivityInfo ai = mHome.get(i).activityInfo;
Log.i(TAG,"mzhg ai.applicationInfo.packageName = " + ai.applicationInfo.packageName);
pkgMgt.clearPackagePreferredActivities(intentCustomString_pkg);
}
}
private static void setDefaultHome (Context context,int flag) {
if (mHome == null) {
PackageManager pkgMgt = context.getPackageManager();
Intent it = new Intent(Intent.ACTION_MAIN);
it.addCategory(Intent.CATEGORY_HOME);
mHome =pkgMgt.queryIntentActivities(it,0);
}
IntentFilter intentfilter = new IntentFilter();
PackageManager packagemanager = context.getPackageManager();
intentfilter.addAction("android.intent.action.MAIN");
intentfilter.addCategory("android.intent.category.HOME");
intentfilter.addCategory("android.intent.category.DEFAULT");
ComponentName componentname = new ComponentName(intentDefaultString_pkg, intentDefaultString_cls);
ComponentName acomponentname[] = new ComponentName[intentString_pkg.length];
if (flag == 0) {
componentname = new ComponentName(intentCustomString_pkg, intentCustomString_cls);
}
packagemanager.addPreferredActivity(intentfilter, IntentFilter.MATCH_CATEGORY_EMPTY, acomponentname, componentname);
}