Unact / yandex_mapkit

Flutter implementation of YandexMapkit
MIT License
132 stars 151 forks source link

Не отображаются карты на 3.19.+ #357

Closed No1Ks closed 1 month ago

No1Ks commented 1 month ago
PlatformException(error, java.lang.IllegalStateException: Trying to create a platform view of unregistered type: yandex_mapkit/yandex_map
t io.flutter.plugin.platform.PlatformViewsController.createPlatformView(PlatformViewsController.java:513)
t io.flutter.plugin.platform.PlatformViewsController$1.createForTextureLayer(PlatformViewsController.java:199)
t io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.create(PlatformViewsChannel.java:128)
t io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:55)
t io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:267)
t io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:292)
t io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
t io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(Unknown Source:12)
t android.os.Handler.handleCallback(Handler.java:942)
t android.os.Handler.dispatchMessage(Handler.java:99)
t android.os.Looper.loopOnce(Looper.java:240)

в gradle:

minSdkVersion 24
targetSdkVersion 34

на 3.13.2 всё ок

StasVersh commented 1 month ago

Такая же проблема

DCrow commented 1 month ago

Здравствуйте!

Подскажите какую версию библиотеки используете? Также просьба приложить flutter doctor --verbose

No1Ks commented 1 month ago

Здравствуйте!

Подскажите какую версию библиотеки используете? Также просьба приложить flutter doctor --verbose

Здравствуйте)

yandex_mapkit: 3.4.0

[!] Flutter (Channel stable, 3.19.5, on macOS 14.4.1 23E224 darwin-arm64, locale ru-RU)
    • Flutter version 3.19.5 on channel stable at /Users/no1ks/fvm/versions/3.19.5
    ! Warning: dart on your path resolves to /Users/no1ks/tools/flutter/bin/cache/dart-sdk/bin/dart, which is not inside your current Flutter SDK checkout at /Users/no1ks/fvm/versions/3.19.5. Consider adding /Users/no1ks/fvm/versions/3.19.5/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 300451adae (5 days ago), 2024-03-27 21:54:07 -0500
    • Engine revision e76c956498
    • Dart version 3.3.3
    • DevTools version 2.31.1
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[!] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/no1ks/Library/Android/sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.

[✓] Xcode - develop for iOS and macOS (Xcode 15.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15E204a
    • CocoaPods version 1.15.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2023.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)

[✓] Connected device (3 available)
    • LE2101 (mobile) • adb-f406dd7e-6mdV5C._adb-tls-connect._tcp. • android-arm64  • Android 13 (API 33)
    • macOS (desktop) • macos                                      • darwin-arm64   • macOS 14.4.1 23E224 darwin-arm64
    • Chrome (web)    • chrome                                     • web-javascript • Google Chrome 123.0.6312.87

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 2 categories.
IO  : Writing 10008 characters to text file /Users/no1ks/.pub-cache/log/pub_log.txt.
MSG : Logs written to /Users/no1ks/.pub-cache/log/pub_log.txt.
StasVersh commented 1 month ago

Здравствуйте!

Подскажите какую версию библиотеки используете? Также просьба приложить flutter doctor --verbose

Воспроизводится на

Flutter 3.19.5 • channel stable •
https://github.com/flutter/flutter.git
Framework • revision 300451adae (5 days ago) •
2024-03-27 21:54:07 -0500
Engine • revision e76c956498
Tools • Dart 3.3.3 • DevTools 2.31.1

Пытаюсь завести экземпл с мастера

Flutter (Channel stable, 3.19.5, on macOS
    14.4.1 23E224 darwin-arm64, locale ru-BY)
    • Flutter version 3.19.5 on channel stable at
      /Users/stanislavvershilovich/dev/flutter
    • Upstream repository
      https://github.com/flutter/flutter.git
    • Framework revision 300451adae (5 days ago),
      2024-03-27 21:54:07 -0500
    • Engine revision e76c956498
    • Dart version 3.3.3
    • DevTools version 2.31.1

