突然,Flutter 应用程序在打开时开始崩溃。早些时候它正在工作。分享运行时崩溃日志 -
Fatal Exception: java.lang.IncompatibleClassChangeError: Found interface com.google.android.gms.location.SettingsClient, but class was expected (declaration of 'com.google.android.gms.location.SettingsClient' appears in /data/app/com.test.app-AqARftTPn1XJdiHWXXbkBw==/base.apk!classes6.dex)
at com.baseflow.geolocator.location.FusedLocationClient.isLocationServiceEnabled(FusedLocationClient.java:83)
at com.baseflow.geolocator.location.GeolocationManager.isLocationServiceEnabled(GeolocationManager.java:45)
at com.baseflow.geolocator.MethodCallHandlerImpl.onIsLocationServiceEnabled(MethodCallHandlerImpl.java:138)
at com.baseflow.geolocator.MethodCallHandlerImpl.onMethodCall(MethodCallHandlerImpl.java:62)
at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:262)
at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:295)
at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)
at io.flutter.embedding.engine.dart.DartMessenger$$ExternalSyntheticLambda0.run(:12)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:201)
at android.app.ActivityThread.main(ActivityThread.java:6810)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:547)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:873)
Run Code Online (Sandbox Code Playgroud) 由于我已将 flutter SDK 升级到 1.12.13+hotfix.8,片段中较旧的 FlutterView 实现不再起作用,因为 Facade (Flutter) 库现在已弃用。
Flutter.createView(activity!!, lifecycle, mRoute)
Run Code Online (Sandbox Code Playgroud)
根据官方文档,我们可以添加如下所示的 FlutterFragment -
FlutterFragment flutterFragment = FlutterFragment.withNewEngine()
.initialRoute("myInitialRoute/")
.build();
Run Code Online (Sandbox Code Playgroud)
但是找不到如何在扩展 Flutter 片段的自定义 Flutter 片段中添加方法通道。