manager = (LocationManager)getSystemService(LOCATION_SERVICE); Criteria criteria = new Criteria(); best = manager.getBestProvider(criteria, true); location = manager.getLastKnownLocation(best);
この、bestな位置供給情報の優先づけは、
両方使える状態ONとして、
LocationManager.NETWORK_PROVIDER > LocationManager.GPS_PROVIDER
これだと、「基地局から緯度経度を取得」ということなので、
当然誤差が大きくなるのだが、いつもこの大小関係のまま。
場所や時間で変わるのか。
それとも、海外仕様なのか getBestProvider よ。
日本では、LocationManager.GPS_PROVIDERのみを利用して、
「GPS機能がONでない場合はそれを促す」
のほうがいいように思う。