我有以下情况
- 我
Thread
从Activity
. - 我按下软后退按钮。就这样,
Activity
被毁了。 - 我再次启动相同的
Activity
。注意,之前启动Thread
的仍在运行。
为了防止在前一个仍在运行时Activity
启动另一个相同的,这就是我正在做的Thread
Thread
- 启动后
Thread
,我会将其存储到静态变量中。因此,下次当我尝试启动同一个线程时,我将通过静态变量检查前一个线程的活跃度。这是一个好习惯吗?克服这个问题的最佳做法是什么?
注意,用户线程持有对Activity
启动它的引用。但是,Activity
当用户按下软后退按钮时,可能会破坏。因此,当我再次启动新 Activity 时,thread
并没有意识到这一点,它仍然指的是 old Activity
。因此,当用户线程尝试访问 old 的任何成员时Activity
,将发生崩溃,因为Activity
已经被销毁。克服这个问题的最佳做法是什么?