0

我正在编写一个 GPS 跟踪应用程序。我正在使用 CommonsWare WakefulIntentService 和 AlarmReceiver 从 GPS 安排固定位置。问题是我必须使用 doWakefulWork() 方法是为了与同步阻塞进程一起使用,而我所拥有的是异步非阻塞方法。那么我应该如何使用 LocationListener 中的 onLocationChanged() 和 doWakefulWork() 方法中的 requestLocationUpdates() 来修复 GPS 位置?

解决了:

我刚刚发现这个功能已经在LocationPoller中实现了。

4

1 回答 1

0

我正在使用 CommonsWare WakefulIntentService 和 AlarmReceiver 从 GPS 安排固定位置。

这不会很好地工作。

那么我应该如何使用 LocationListener 中的 onLocationChanged() 和 doWakefulWork() 方法中的 requestLocationUpdates() 来修复 GPS 位置?

理想情况下,你不会。IntentService设计用于使同步的东西(例如,Web 事务、数据库事务)同步。它不是为使异步的东西更加异步(异步?)而设计的。

我刚刚发现这个功能已经在LocationPoller中实现了。

无论您使用LocationPoller、fork 还是从它派生的东西,使用 aService进行本质上的异步工作是一个更好的计划。

于 2012-05-17T10:01:38.007 回答