Работоспособность приложения после публикации в Google Play
Я занимаюсь разработкой приложения, которое находится на этапе "закрытого тестирования" в Google Play. Т.е. приложение имеет свою тестовую страницу, откуда можно скачать приложение собранное Google Play из App Bundle файла.
В приложении используется виджет yandex_mapkit для вывода карты. При запуске приложения в эмуляторе или на устройстве из Android Studio карта отображается и выполняет необходимые функции. При загрузке приложения из Google Play карта не отображается и не выполняется метод onMapCreated
, как будто виджет карты просто вырезан из приложения. Так как не всплывают никакие ошибки.
pubspec.yaml
yandex_mapkit: ^4.0.2
permission_handler: ^11.3.1
app/src/main/AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<!-- <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />-->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" android:required="false" />
<application
android:name=".MainApplication"
android:icon="@mipmap/ic_launcher">
<activity
android:name=".MainActivity"
[...]
map_screen.dart
YandexMap(
mapObjects: _mapObjects,
onMapCreated: (YandexMapController yandexMapController) async {
_yandexMapController = yandexMapController;
await _initLocationLayer();
},
),
Получаю ошибку во время инициализации виджета карты:
[ERROR:flutter/runtime/dart_vm_initializer.cc(41)] Unhandled Exception: PlatformException(error, java.lang.IllegalStateException: Trying to create a platform view of unregistered type: yandex_mapkit/yandex_map
at io.flutter.plugin.platform.z.M(SourceFile:1)
at io.flutter.plugin.platform.z$a.d(SourceFile:1)
at n7.q$a.c(SourceFile:1)
at n7.q$a.onMethodCall(SourceFile:1)
at o7.k$a.a(SourceFile:1)
at f7.c.l(SourceFile:1)
at f7.c.m(SourceFile:1)
at f7.c.i(SourceFile:1)
at f7.b.run(SourceFile:1)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:223)
at android.app.ActivityThread.main(ActivityThread.java:7814)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:952)
, null, null)
#0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:648)
#1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:334)
<asynchronous suspension>
#2 ExpensiveAndroidViewController._sendCreateMessage (package:flutter/src/services/platform_views.dart:1099)
<asynchronous suspension>
#3 AndroidViewController.create (package:flutter/src/services/platform_views.dart:822)
<asynchronous suspension>
Android Vitals ничего не показывает, находится в вечной загрузке, вероятно из-за недостаточного количества данных, так как приложение запускалось только на двух физ. устройствах.
Кто-то сталкивался с подобным поведением? Буду признателен за совет, как можно понять в чём проблема.