如果它是一个系统应用程序(即图库应用程序),我如何调用活动名称

时间:2016-03-22 09:38:51

标签: android gallery onbackpressed android-homebutton

我搜索了很多,但我找不到答案,所以我想我应该在这里发帖。

问题

我的应用程序适用于由图库应用程序共享的图像(即默认图库应用程序),并且其工作正常。但是我想重写OnBackPress()方法以检查是否按下了后退按钮,如果按下了后退按钮,那么我只想获取调用活动名称并想要杀死该活动并返回家中。

如果我从我的活动中调用另一个活动,我可以这样做但如果它是一个系统应用程序,如何获得调用活动名称。 (即画廊申请)

请记住,我的应用程序在我从图库应用程序共享图像时调用,所以基本上我想要图库活动来杀死它并且可以安全地回家。 我不想回到画廊应用程序。

我想回到家里杀死那个画廊应用而不是回到画廊应用。

这里是 OnBackPressed()方法

@Override
public void onBackPressed() {
    // do something on back.

    // what i tried so far but it is not working
    this.getParent().finish();
    this.finish();
}

我厌倦了这一点,希望我可以安全地回家,但仍然在后台运行应用程序。我也想杀掉调用app。

public void onBackPressed() {
    moveTaskToBack(true);
}

1 个答案:

答案 0 :(得分:0)

也许是这样的:

this.getParent().finish();
this.finish();

如果这不起作用,您可以尝试在打开此显式活动之前在意图中添加过滤器:

intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);