 <p>I use this code:</p> <pre><code>public void getDefaultLauncher() { final Intent intent = new Intent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_HOME); PackageManager pm = getPackageManager(); final List&lt;ResolveInfo&gt; list = pm.queryIntentActivities(intent, 0); pm.clearPackagePreferredActivities(getApplicationContext().getPackageName()); for(ResolveInfo ri : list) { if(!ri.activityInfo.packageName.equals(getApplicationContext().getPackageName())) { startSpecificActivity(ri); return; } } } private void startSpecificActivity(ResolveInfo launchable) { ActivityInfo activity=launchable.activityInfo; ComponentName name=new ComponentName(activity.applicationInfo.packageName, activity.name); Intent i=new Intent(Intent.ACTION_MAIN); i.addCategory(Intent.CATEGORY_LAUNCHER); i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED); i.setComponent(name); startActivity(i); } </code></pre> <p>Maybe it works for you as well.</p>