Starałem się uzyskać adresu z zaostrzonym lokalizację na mapach Google i dostać ten błąd:
Blockquote krytyczny wyjątek: główny proces: elder.msu.testlocationapp PID: 23559 java.lang.RuntimeException: Nie instancji aktywności ComponentInfo {elder.msu.testlocationapp / elder.msu.testlocationapp.MapsActivity} java.lang.NullPointerException: Próba do zapoznania się z pola „” na podwójnym com.google.android.gms.maps.model.LatLng.latitude null odniesienia obiektu przy android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2366) w android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2515) w android.app.ActivityThread.access $ 1000 (ActivityThread.java:154) w android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1379) w android.os.Handler.dispatchMessage (Handler .java: 102) w android.os.Looper.loop (Looper.java:157) w android.app.ActivityThread.main (ActivityThread.java:5571) w java.lang.reflect.Method.invoke (metoda podstawowa) na com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:745) w com.android.internal.os.ZygoteInit.main (Zygot eInit.java:635) spowodowane przez: java.lang.NullPointerException: Próba odczytu z pola „” na podwójnym com.google.android.gms.maps.model.LatLng.latitude null odniesienia obiektu przy elder.msu.testlocationapp. MapsActivity. (MapsActivity.java:32) w java.lang.Class.newInstance (metoda podstawowa) na android.app.Instrumentation.newActivity (Instrumentation.java:1068) w android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2356 ) w android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2515) w android.app.ActivityThread.access $ 1000 (ActivityThread.java:154) w android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1379) na android.os.Handler.dispatchMessage (Handler.java:102) w android.os.Looper.loop (Looper.java:157) w android.app.ActivityThread.main (ActivityThread.java:5571) w java.lang.reflect .Method.invoke (Metoda Ojczysty) w com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:745) w com.android.internal.os.ZygoteInit.main (ZygoteInit.java:6 35)
I każdy niezbędne rzeczy w moim manifestu. Tu jest mój kodu dla aktywności mapie
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();
}













