关于两个进程之间的调用和kill

apkA 调用了 apkB 然后要在apkA中再kill掉apkB

ComponentName cn=new ComponentName("com.example.text2", "com.example.text2.MainActivity");

            Intent intent=new Intent();
            intent.setComponent(cn);
            startActivity(intent);
            ActivityManager manager = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);   
            manager.killBackgroundProcesses("com.example.text2");
            
            

这样写apkB好像没有被kill掉啊 一点反应都没

阅读 3k
2 个回答

在Android系统中,你可以唤起其他的程序,但是你不能结束其他的程序,也就是说通过 ActivityManager.killBackgroundProcesses() 等正常的API,你只能关闭你自己,关闭其他程序是没有效果的,这是常规的安全考量,如果随便就能结束其他程序,App的权限就太大了。
要实现你这样的效果,最好的方式是 App A 发出一条广播, App B 在收到这条广播后自己结束自己。

没可能,不管你是A kill B还是B kill A,权限都是不够的。应用层没root权限只能是自己kill自己。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题