[!] Android toolchain - develop for Android devices
    (Android SDK version 34.0.0)
    • Android SDK at
      /Users/stanislavvershilovich/Library/Android/
      sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install
      "cmdline-tools;latest"`
      See
      https://developer.android.com/studio/command-
      line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to
      accept the SDK licenses.
      See
      https://flutter.dev/docs/get-started/install/
      macos#android-setup for more details.

[✓] Xcode - develop for iOS and macOS (Xcode 15.2)
    • Xcode at
      /Applications/Xcode.app/Contents/Developer
    • Build 15C500b
    • CocoaPods version 1.15.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google
      Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2023.2)
    • Android Studio at /Applications/Android
      Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨
      https://plugins.jetbrains.com/plugin/9212-flu
      tter
    • Dart plugin can be installed from:
      🔨
      https://plugins.jetbrains.com/plugin/6351-dar
      t
    • Java version OpenJDK Runtime Environment
      (build 17.0.9+0-17.0.9b1087.7-11185874)

[✓] IntelliJ IDEA Community Edition (version
    2023.3.4)
    • IntelliJ at /Applications/IntelliJ IDEA
      CE.app
    • Flutter plugin version 78.1.1
    • Dart plugin version 233.13763.5

[✓] Connected device (4 available)
    • 22101320G (mobile)         • cdef8892                             • android-arm64  • Android 13 (API 33)
    • iPhone 15 Pro Max (mobile) • 7B4CCD8D-B08D-40AD-9E58-C95467CE0502 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-17-2 (simulator)
    • macOS (desktop)            • macos                                • darwin-arm64   • macOS 14.4.1 23E224 darwin-arm64
    • Chrome (web)               • chrome                               • web-javascript • Google Chrome 123.0.6312.87
    ! Device emulator-5562 is offline.

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.
stanislavvershilovich@Noutbuktanislav example % flutter doctor --verbose
[✓] Flutter (Channel stable, 3.19.5, on macOS 14.4.1 23E224 darwin-arm64, locale ru-BY)
    • Flutter version 3.19.5 on channel stable at /Users/stanislavvershilovich/dev/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 300451adae (5 days ago), 2024-03-27 21:54:07 -0500
    • Engine revision e76c956498
    • Dart version 3.3.3
    • DevTools version 2.31.1

[!] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/stanislavvershilovich/Library/Android/sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.

[✓] Xcode - develop for iOS and macOS (Xcode 15.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15C500b
    • CocoaPods version 1.15.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2023.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.9+0-17.0.9b1087.7-11185874)

[✓] IntelliJ IDEA Community Edition (version 2023.3.4)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 78.1.1
    • Dart plugin version 233.13763.5

[✓] Connected device (4 available)
    • 22101320G (mobile)         • cdef8892                             • android-arm64  • Android 13 (API 33)
    • iPhone 15 Pro Max (mobile) • 7B4CCD8D-B08D-40AD-9E58-C95467CE0502 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-17-2 (simulator)
    • macOS (desktop)            • macos                                • darwin-arm64   • macOS 14.4.1 23E224 darwin-arm64
    • Chrome (web)               • chrome                               • web-javascript • Google Chrome 123.0.6312.87
    ! Device emulator-5562 is offline.

[✓] Network resources
    • All expected network resources are available.

Прилажка на ios симуляторе крашится при входе с ошибкой [ERROR:flutter/shell/platform/darwin/graphics/FlutterDarwinContextMetalImpeller.mm(42)] Using the Impeller rendering backend.

DCrow commented 1 month ago

На андроиде, к сожалению, не удается воспроизвести.

Подскажите, какие другие библиотеки вы используете? Скорее всего проблема возникает из-за других нативных либ.

Прилажка на ios симуляторе крашится при входе с ошибкой [ERROR:flutter/shell/platform/darwin/graphics/FlutterDarwinContextMetalImpeller.mm(42)] Using the Impeller rendering backend.

Это скорее всего связано с https://github.com/flutter/flutter/issues/135154

No1Ks commented 1 month ago

 У меня не крашит и импеллер отключен. Просто сами карты не отображаются.  

 environment:
  sdk: ">=3.3.0 <4.0.0"
  flutter: 3.19.5

dependencies:
  flutter:
    sdk: flutter

  # Localization
  flutter_localizations:
    sdk: flutter
  intl: 0.18.1

  # Core
  json_annotation: 4.8.1
  path_provider: 2.1.2
  logger: 2.2.0
  equatable: 2.0.5
  google_api_availability: 5.0.0
  copy_with_extension_gen: 5.0.4

  # Redux
  flutter_redux: 0.10.0
  redux: 5.0.0
  redux_logging: 0.5.1

  # Firebase
  firebase_core: 2.27.2
  firebase_crashlytics: 3.4.20
  firebase_analytics: 10.9.0
  firebase_messaging: 14.7.21
  firebase_dynamic_links: 5.4.19

  # Device
  flutter_displaymode: 0.6.0
  file_picker: 8.0.0+1
  local_auth: 2.2.0
  crypton: 2.2.1
  package_info_plus: 4.2.0
  permission_handler: 11.3.1
  in_app_review: 2.0.9
  shared_preferences: 2.2.2
  flutter_app_badger: 1.5.0
  share_plus: 8.0.2
  new_version_plus: 0.0.11
  app_settings: 5.1.1
  android_id: 0.3.6
  device_info_plus: 10.0.1

  # Network
  dio: 5.4.2+1
  pretty_dio_logger: 1.3.1
  connectivity_plus: 6.0.1
  webview_flutter: 4.7.0
  url_launcher: 6.2.5
  pusher_channels_flutter: 2.2.1

  # Map
  location: 5.0.3
  yandex_mapkit: 3.4.0
  yandex_geocoder: 2.3.0+1

  # Widgets
  auto_size_text: 3.0.0
  rect_getter: 1.1.0
  smooth_page_indicator: 1.1.0
  shimmer: 3.0.0
  flutter_slidable: 3.1.0
  lottie: 3.1.0
  flutter_svg: 2.0.10+1
  cached_network_image: 3.3.1
  photo_view: 0.14.0
  flutter_linkify: 6.0.0
  flutter_keyboard_visibility: 6.0.0
  fluttertoast: 8.2.4
  video_player: 2.8.3
  dotted_line: 3.2.2
  sliding_sheet2: 2.0.1
  visibility_detector: 0.4.0+2
  flutter_widget_from_html: 0.14.11

  # Payments
  yookassa_payments_flutter: 1.3.0
  sbp: 0.1.0

dev_dependencies:
  build_runner: 2.4.9
  json_serializable: 6.7.1
  dart_style: 2.3.6

flutter:
  uses-material-design: true
  generate: false

 

DCrow commented 1 month ago

С вашими зависимостями в pubspec.yaml также не удается воспроизвести.

Пожалуйста приложите вариант, где воспроизводится ошибка, иначе никак не могу продебажить.

No1Ks commented 1 month ago

Я вам не могу прислать исходники, к сожалению. Может быть дело во FlutterFragmentActivity?

DCrow commented 1 month ago

Я вам не могу прислать исходники

Не обязательно исходники, нужно приложение-пример, где воспроизводится ошибка.

Может быть дело во FlutterFragmentActivity

У вас в приложении используется Add-to-app модель подключения флаттер?

No1Ks commented 1 month ago

Я вам не могу прислать исходники

Не обязательно исходники, нужно приложение-пример, где воспроизводится ошибка.

Может быть дело во FlutterFragmentActivity

У вас в приложении используется Add-to-app модель подключения флаттер?

Нет, не add-to-app

makegodhere commented 1 month ago

Аналогичная проблема только при сборке с флагом --release. При разработке или при сборке c флагом --debug все в порядке карты отображаются. Версия пакета 4.0.0 Версия flutter 3.19.4

DCrow commented 1 month ago

@makegodhere Ваша проблема связана с новой 4.0.0 версией, выпустил патч в 4.0.1

makegodhere commented 1 month ago

@makegodhere Ваша проблема связана с новой 4.0.0 версией, выпустил патч в 4.0.1

Патч сработал для нашей ситуации большое спасибо!

No1Ks commented 1 month ago

А какую версию gradle и kotlin вы используете?

No1Ks commented 1 month ago

Ошибка выявлена. У нас был сломан механизм подстановки ключа mapkit в MainApplication.