我有一个singleTop活动(ActivityB),它由前一个活动(ActivityA)放置的数据对象(Bundle mData = getIntent().getExtras()
)调用。 ActivityB在后台执行一些操作,并向用户显示进度条。完成后,我调用了需要来自ActivityB的数据对象(mData)的下一个活动(ActivityC)。
问题:当ActivityB执行某些操作时,用户可以通过从任务管理器中轻扫来关闭应用。用户再次启动应用程序后。 ActivityB显示一切正常,但mData丢失,这是ActivityC的一个问题。
如何处理这种情况? SQLite或共享首选项中的持久数据不适合我。
提前致谢!
答案 0 :(得分:0)
这里不是很多,但是......
使用任务管理器轻扫是一个很难的事。 没有回叫,没有通知。
如果可能,请在活动B中跟踪您的处理状态,并定期将数据保存到数据库或文件中。
重新启动时检查处理状态并从文件或数据库恢复数据。
或者,只检测您没有完成处理并在开始时启动活动B.