在此thread中,MSohm說「GPS服務選項不打開或關閉GPS」。這意味着,如果設備有內置GPS接收器,那麼這樣的代碼在BlackBerry上,如果GPS服務選項設置爲位置OFF,則LocationProvider爲空
LocationProvider provider = LocationProvider.getInstance(null);
應該不會返回空無論GPS服務選項。如果我在Curve 8310(4.5.0)和Storm 9530(4.7.0)模擬器(都有內置GPS接收器)上嘗試上面的代碼,那麼我會得到null如果GPS服務選項設置爲位置OFF。如果我將GPS服務選項更改爲位置ON,那麼我得到一個非null LocationProvider,然後我可以獲得定位等。
這是模擬器的錯誤嗎?任何人都可以說如何在真實設備上工作?
UPDATE:
我剛剛得到真實設備(暴雨)的測試結果。令人驚訝的是,真實的設備行爲與我在模擬器上的行爲相同。我很困惑。 MSohm說:「GPS服務選項不打開或關閉GPS」,但看起來像是打開/關閉GPS。任何人都可以提出意見嗎?
謝謝,庫羅,爲您的答案。我確實檢查LocationProvider爲null,並提醒用戶轉到設備GPS選項以將位置設置爲ON。這一點與BB論壇管理員MSohm所說的相矛盾,所以我不確定我的結果。現在,看起來我可以信任它。 – 2010-08-18 07:21:54