我正在创建一个必须连续运行的应用程序,直到用户单击停止按钮。该服务所做的是,如果通过使用 GPS 获取当前的纬度和经度并上传到服务器。但是当我让应用程序长时间运行时,服务会停止上传数据。谁能告诉我如何保持服务持续运行,直到用户按下停止按钮?请给我一个解决这个问题的方法。
谢谢。
我正在创建一个必须连续运行的应用程序,直到用户单击停止按钮。该服务所做的是,如果通过使用 GPS 获取当前的纬度和经度并上传到服务器。但是当我让应用程序长时间运行时,服务会停止上传数据。谁能告诉我如何保持服务持续运行,直到用户按下停止按钮?请给我一个解决这个问题的方法。
谢谢。
我有同样的要求,这是我正在使用的解决方案,
类:AlarmManager
&TimerTask
逻辑,
这就像魅力一样。
您有兴趣使您的服务具有粘性。
当 Android 内存不足时,它将停止您的服务,以便它可以继续工作。如果您为您的服务设置了粘性标志,那么一旦有足够的资源可用,就会重新创建该服务。
您可以像这样使服务具有粘性:
public class YourService extends Service {
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
// We want this service to continue running until it is explicitly
// stopped, so return sticky.
return START_STICKY;
}
...
}