2013-03-18 118 views
0

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

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

但是,如果数据不是因为某些网络问题发送约10分钟。从n/w问题恢复后,它不会继续发送。

这是为什么?如果它没有任何关系,活动会在某个时间后停止吗?

+4

使用服务将数据发送到服务器。在后台运行。 http://developer.android.com/guide/components/services.html。检查意向服务。 – Raghunandan 2013-03-18 08:53:16

+0

感谢您的回复。 – user2082987 2013-03-18 09:22:24

回答

1

查看documentation。此方法只是将您的活动移动到活动堆栈的后面,它仍然处于暂停状态,因此 - 符合OS定稿的条件。您的活动可能会被破坏。

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

2

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