2012-01-30 47 views
1

這是一個與「常規」使用GPS完全相反的問題。我們的目標是讓gps在存在的衆多設備上以非常精確的速率(當可用時)讀取或「修復」。因此,直到現在我相信例如GPS定時問題

lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 2000, 1f, this); 

會爲我照顧這個。但是,當在Nexus S和Galaxy Nexus上進行測試時,我會得到完全不同的行爲,幾乎相反(一種情況下的讀取間隔最短時間,另一種情況下最長時間)。爲什麼是這樣,以及可以做些什麼來解決它?

回答

0

這是爲什麼

如果你讀the documentation,你會看到minTime參數requestLocationUpdates()「只是作爲一個提示,以節省電力,並且位置更新之間的實際時間可能大於或小於此值「。

可以做些什麼來解決它?

您提出了一個新的設計,不會對GPS修復的可用性和頻率做任何假設。

+0

是的,我還記得讀過類似的東西。事情是,時機直到現在從來都不是真正的問題。我猜想編程需要最少的時間來處理大多數問題,但它並不完全是按照給定的速率。我也很清楚信號被阻塞等問題,所以目前我正在考慮一個理想的情況。想知道在理想條件下從哪裏獲得關於最大時間的信息? – Scalarr 2012-01-31 19:41:34

+0

@Scalar:「在理想條件下,從哪裏獲得關於最大時間的信息的任何想法?」 - 打敗我。這將取決於太多的硬件特定變量恕我直言(例如,芯片組)。你所能做的最好的事情是指定一個'minTime'爲'0',處理每一個修復程序,自己平滑數據速率,並祈禱沒有停車場。 :-) – CommonsWare 2012-01-31 21:01:30

+0

是的,我害怕得到答案;-)雖然! – Scalarr 2012-01-31 22:27:56