android开发之在一个APP启动另一个APP

来源:互联网 发布:vc界面编程入门 编辑:程序博客网 时间:2024/06/14 21:40
private void openApp(String packageName) {        PackageInfo pi = null;        try {            pi = getActivity().getPackageManager().getPackageInfo(packageName, 0);        } catch (PackageManager.NameNotFoundException e) {            e.printStackTrace();        }        Intent resolveIntent = new Intent(Intent.ACTION_MAIN, null);        resolveIntent.addCategory(Intent.CATEGORY_LAUNCHER);        resolveIntent.setPackage(pi.packageName);        List<ResolveInfo> apps = getActivity().getPackageManager().queryIntentActivities(resolveIntent, 0);        ResolveInfo ri = apps.iterator().next();        if (ri != null ) {            packageName = ri.activityInfo.packageName;            String className = ri.activityInfo.name;            Intent intent = new Intent(Intent.ACTION_MAIN);            intent.addCategory(Intent.CATEGORY_LAUNCHER);            ComponentName cn = new ComponentName(packageName, className);            intent.setComponent(cn);            startActivity(intent);        }    }


直接调用方法,输入要启动的应用的包名就Ok

0 0
原创粉丝点击