我有一个 android 应用程序需要确定其当前位置(使用 Google Play 服务 LocationClient),然后将该位置发送回服务器。这需要在后台定期发生,例如每 5 分钟
此代码运行良好,它通常每 5 分钟在几秒钟的容限内提供一次位置。当android无法修复时会出现问题。在这些情况下,我希望回调在 5 分钟后使用 NULL 位置对象运行,但是这不会发生。应用程序只是继续寻找位置而不调用回调。
我使用如下创建的 locationRequest 对象调用 LocationClient 的 requestLocationUpdates 方法
locationrequest = LocationRequest.create();
locationrequest.setInterval(5 * 60 * 1000);
locationrequest.setFastestInterval(3 * 60 * 1000);
locationrequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
locationrequest.setExpirationDuration(45 *1000);
locationclient.requestLocationUpdates(locationrequest, mPendingIntent);
我看不到让 LocationClient 每 5 分钟呼叫我一次的合适方法,即使它无法获取位置也是如此。我很感激我可以每 5 分钟发出一次警报,然后将最近的位置发送回服务器,但我希望在回调中处理发送。
有没有其他人不得不处理这种情况,或者知道如何解决它?