首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >android活动在调用finish()之后继续运行

android活动在调用finish()之后继续运行
EN

Stack Overflow用户
提问于 2019-07-24 13:56:26
回答 4查看 163关注 0票数 0

在启动活动中,我想在调用onStop()时退出应用程序(如果用户单击主页按钮、关闭屏幕或按回退按钮,我希望停止应用程序)。

不幸的是,打电话给finish()并没有帮助,即使在退出应用程序之后,splash活动也会继续工作,甚至开始下一个活动。

我想提到的是,splash.activity内部有一个异步任务类,还有另一个类jsonfetch在splash.activity中(从服务器获取数据,然后再打开下一个活动),我认为这个类不会停止,因为当退出应用程序时,它会在几秒钟后打开下一个活动。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2019-07-24 16:44:04

经过几次测试,我发现System.exit(0);为我解决了这个问题,我希望这个解决方案能帮助任何有同样问题的人。

票数 0
EN

Stack Overflow用户

发布于 2019-07-24 14:01:21

我怀疑你是从你的MainActivity从SplashActivity导航到你的。

尝试将全局变量shouldNavigate添加到SplashActivity中,如果调用onStop(),则将其更改为false;

代码语言:javascript
运行
复制
private boolean shouldNavigate = true

    @Override
    protected void onStop() {
        shouldNavigate = false;
        super.onStop();   
        finish();
    }

然后在导航到您的MainActivity时执行检查:

代码语言:javascript
运行
复制
if (shouldNavigate){
     // navigate to MainActivity
}
票数 0
EN

Stack Overflow用户

发布于 2019-07-24 14:07:53

如果在启动活动中使用倒计时,请在onStop()中停止该操作。会对你有帮助的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57184662

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档