【问题标题】:I am not getting gps coordinates from NETWORK_PROVIDER sometimes有时我没有从 NETWORK_PROVIDER 获取 gps 坐标
【发布时间】:2011-07-04 10:00:39
【问题描述】:

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

    LocationListener mlocListener = new MyLocationListener();

    mlocManager.requestLocationUpdates( LocationManager.NETWORK_PROVIDER, 0, 0, mlocListener);

    //init();

}

/* Class My Location Listener */

public class MyLocationListener implements LocationListener

{

@Override

public void onLocationChanged(Location loc)

{

    //_pd.dismiss();

loc.getLatitude();

loc.getLongitude();

String Text = "My current location is: " +"Latitud = " + loc.getLatitude() +"Longitud ="  + loc.getLongitude();
txtInfo.setText(Text);

Toast.makeText( getApplicationContext(),Text,Toast.LENGTH_SHORT).show();

}

@Override

public void onProviderDisabled(String provider)

{

Toast.makeText( getApplicationContext(),"Gps Disabled",Toast.LENGTH_SHORT ).show();

}

@Override

public void onProviderEnabled(String provider)

{

Toast.makeText( getApplicationContext(),"Gps Enabled",Toast.LENGTH_SHORT).show();

}

@Override

public void onStatusChanged(String provider, int status, Bundle extras)

{

}
}

这是我的代码....有时我得到 gps 坐标,有时我不知道为什么会这样?

【问题讨论】:

    标签: android gps


    【解决方案1】:

    使用 GPS 获取 Geo Fix 需要很长时间,因此您需要在无线网络提供商和 GPS 之间切换才能可靠地获取 Geo 坐标。最好先轮询无线网络,如果未启用/可用,则回退到 GPS 提供商。

    好的参考:Android-location-providers-gps-network-passive

    【讨论】:

      【解决方案2】:

      这是因为某些位置在android中没有显示经纬度。这不是一个大问题,您只需检查您的 lat 和 lng 是否返回 null。如果它返回 null,您只显示一条简单消息,此位置没有 lat 和 lng。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-22
        • 2015-04-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多