ich über die Laufzeit-Berechtigungen zu lernen, bin ab. Ich habe eine Karte und ich habe eine Genehmigung erteilt. Wenn der Benutzer den genauen Standort erlaubt - zoomt die Karte auf seinen aktuellen Standort und wenn er dies nicht zulässt, bleibt die Karte an diesem Ort. Was ich anstelle der Karte an diesem Ort machen möchte, ist: Wenn der Benutzer keine Erlaubnis zum Zugriff auf seinen Standort zulässt, sollte die Karte auf meinen benutzerdefinierten Standort zoomen. (Greenwich).Hinzufügen von Standard-Speicherort, wenn Benutzer nicht über die Berechtigung für eine gute Lage für eine Karte in Android erlaubt es
Meine Karten Fragment:
mapView.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
if (ActivityCompat.checkSelfPermission(getContext(), Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED &&
ActivityCompat.checkSelfPermission(getContext(), Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
if (ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), Manifest.permission.ACCESS_FINE_LOCATION)) {
} else {
ActivityCompat.requestPermissions(getActivity(), new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, MY_LOCATION_REQUEST_CODE);
}
return;
}
mMap.setMyLocationEnabled(true);
LocationManager locationManager = (LocationManager) getActivity().getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
// if (ContextCompat.checkSelfPermission(getContext(), Manifest.permission.ACCESS_FINE_LOCATION)
// == PackageManager.PERMISSION_GRANTED) {
// mMap.setMyLocationEnabled(true);
// } else {
// // Show rationale and request permission.
// }
//Disable Map Toolbar:
mMap.getUiSettings().setMapToolbarEnabled(false);
// Get the name of the best provider and current location
String provider = null;
if (locationManager != null) {
provider = locationManager.getBestProvider(criteria, true);
}
// Get current location
Location myLocation = null;
if (locationManager != null) {
myLocation = locationManager.getLastKnownLocation(provider);
}
// Set default latitude and longitude to Greenwich
double latitude = 51.4825766;
double longitude = -0.0076589;
// Get latitude and longitude of the current location and a LatLng object
if (myLocation != null) {
latitude = myLocation.getLatitude();
longitude = myLocation.getLongitude();
}
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(new LatLng(latitude, longitude)).zoom(14).build();
mMap.animateCamera(CameraUpdateFactory
.newCameraPosition(cameraPosition));
}
wo soll ich in diesen Code setzen? – Kemo
nach Ihrer letzten IF-Bedingung –
Ich habe meinen Code aktualisiert, dieser existiert bereits in meinem Code. Was ich möchte ist, wenn Benutzer klickt keine Erlaubnis erlauben, sollte es an den benutzerdefinierten Speicherort gehen. – Kemo