启动APK的默认Activity

2018-07-20    来源:open-open

容器云强势上线!快速搭建集群,上万Linux镜像随意使用
    public static void startApkActivity(final Context ctx, String packageName) {
            PackageManager pm = ctx.getPackageManager();
            PackageInfo pi;
            try {
                pi = pm.getPackageInfo(packageName, 0);
                Intent intent = new Intent(Intent.ACTION_MAIN, null);
                intent.addCategory(Intent.CATEGORY_LAUNCHER);
                intent.setPackage(pi.packageName);

                List<ResolveInfo> apps = pm.queryIntentActivities(intent, 0);

                ResolveInfo ri = apps.iterator().next();
                if (ri != null) {
                    String className = ri.activityInfo.name;
                    intent.setComponent(new ComponentName(packageName, className));
                    ctx.startActivity(intent);
                }
            } catch (NameNotFoundException e) {
                Log.e("startActivity", e);
            }
        }

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:Android判断当前应用程序状态是在前台还是后台

下一篇: iOS实现毛玻璃效果,图片模糊效果的三种方法