使用百度地圖定位官網有詳細的demo。個人根據這個demo做了小改到,當即看到了結果。
第二天去單位上班,一打開,發現居然定位到了非洲西海岸。
晚上回到家,調了一下,發現BDLocation的getLocType返回值是一直是167。
不小心打開wifi,再定位又可以定到位了。
百思不得其解,又詳細看了看http://developer.baidu.com/map/index.php?title=android-locsdk/guide/v4-2的說明。
發現,自己的部分權限沒有全部加入。少加了
這個權限用於進行網絡定位–>
百度定位,默認首先使用GPS定位,然後是WIFI定位,最後基站定位。並且,百度地圖定位SDK會根據環境自動調整定位策略。
而不開wifi又沒有網絡定位和gps定位權限。所以定位失敗。
demo裏面權限使用沒有很好的註釋,本着少開權限的原則,沒有全部開。所以導致了今天的問題。
還有別的原因導致以上問題,這只是個人記錄。