0

我正在将一些数据从我的活动发送到服务器。我让它在后台运行,使用:

public void onBackPressed() {
    moveTaskToBack (true);
}

但是,如果由于某些网络问题而没有发送数据大约 10 分钟。从 n/w 问题中恢复后,它不会继续发送。

为什么会这样?如果活动无关紧要,活动是否会在某个时间后停止?

4

2 回答 2

2

您可以简单地启动一个将在后台运行的服务并将您的数据发送到服务器。如果您在活动的主线程中调用它,它可能会挂起您的活动并且无法处理它,因为活动具有生命周期。它可能会结束!启动后台服务并执行其中的所有操作。:)

于 2013-03-18T10:08:54.273 回答
1

查看文档。此方法只是将您的活动移动到活动堆栈的后面,它仍处于暂停状态,因此 - 有资格由操作系统完成。您的活动可能正在被破坏。

如果您希望某个进程在您的活动暂停时继续运行,请使用 Raghunandan 建议的服务,或者如果您需要在数据发送完成后更新 UI,请启动AsyncTask 。

于 2013-03-18T09:00:08.080 回答