如何在android2.3.3中获取当前的纬度和经度?
我尝试跟随this,但我无法运行程序.
我的代码
LatVIEw = (TextVIEw)findVIEwByID(R.ID.LatText); LngVIEw = (TextVIEw)findVIEwByID(R.ID.LngText); LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE); Location location = lm.getLastKNownLocation(LocationManager.GPS_PROVIDER); double longitude = location.getLongitude(); double latitude = location.getLatitude();
在androID清单中我把它.
<uses-permission androID:name="androID.permission.INTERNET" /> <uses-permission androID:name="androID.permission.ACCESS_COARSE_LOCATION" /><uses-permission androID:name="androID.permission.ACCESS_FINE_LOCATION" />
请帮忙.
谢谢.
解决方法:
这是我在我的应用程序中找到设备当前位置,它工作正常:
public class MyLocationActivity extends Activity implements LocationListener { private LocationManager mgr; private String best; public static double myLocationLatitude; public static double myLocationLongitude; @OverrIDe public voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mgr = (LocationManager) getSystemService(LOCATION_SERVICE); dumpProvIDers(); Criteria criteria = new Criteria(); best = mgr.getBestProvIDer(criteria, true); Log.d("best provIDer", best); Location location = mgr.getLastKNownLocation(best); dumpLocation(location); //may be some intent here } public voID onLocationChanged(Location location) { // Todo auto-generated method stub dumpLocation(location); } public voID onProvIDerDisabled(String provIDer) { // Todo auto-generated method stub } public voID onProvIDerEnabled(String provIDer) { // Todo auto-generated method stub } public voID onStatusChanged(String provIDer, int status, Bundle extras) { // Todo auto-generated method stub } @OverrIDe protected voID onPause() { super.onPause(); mgr.removeUpdates(this); } @OverrIDe protected voID onResume() { super.onResume(); mgr.requestLocationUpdates(best, 15000, 1, this); } private voID dumpLocation(Location l) { if (l == null) { myLocationLatitude = 0.0; myLocationLongitude = 0.0; } else { myLocationLatitude = l.getLatitude(); myLocationLongitude = l.getLongitude(); } } private voID dumpProvIDers() { List<String> provIDers = mgr.getAllProvIDers(); for (String p : provIDers) { dumpProvIDers(p); } } private voID dumpProvIDers(String s) { LocationProvIDer info = mgr.getProvIDer(s); StringBuilder builder = new StringBuilder(); builder.append("name: ").append(info.getname()); }}
这里MyLocationLatitude和MyLocationLongitude给出了你需要的lat和long的值.
总结以上是内存溢出为你收集整理的如何在Android中获取纬度和经度?全部内容,希望文章能够帮你解决如何在Android中获取纬度和经度?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)