开发者社区 问答 正文

关于两个进程之间的调用和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掉啊 一点反应都没

展开
收起
蛮大人123 2016-03-10 14:37:43 2008 分享 版权
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

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

    2019-07-17 18:57:39
    赞同 展开评论
问答地址: