Ho cercato di ottenere un indirizzo da una posizione a punta sulle mappe di Google e ottenere questo errore:
Blockquote eccezione irreversibile: Processo principale: elder.msu.testlocationapp, PID: 23559 java.lang.RuntimeException: impossibile creare un'istanza di attività ComponentInfo {elder.msu.testlocationapp / elder.msu.testlocationapp.MapsActivity}: java.lang.NullPointerException: Tentativo leggere dal campo 'doppia com.google.android.gms.maps.model.LatLng.latitude' su un riferimento oggetto null a android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2366) a android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2515) a android.app.ActivityThread.access $ 1000 (ActivityThread.java:154) a android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1379) a android.os.Handler.dispatchMessage (Handler .java: 102) a android.os.Looper.loop (Looper.java:157) a android.app.ActivityThread.main (ActivityThread.java:5571) a java.lang.reflect.Method.invoke (metodo natale) a com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:745) a com.android.internal.os.ZygoteInit.main (Zygot eInit.java:635) causato da: java.lang.NullPointerException: tentativo di leggere da campo 'doppia com.google.android.gms.maps.model.LatLng.latitude' su un riferimento oggetto null a elder.msu.testlocationapp. MapsActivity. (MapsActivity.java:32) a java.lang.Class.newInstance (metodo natale) a android.app.Instrumentation.newActivity (Instrumentation.java:1068) a android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2356 ) a android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2515) a android.app.ActivityThread.access $ 1000 (ActivityThread.java:154) a android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1379) a android.os.Handler.dispatchMessage (Handler.java:102) a android.os.Looper.loop (Looper.java:157) a android.app.ActivityThread.main (ActivityThread.java:5571) a java.lang.reflect .Method.invoke (metodo natale) a com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:745) a com.android.internal.os.ZygoteInit.main (ZygoteInit.java:6 35)
Io ogni cosa necessaria nel mio manifesto. Ecco il mio codice per l'attività mappa
public void onMapReady(GoogleMap googleMap) {
mMap.setOnMapClickListener(new GoogleMap.OnMapClickListener() {
@Override
public void onMapClick(LatLng latLng) {
markerOptions.position(latLng);
markerOptions.title(latLng.latitude + : + latLng.longitude);
mMap.clear();
mMap.animateCamera(CameraUpdateFactory.newLatLng(latLng));
mMap.addMarker(markerOptions);
}
});
private void getAddress(){
Geocoder geocoder;
final List<Address> addresses;
geocoder = new Geocoder(this, Locale.getDefault());
try{
addresses = geocoder.getFromLocation(latitude,longitude,1);
if (addresses!=null && addresses.size() > 0){
address = addresses.get(0).getAddressLine(0);
city = addresses.get(0).getLocality();
}
}catch (IOException e){
e.printStackTrace();
Toast.makeText(getApplicationContext(), Cannot get data, Toast.LENGTH_SHORT).show();
}
btnOK.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
getAddress();
confirmData(address, city);
}
});
}
private void confirmData(String address, String city) {
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
Bundle bundle = new Bundle();
intent.putExtra(data, bundle);
intent.putExtra(address, address);
intent.putExtra(city, city);
startActivity(intent);
finish();
}













