【问题标题】:What happens when we call finish() in onCreate() method?当我们在 onCreate() 方法中调用 finish() 会发生什么?
【发布时间】:2018-03-29 18:29:55
【问题描述】:

当我们为onCreate() 中的活动调用finish() 方法时会发生什么? 应用程序是否有时间显示Activity,但随后会迅速关闭,或者它不会显示任何内容? 这只是我在阅读有关据称使用此想法的一些针对 android 的恶意软件服务之前的疑问......它有效吗?

【问题讨论】:

  • 你为什么不试试...?
  • 你试过了吗?发生了什么?
  • @Ben Kane 手头没有电脑来测试它,也不会很快有,但有疑问所以我问

标签: java android oncreate activity-finish


【解决方案1】:

我刚刚对其进行了测试和调试,Activity 启动但在生成事件后立即关闭。

【讨论】:

  • 谢谢!所以你的活动打开,显示,然后迅速关闭......这就是我想知道的,非常感谢
  • 如果对你有帮助,你可以用支票标记我的答案(正确)@EduardoBrito
  • 肯定会启动因为onCreate() 已经启动了。这并不意味着显示任何内容。如果调用了onStart()onResume(),并且由于竞争条件,行为是可预测的还是不稳定的,问题应该更具体。
【解决方案2】:

正如 MrMins 所说,它将迅速关闭。生命周期将跳过一些重要步骤,从而导致潜在问题。

但要回答你的问题,它只会暂时运行。

这里是生命周期的android文档:https://developer.android.com/guide/components/activities/activity-lifecycle.html

【讨论】:

  • 是的。可能会跳过 OnStart、OnResume、OnPause 和 OnStop 等生命周期事件,这可能会导致依赖它们的代码处于无效状态。所以生命周期会直接从 Created do Destroyed 状态开始。
猜你喜欢
  • 2011-08-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多