GPS未在地图上显示当前位置

时间:2015-06-10 07:55:55

标签: android google-maps gps android-maps-v2

我正面临一个问题,我正试图在地图上显示当前位置。当我使用wifi时,它工作正常,但是当我打开GPS时,它会停止显示它,我再次关闭它的GPS工作..我该怎么办,我需要显示我的位置以及GPS。

我的代码是:

SupportMapFragment fragment = ( SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map_test);

    // Getting Google Map
    mGoogleMap = fragment.getMap();

    // Enabling MyLocation in Google Map
    mGoogleMap.setMyLocationEnabled(true);



    // Getting LocationManager object from System Service LOCATION_SERVICE
    LocationManager locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);

    // Creating a criteria object to retrieve provider
    Criteria criteria = new Criteria();

    // Getting the name of the best provider
    String provider = locationManager.getBestProvider(criteria, true);

    // Getting Current Location From GPS
    Location location = locationManager.getLastKnownLocation(provider);

    if(location!=null){
            onLocationChanged(location);
    }

    locationManager.requestLocationUpdates(provider, 20000, 0, this);



    mGoogleMap.setOnInfoWindowClickListener(new OnInfoWindowClickListener() {

        @Override
        public void onInfoWindowClick(Marker arg0) {
            // TODO Auto-generated method stub
            System.out.println("STREEEETTT111:  "+db.getIdn(arg0.getTitle()));
            Intent i=new Intent(MapTest.this,PharmacyDetails.class);

            i.putExtra("name", arg0.getTitle());
            startActivity(i);
        }
    });
}
@Override
public void onLocationChanged(Location location) {
    // TODO Auto-generated method stub
    mLatitude = location.getLatitude();
    mLongitude = location.getLongitude();
    LatLng latLng = new LatLng(mLatitude, mLongitude);

    mGoogleMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));
    mGoogleMap.animateCamera(CameraUpdateFactory.zoomTo(15));


}
@Override
public void onProviderDisabled(String provider) {
    // TODO Auto-generated method stub

}
@Override
public void onProviderEnabled(String provider) {
    // TODO Auto-generated method stub

}
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
    // TODO Auto-generated method stub

}

我想附上截图以使我的问题更清晰:

GPS关闭时:

gps off

当GPS开启时:

enter image description here

请帮忙,谢谢

0 个答案:

没有答案