如何获取android移动设备的当前位置的经度和纬度? [英] how to get the current location latitude and longitude of android mobile device?

查看:863
本文介绍了如何获取android移动设备的当前位置的经度和纬度?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经实现了用于获取当前位置经度的示例应用程序.如果我在模拟器中午餐了我的应用程序,并且在eclipse处从Emulator Controls发送了纬度和经度,那么我正在从模拟器控件中获取当前位置的经度和纬度.我在真实设备中用相同的应用程序吃午餐,然后我无法获得当前位置的纬度和经度

I have implemented sample application for get the current location latitude longitude.If i lunch my application in emulator and i am sending latitude and longitude from Emulator Controls at eclipse then i am getting current location latitude and longitude which from emulator controls.If i lunch the same application in real device then i am not able to get current location latitude and longitude

我已经实现了用于获取当前位置纬度和经度的代码,如下所示:

I have implemented code for get the current location latitude and longitude as follows:

      LocationManager mlocManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);

  LocationListener mlocListener = new MyLocationListener();
  mlocManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 11, 11, mlocListener);


   public class MyLocationListener implements LocationListener
{

  @Override
  public void onLocationChanged(Location loc)
  {

    loc.getLatitude();
    loc.getLongitude();

   Log.v("11111","Latitude :"+loc.getLatitude());
   Log.v("22222","Longitude :"+ loc.getLongitude());

    }

}

从上面的代码中,我没有在真实的android设备中获得当前位置的纬度和经度.

From the above code i am not getting current location latitude and longitude in real android device.

如何获取真实设备的当前位置纬度和经度?

How can i get current location latitude and longitude of real device?

请任何人帮助我

推荐答案

prasad尝试使用此代码.

prasad try this code ..by using this i am successfully getting lat long

        private Location location = null;
        private LocationManager locationManager = null;
    locationManager = (LocationManager) context.getSystemService                              (Context.LOCATION_SERVICE);

    Criteria locationCritera = new Criteria();
    locationCritera.setAccuracy(Criteria.ACCURACY_FINE);
    locationCritera.setAltitudeRequired(false);
    locationCritera.setBearingRequired(false);
    locationCritera.setCostAllowed(true);
    locationCritera.setPowerRequirement(Criteria.NO_REQUIREMENT);

    String providerName = locationManager.getBestProvider(locationCritera,
            true);
    location = locationManager.getLastKnownLocation(providerName);
    locationListener = new MyLocationListener();

    locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0,
            0, locationListener);

    currentLocation = context.getSharedPreferences(PREFS_NAME, 0);
    editor = currentLocation.edit();
}
public String getCurrentLatitude() {
    try {
        if (!currentLocation.getString("currentLatitude", "")
                .equalsIgnoreCase(""))
            return currentLocation.getString("currentLatitude", "");
        else if (location.getLatitude() != 0.0)
            return Double.toString(location.getLatitude());
        else
            return "0.0";
    } catch (Exception e) {
        e.printStackTrace();
    }
    return "0.0";
}

public String getCurrentLongitude() {
    try {


        if (!currentLocation.getString("currentLongitude", "")
                .equalsIgnoreCase(""))
            return currentLocation.getString("currentLongitude", "");
        else if (location.getLongitude() != 0.0)
            return Double.toString(location.getLongitude());
        else
            return "0.0";
    } catch (Exception e) {
        e.printStackTrace();
    }
    return "0.0";
}

这篇关于如何获取android移动设备的当前位置的经度和纬度?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