防止Android应用程序在后台被暂停

时间:2015-09-25 03:44:13

标签: android

我写了一个应用程序,它将在很长一段时间内运行,可能永远不会结束,直到用户停止它。

但我担心,当移动/平板电脑屏幕处于睡眠状态时,应用程序将被暂停,或者用户切换到另一个应用程序,以便我的应用程序长时间运行的任务被暂停。

我该如何预防?

3 个答案:

答案 0 :(得分:0)

您想要的是实施Service

你会问这个行为。

答案 1 :(得分:0)

如果您希望应用程序在后台运行,则可以在此处启动Service。这就是Android中的服务用于 - 在后台运行并进行长时间操作。

您可以使用START_STICKY让您的服务持续运行。

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
handleCommand(intent);
// We want this service to continue running until it is explicitly
// stopped, so return sticky.
return START_STICKY;
}

并看到这一点:http://developer.android.com/reference/android/app/Service.html#ProcessLifecycle
这是后台服务的一个例子: http://marakana.com/forums/android/examples/60.html

答案 2 :(得分:0)

您应该使用Service并在START_STICKY上返回onStartCommand(),以便系统不会终止您的应用。即使终止,服务也会自动重启。