0

我有一个简单的启动器,列出所有的应用程序列表视图。我只想在这个启动器中使用一个功能;当点击列表视图中的某个项目(如第5项)时,我想完全杀掉所有以前打开的应用程序,然后打开第5个应用程序。我不知道我应该寻找什么。我有作为设备管理员和设备所有者的启动器应用程序,我认为它与DevicePolicyManager类有关。我也尝试finishActivity(int requestcode),但它没有工作。下面是onItemClick()监听器:创建启动器,杀死所有以前打开的应用程序

list.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
      @Override 
      public void onItemClick(AdapterView<?> av, View v, int pos,long id) { 
       Intent i = manager.getLaunchIntentForPackage(apps.get(pos).name.toString()); 
       AppsListActivity.this.startActivity(i); 

      } 
     }); 
+0

我不认为你的非系统应用可以杀死其他应用。 –

+0

但是这个非系统应用(启动器)也是设备所有者应用和设备管理员。从这里,它不能决定其他应用程序的功能吗? –

回答

0

背后,为什么你想开始下一个应用程序的活动将帮助之前杀死之前打开的应用程序多一点背景。如果我理解正确,那永远只会有一个应用程序被杀,因为只有一个应用程序总是在运行,对吧?

如果您不需要完全杀死应用程序,那么暂停所有包setPackagesSuspended(如果您运行的是API 24或更高版本)除了选定的程序包,当然还有启动程序,将会更加优雅。暂停的套餐将无法启动活动。它的通知将被隐藏,它不会显示在最近的内容中,也不会显示吐司或对话框或者打开设备。如果您担心资源,是否有理由不相信Android管理资源并在需要时终止进程?

相关问题