【问题标题】:How to close another Activity?如何关闭另一个活动?
【发布时间】:2016-02-15 06:45:46
【问题描述】:

我想制作一个应用来测试其他应用(连接、时间、性能)。 我可以使用此代码打开其他活动:

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setComponent(new ComponentName("com.asdf", "com.asdf.MainActivity"));
startActivity(intent);

但我想在一段时间后自动关闭它。

我试过了:

am.killBackgroundProcesses("com.asdf.MainActivity");

还有:

ActivityManager am = (ActivityManager) getSystemService(Activity.ACTIVITY_SERVICE);
List<ActivityManager.RunningAppProcessInfo> rp = am.getRunningAppProcesses();
ActivityManager.RunningAppProcessInfo process = null;
for(int i=0; i<rp.size(); i++){
    if(rp.get(i).processName.equals("com.asdf")){
        process = rp.get(i);
        break;
    }
}
if(process!=null) {
    android.os.Process.killProcess(process.pid);
}

有可能吗?
是否需要额外的权限?

【问题讨论】:

    标签: java android android-intent android-activity android-studio


    【解决方案1】:

    最简单的方法很可能是在 Intent 中添加以下标志:

    intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
    

    顺便说一句,我得到了来自this question 的信息。那里的最佳答案对这种做事方式进行了更详细的描述,如果这对您不起作用,还有另一种方式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-05-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-19
      • 1970-01-01
      • 2023-02-02
      • 1970-01-01
      相关资源
      最近更新 更多