Po raz pierwszy trzepoczą mapy google, ładuje się idealnie, ale po ponownym uruchomieniu ponownie przechodzi do wyjątku platformy
google_maps_flutter: ^ 0,5.21 + 15
Github [google_maps_flutter] Próba utworzenia już utworzonego widoku platformy # 45695
[ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: PlatformException(error, java.lang.IllegalStateException: Trying to create an already created platform view, view id: 0
Doktor Flutter -v
[✓] Flutter (Channel stable, v1.12.13+hotfix.5, on Linux, locale en_IN)
• Flutter version 1.12.13+hotfix.5 at /home/asus/Documents/Flutter_SDK/flutter
• Framework revision 27321ebbad (2 weeks ago), 2019-12-10 18:15:01 -0800
• Engine revision 2994f7e1e6
• Dart version 2.7.0
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.2)
• Android SDK at /home/asus/Android/Sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-29, build-tools 29.0.2
• Java binary at: /snap/android-studio/81/android-studio/jre/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
• All Android licenses accepted.
[✓] Android Studio (version 3.5)
• Android Studio at /snap/android-studio/81/android-studio
• Flutter plugin version 42.1.1
• Dart plugin version 191.8593
• Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
[✓] Connected device (1 available)
• vivo 1723 • 49269ad3 • android-arm64 • Android 9 (API 28)
• No issues found!
android
google-maps
flutter
google-maps-flutter
Lav Kushwaha
źródło
źródło
flutter clean
pisane małymi literami, jeśli ktoś może to edytowaćMiałem również ten sam problem i używanie
flutter clean
go nie rozwiązało dla mnie ( wersja Flutter 1.12.13 + poprawka 8 )Ale dodanie unikalnego klucza do widżetu (nie do jego stanu) rozwiązało problem.
minimalna działająca próbka kodu, aby to wykazać.
źródło
GoogleMap()
?Zgodnie z API ,
Miałem ten sam problem i po pewnym debugowaniu wygląda na to, że za każdym razem, gdy przeładujesz, gdy mapa jest widoczna, wyświetli błąd.
Możesz jednak zapobiec błędowi, jeśli przeładujesz go po usunięciu mapy.
Innymi słowy, ma zapobiegać aktywacji wielu instancji map.
Proponuję więc zutylizować mapę przed ponownym ładowaniem na gorąco podczas opracowywania.
W wersji produkcyjnej użytkownicy nie będą mogli przeładować systemu na gorąco, dlatego nie napotkają problemu z platformą.
źródło
Problem wynika z używania tego samego kontrolera w wielu widżetach GoogleMaps. Zbuduj tylko jeden widżet GoogleMap i użyj obiektu GoogleMapController, aby wprowadzić zmiany.
źródło
Problem jest wymieniony tutaj: https://github.com/flutter/flutter/issues/45695
źródło