I am able to reset the default launcher by code with the help of following link How to reset default launcher/home screen replacement?
Now, I want to set my custom launcher as default launcher. But the following code is not working. It crashes
ComponentName componentName = new ComponentName("com.xxx.launcher", "com.xxx.launcher.LauncheActivity");
PackageManager pm = getPackageManager();
int flag = ((pm.getComponentEnabledSetting(componentName) == PackageManager.COMPONENT_ENABLED_STATE_ENABLED) ? PackageManager.COMPONENT_ENABLED_STATE_DISABLED
: PackageManager.COMPONENT_ENABLED_STATE_ENABLED);
pm.setComponentEnabledSetting(componentName, flag, PackageManager.DONT_KILL_APP); //crash at this line..