gpt4 book ai didi

java - 我可以通过检查主 Activity 的 onPause() 中的 isFinish() 来确定 Android 应用程序完成运行吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:16:46 25 4
gpt4 key购买 nike

我必须在我的应用程序完成运行后清除一些应用程序数据。据我所知,onDestroy() 可能不会被调用。所以我决定检查根 Activity 的 onPause() 中的 isFinishing() == true 是否是这个 Activity 和我的应用程序的其他 Activity 精加工。但我怀疑这个 Activity 是否:

  <activity
android:name="com.test.AuthorizationActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

将成为根 Activity ?这通常是正确的方法吗?

最佳答案

我认为您需要重新考虑您的设计,因为似乎它 isFinishing 只有在对 Activity 调用 finish 时才为真,并且不考虑 Activity 的情况由于内存不足而被销毁。

From the docs :

This can happen either because the activity is finishing (someone called finish() on it, or because the system is temporarily destroying this instance of the activity to save space. You can distinguish between these two scenarios with the isFinishing() method.

对于您的建议,您可以将应用程序的状态数据存储在 static 变量中,这些变量将在您的应用程序进程结束时(最后一个 Activity/服务完成时)被清除。

关于java - 我可以通过检查主 Activity 的 onPause() 中的 isFinish() 来确定 Android 应用程序完成运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15463566/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com