返回顶部

收藏

启动APK的默认Activity

更多
    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);
            }
        }

标签:java

收藏

0人收藏

支持

0

反对

0

相关聚客文章
  1. hollischuang 发表 2018-07-01 07:47:16 密码保护:再有人问你Java内存模型是什么,就把这篇文章发给他。
  2. puefu.he 发表 2018-07-01 14:48:54 网易云歌词爬取(java)
  3. xubiao.zhuang 发表 2018-07-01 15:19:30 go-学习笔记
  4. lishirong 发表 2012-09-21 01:59:37 用mapXtreme Java开发web gis应用
  5. 博主 发表 2018-06-29 08:52:18 Java中的assert断言
  6. 博主 发表 2018-06-29 12:02:38 谈谈我参加Java认证考试的经历
  7. 炒饭 发表 2015-05-20 02:58:24 在Java中使用AnimatedGifEncoder生成GIF动画
  8. 炒饭 发表 2015-05-23 03:51:23 让Java Swing使用系统默认主题
  9. 炒饭 发表 2016-09-10 03:18:38 Scala对象初始化时访问成员的坑
  10. 炒饭 发表 2017-03-06 03:28:59 如何制作NES模拟器
  11. 炒饭 发表 2017-05-15 16:27:46 Java自带的性能分析工具
  12. 炒饭 发表 2017-08-19 05:53:13 用aspectj实现日志记录

发表评论