MapFragment oder MapView getMap () gibt auf Lollipop null zurück
Ich habe mit Google Maps API v2, die für eine lange Zeit auf Android 4.x-Versionen, ohne ein problem. Nun installierte ich die neueste Lollipop-build auf meinen Nexus Geräten (5 und 7) versucht zu materialisieren, die app.
Möchte ich darauf hinweisen, dass alles ok ist auf KitKiat und das problem, das ich beschreibe, ist poping-up nur auf Lollipop.
In meinem XML-source-code, den ich verwende MapFragment (Google Play-Dienste-Bibliothek version 6.1.11).
<fragment android:id="@+id/map"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:name="com.google.android.gms.maps.MapFragment"/>
In den Java-code, ich bin übergeordnete OnPause () - Methode zu erreichen anzeigen:
GoogleMap map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
In dieser Zeile wirft NullPointerException. Im debugger-app ist in der Lage zu finden, fragment, aber es ist nicht in der Lage, um zurückzukehren GoogleMap. Ich habe auch versucht die MapView. Es wirft auch null.
Das seltsamste Sache für mich ist, dass die Karte lädt, ohne ein problem auf die app selbst, sondern im code, den ich nicht erreichen kann, es mit ihm zu arbeiten.
InformationsquelleAutor der Frage mroczis | 2014-10-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich hatte genau das gleiche problem, aber das ist was für mich gearbeitet:
Ersetzen...
GoogleMap map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
mit dabei...
GoogleMap map = getMapFragment().getMap();
dann gleiten Sie mit diesem bad boy in sich und geben es einen Wirbel...
InformationsquelleAutor der Antwort Rhisiart
Google nun ein bequemer Weg, um die Karte mit der folgenden Methode
InformationsquelleAutor der Antwort Exception
Es sieht aus wie das könnte ein Problem mit einem targetSdkVersion 21:
https://code.google.com/p/android-developer-preview/issues/detail?id=1947
Jedoch der Wechsel zu getChildFragmentManager() für mich gearbeitet:
findFragmentById für SupportMapFragment gibt null zurück, in Android Studio
InformationsquelleAutor der Antwort bubastis
Haben Sie versucht, isGooglePlayServicesAvailable zu prüfen, warum seine null zurückgeben? null hat viele Gründe, auf getmap, versuchen Sie es mit dieser zu prüfen, warum seine Angabe null
InformationsquelleAutor der Antwort iGoDa