0

我对 Android 多任务处理了解不多,但我想我会在尝试我的项目之前问这个问题。

有没有一种方法可以让 Android 应用程序(仅针对 Android 4.0+)始终在后台打开并保持所有网络连接处于活动状态并“绘制”UI,这样当我打开它时,它总是会立即打开并且即使平板电脑正在做其他事情,我也可以立即使用它?

谢谢。

4

3 回答 3

0

最有可能的是,您想创建一个前台服务。前台服务是用户知道的服务,如果 Android 内存不足,则不会将其视为终止的候选者。它与持久通知栏相关联,用户可以点击该通知栏以将活动置于前台。为确保网络连接未关闭,您的服务应获取唤醒锁

但是,请记住,可能会耗尽电池的长时间运行过程被认为是一种不好的做法,除非您有非常充分的理由这样做,否则您应该避免这样做。

于 2012-07-08T08:52:14.777 回答
0

不,Android 不是那样构建的。当操作系统需要更多资源时,它总是可以在后台终止服务/活动。

您可以使始终运行的服务(粘性服务)在由于资源问题而被终止时重新启动,当有资源再次可用时。使用 Activies,您无法做到这一点。但是您的活动可能会“暂停”并仍在后台,因此可以很快“恢复”。但同样,Android 可以很容易地杀死它以获取资源。

于 2012-07-08T08:52:29.597 回答
0

除非您在固件级别修改 Android 并构建自己的版本,否则您无法让应用程序始终在后台运行。当 Android 需要更多资源来运行当前在前台的应用程序时,它会杀死其他应用程序。

但是,可以通过在onPause()中保存数据及其当前状态并在onResume()中恢复相同状态来使您的应用程序更好地处理此问题。

于 2012-07-08T08:52:37.293 回答