【问题标题】:How to wait for onLocationChanged() in LocationListener in the same place that invoked requestLocationUpdates()?如何在调用 requestLocationUpdates() 的同一位置等待 LocationListener 中的 onLocationChanged()?
【发布时间】:2012-05-17 07:17:51
【问题描述】:

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

已解决:

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

【问题讨论】:

    标签: android asynchronous wakelock locationlistener commonsware-cwac


    【解决方案1】:

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

    这不会很好。

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

    理想情况下,您不会。 IntentService 旨在使同步的东西(例如,Web 事务、数据库事务)同步。它不是为了让异步的东西更加异步(a-asynchronous?)..

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-28
      • 2017-01-20
      • 1970-01-01
      • 1970-01-01
      • 2013-03-22
      • 1970-01-01
      相关资源
      最近更新 更多