- private void startAppByPackageName(String packageName){
- PackageInfo pi = null;
- try {
- pi = getPackageManager().getPackageInfo(packageName, 0);
- } catch (NameNotFoundException e) {
- e.printStackTrace();
- }
- Intent resolveIntent = new Intent(Intent.ACTION_MAIN, null);
- resolveIntent.addCategory(Intent.CATEGORY_LAUNCHER);
- resolveIntent.setPackage(pi.packageName);
- List<ResolveInfo> apps = getPackageManager().queryIntentActivities(resolveIntent, 0);
- ResolveInfo ri = apps.iterator().next();
- if (ri != null ) {
- String packageName1 = ri.activityInfo.packageName;
- String className = ri.activityInfo.name;
- Intent intent = new Intent(Intent.ACTION_MAIN);
- intent.addCategory(Intent.CATEGORY_LAUNCHER);
- ComponentName cn = new ComponentName(packageName1, className);
- intent.setComponent(cn);
- startActivity(intent);
- }
- }