2016-02-29 60 views
-1

我的目标是在我的应用程序中使用纬度和经度。在Google整天搜索后,我找到了两种有效的方法来达到我的目的。哪个地方最好?

我应该使用:

lm.getLastKnownLocation(LocationManager.PASSIVE_PROVIDER) 

或者我应该不是经常检查更新和这些更新存储在一个变量?

 lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 2000, 10, locationListener); 

,并在我的位置监听器我可以存储的纬度和经度每隔两秒钟,所以,每当我需要使用它,我可以使用。哪一个?

每个的好处是什么?我知道第一种方法更经常是空的,所以我应该使用第一种方法,当它不是null时,第二种方法是null?最后的已知位置能否比GPS提供商的更新更准确?

回答

0

尝试使用谷歌的地方FusedApi得到的位置是这样的: -

mylocation = LocationServices.FusedLocationApi.getLastLocation(googleApiClient); 
    if (locationRequest != null) { 
     lat.setText("latitude" + String.valueOf(mylocation.getLatitude())); 
     log.setText("longitude" + String.valueOf(mylocation.getLongitude())); 
    } 

这里指的更多的http://coderzpassion.com/android-location-using-google-play-services/