0

我正在寫一個GPS跟蹤應用程序。我使用CommonsWare WakefulIntentService和AlarmReceiver來安排來自GPS的固定位置。問題是,我必須使用doWakefulWork()方法是用於同步阻塞進程,我所擁有的是一個異步非阻塞方法。那麼我應該如何使用doLakefulWork()方法中的LocationListener和requestLocationUpdates()中的onLocationChanged()修復GPS位置?如何在調用requestLocationUpdates()的同一位置的LocationListener中等待onLocationChanged()?

解決:

我剛剛發現這個功能已經已經LocationPoller實施。

回答

0

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

這將無法正常工作。

那麼應該如何使用doLakefulWork()方法的LocationListener和requestLocationUpdates()中的onLocationChanged()修復GPS位置?

理想情況下,你不會。 IntentService被設計用於使同步的東西(例如,Web事務,數據庫事務)同步。它不是設計用於製造更異步異步的東西(異步?)。

我剛發現這個功能已經在LocationPoller中實現了。

無論您使用LocationPoller,叉,或從它衍生出來的東西,用Service用於本質異步工作方式是一個更好的計劃。

相關問題