Android编程方式启动包

时间:2014-07-09 20:32:24

标签: android

我从平板电脑(Samsung galaxy tab 2)获得了包装清单。我试图用它启动它们。 “url”是包名,如com.sec.android.app.camera

PackageManager pm = getPackageManager(); Intent intent = pm.getLaunchIntentForPackage(url); startActivity(intent);

它仅适用于某些套餐。相机,浏览器工作但数字时钟和整个批次不启动。为什么?

我的目标是推出“任务经理”或“主动任务”。这可能吗?我也无法找到包装名称。

谢谢,

1 个答案:

答案 0 :(得分:0)

我使用以下位依次启动设备上安装的所有应用程序。 Android上的某些应用程序具有相同的程序包名称,除非您提出请求,否则不会返回meta信息。

public void onStart() {
    super.onStart();
    final PackageManager pm = getPackageManager();
    //get a list of installed applications.
    List<ApplicationInfo> packages = pm
                    .getInstalledApplications(PackageManager.GET_META_DATA);
          for (ApplicationInfo packageInfo : packages) {
              Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage(packageInfo.packageName);

             if(LaunchIntent != null) {
               startActivity( LaunchIntent );
             }
          }
  }

Here's获取正在运行的应用列表的方法:

ActivityManager actvityManager = (ActivityManager)
this.getSystemService( ACTIVITY_SERVICE );
List<RunningAppProcessInfo> procInfos = actvityManager.getRunningAppProcesses();