原问题来自于CSDN问答频道,更多解决方案见:http://ask.csdn.net/questions/1730问题描述:我使用下面的代码来开发一个基于位置定位的项目,这个项目我是用的是google api 8。
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, this);
    currloc = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
    TextView t = (TextView)findViewById(R.id.textView1);
    try{
        t.setText("Your current location is - "+currloc.getLatitude()+","+currloc.getLongitude());
    }catch (Exception e) {
        // TODO: handle exception
        t.setText("cant find current location ");
    }这段代码在galaxy tab上能正常运行,htc上也可以。
但是当我使用nexus的时候,location得到的是null。对于galaxy nexus来说,我是不是得改变api版本,或者说还有其他一些特殊需求吗?解决方案:仿照下面的代码:
Step1: into your oncreateLocationListener locationListener = new LocalLocationListener();
    locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener);Step2: into class body/**Listener on location change*/
private class LocalLocationListener implements LocationListener
{    public void onLocationChanged(Location location)
    {
        String text = "My current Location is: "+location.getLatitude()+", "+location.getLongitude();
        GeoPoint geoPoint = new GeoPoint((int)(location.getLatitude()* 1E6), (int)(location.getLatitude() * 1E6));
        mapController_.animateTo(geoPoint);
        Toast.makeText(LocalMap.this, text, Toast.LENGTH_SHORT).show();
        Log.i("onLocationChanged", text);    }    public void onProviderDisabled(String provider)
    {
        // TODO Auto-generated method stub
        Toast.makeText(LocalMap.this, "GPS Disable", Toast.LENGTH_SHORT).show();
        Log.i("onProviderDisabled", "GPS Disable");
    }    public void onProviderEnabled(String provider)
    {
        // TODO Auto-generated method stub
        Toast.makeText(LocalMap.this, "GPS Enable", Toast.LENGTH_SHORT).show();
        Log.i("onProviderEnabled", "GPS Enable");
    }    public void onStatusChanged(String provider, int status, Bundle extras)
    {
        // TODO Auto-generated method stub    }android

解决方案 »

  1.   

    机器没有获取过定位信息就返回null了,api文档有说明Returns a Location indicating the data from the last known location fix obtained from the given provider.This can be done without starting the provider. Note that this location could be out-of-date, for example if the device was turned off and moved to another location.If the provider is currently disabled, null is returned.Parameters
    provider the name of the providerReturns
    the last known location for the provider, or null
      

  2.   

    和google 的android package LocationManager封装一样 楼主威武
      

  3.   

     看我多i离开我的佛坪咯岁的,xl, 莫非我佩服