启动其他应用通用代码:

        Intent intent = new Intent(Intent.ACTION_MAIN);        intent.addCategory(Intent.CATEGORY_LAUNCHER);        ComponentName cn = new ComponentName("packageName", "className");        intent.setComponent(cn);        startActivity(intent);

想要知道一个apk的包名和启动类名,cmd调用sdk/build-tools下的aapt.exe,输入aapt dump badging xxx.apk

关注package:name='com.tencent.qqmusic'

launchable-activity:name='com.tencent.qqmusic.activity.AppStarterActivity'

这个就是包名和他的启动类名。

更多获取方式:http://blog.csdn.net/a7779486/article/details/52277554


只知道包名,不知道启动类的获取方法

private void doStartApplicationWithPackageName(String packagename) {        // 通过包名获取此APP详细信息,包括Activities、services、versioncode、name等等      PackageInfo packageinfo = null;      try {          packageinfo = getPackageManager().getPackageInfo(packagename, 0);      } catch (NameNotFoundException e) {          e.printStackTrace();      }      if (packageinfo == null) {          return;      }        // 创建一个类别为CATEGORY_LAUNCHER的该包名的Intent      Intent resolveIntent = new Intent(Intent.ACTION_MAIN, null);      resolveIntent.addCategory(Intent.CATEGORY_LAUNCHER);      resolveIntent.setPackage(packageinfo.packageName);        // 通过getPackageManager()的queryIntentActivities方法遍历      List resolveinfoList = getPackageManager()              .queryIntentActivities(resolveIntent, 0);        ResolveInfo resolveinfo = resolveinfoList.iterator().next();      if (resolveinfo != null) {          // packagename = 参数packname          String packageName = resolveinfo.activityInfo.packageName;          // 这个就是我们要找的该APP的LAUNCHER的Activity[组织形式:packagename.mainActivityname]          String className = resolveinfo.activityInfo.name;          // LAUNCHER Intent          Intent intent = new Intent(Intent.ACTION_MAIN);          intent.addCategory(Intent.CATEGORY_LAUNCHER);            // 设置ComponentName参数1:packagename参数2:MainActivity路径          ComponentName cn = new ComponentName(packageName, className);            intent.setComponent(cn);          startActivity(intent);      }  }  

更多相关文章

  1. Android(安卓)获取手机信息
  2. Android中Bitmap、Drawable、byte[…
  3. android的全屏和屏幕高宽的获取
  4. Android获取屏幕宽和高
  5. Google用户登录界面 Android实现
  6. 管理android 键盘自动弹出 关闭
  7. mybatisplus的坑 insert标签insert into select无参数问题的解决
  8. Python技巧匿名函数、回调函数和高阶函数
  9. python list.sort()根据多个关键字排序的方法实现

随机推荐

  1. 用android LinearLayout和RelativeLayout
  2. 《Effieicntt Android Threading》 Chapt
  3. Webview实现android简单的浏览器实例代码
  4. 关于Android中的消息机制和异步
  5. Android 打造任意层级树形控件 考验你的
  6. 如何将Android应用发布到Google Play(Andr
  7. android缩放大图片加载
  8. android 判断横竖屏问题的详解
  9. Android 27+ 限制App所有未加密的http连
  10. Android实现伸缩弹力分布菜单效果