Карта без увеличения текущего местоположения устройства и широты долготы не отображаются - PullRequest
0 голосов
/ 19 мая 2018

Это мой код для автоматического увеличения местоположения текущего устройства при запуске действия, а также я хочу, чтобы код отображал широту и долготу моего текущего местоположения.

public class MapsActivity extends FragmentActivity implements OnMapReadyCallback {

private GoogleMap mMap;

private static final int REQUEST_LOCATION = 1;

LocationManager locationManager;
Location location;


TextView latlngText;
Button refreshBtn;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.maps_layout);
    // Obtain the SupportMapFragment and get notified when the map is ready to be used.
    SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
            .findFragmentById(R.id.map);
    mapFragment.getMapAsync(this);

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

    refreshBtn = (Button) findViewById(R.id.refreshbtn);

    refreshBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

            Intent intent = new Intent(MapsActivity.this, MapsActivity.class);

            startActivity(intent);
            finish();
        }
    });
}

@Override
public void onMapReady(GoogleMap googleMap) {
    mMap = googleMap;
    mMap.setMapType(GoogleMap.MAP_TYPE_HYBRID);

    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
        // TODO: Consider calling
        //    ActivityCompat#requestPermissions
        // here to request the missing permissions, and then overriding
        //   public void onRequestPermissionsResult(int requestCode, String[] permissions,
        //                                          int[] grantResults)
        // to handle the case where the user grants the permission. See the documentation
        // for ActivityCompat#requestPermissions for more details.
        return;
    }
    mMap.setMyLocationEnabled(true);

    getLocation();

}

void getLocation() {


    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
        // TODO: Consider calling
        //    ActivityCompat#requestPermissions
        // here to request the missing permissions, and then overriding
        //   public void onRequestPermissionsResult(int requestCode, String[] permissions,
        //                                          int[] grantResults)
        // to handle the case where the user grants the permission. See the documentation
        // for ActivityCompat#requestPermissions for more details.
        return;
    }else {
        Location location = locationManager.getLastKnownLocation(locationManager.NETWORK_PROVIDER);

        if(location != null) {


            double lat = location.getLatitude();

            double lng = location.getLongitude();


            latlngText = (TextView) findViewById(R.id.latlngText);
            latlngText.setText("Latitude: " + lat + "\n" + "Longitude: " + lng);


            LatLng coordinates = new LatLng(location.getLatitude(), location.getLongitude());
            mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(coordinates, 13.0f));


        }
    }
}


@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
    super.onRequestPermissionsResult(requestCode, permissions, grantResults);


    switch (requestCode){


        case REQUEST_LOCATION:
            getLocation();
            break;
    }
}
}

Карта отображается, нонаходится на 0,0 и не увеличивает мое текущее местоположение и не отображает долготу и широту!кто-то, пожалуйста, помогите

...