java.lang.IllegalStateException: Trying to create a platform view of unregistered type: com.pichillilorenzo/flutter_inappwebview
1,188
flutter clean
run the app afterwards
Author by
Roman Soviak
When I was a child I played football for my village. I believe in the piece all over the world. I like to develop programs and in love with Android OS. I learn programming for myself with my friends. We stand around books, speak with each other, sing songs about life and develop programs.
Updated on December 19, 2022Comments
-
Roman Soviak over 1 year
I use this library for showing a parsed epub file, which supports showing .css. flutter_inappwebview.
var doc = state.book.Chapters.last.HtmlContent.split('<head>'); var styledTML = "\n" + doc.first + "\n" + "<head>" + "<style>" + state.book.Content.Css['styles.css'].Content + "</style>" + doc.last; return Material( child: InAppWebView( onWebViewCreated: (controller) { controller.loadData(data: styledTML); }, initialOptions: InAppWebViewWidgetOptions(), ), ); }
This code works perfectly on iOS, but on Android I have error:
E/flutter ( 7880): [ERROR:flutter/lib/ui/ui_dart_state.cc(157)] Unhandled Exception: PlatformException(error, java.lang.IllegalStateException: Trying to create a platform view of unregistered type: com.pichillilorenzo/flutter_inappwebview E/flutter ( 7880): at io.flutter.plugin.platform.PlatformViewsController$1.createPlatformView(PlatformViewsController.java:91) E/flutter ( 7880): at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.create(PlatformViewsChannel.java:96) E/flutter ( 7880): at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:60) E/flutter ( 7880): at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:231) E/flutter ( 7880): at io.flutter.embedding.engine.dart.DartMessenger.handleMessageFromDart(DartMessenger.java:93) E/flutter ( 7880): at io.flutter.embedding.engine.FlutterJNI.handlePlatformMessage(FlutterJNI.java:642) E/flutter ( 7880): at android.os.MessageQueue.nativePollOnce(Native Method) E/flutter ( 7880): at android.os.MessageQueue.next(MessageQueue.java:326) E/flutter ( 7880): at android.os.Looper.loop(Looper.java:160) E/flutter ( 7880): at android.app.ActivityThread.main(ActivityThread.java:6669) E/flutter ( 7880): at java.lang.reflect.Method.invoke(Native Method) E/flutter ( 7880): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) E/flutter ( 7880): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) E/flutter ( 7880): , null) E/flutter ( 7880): #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569:7) E/flutter ( 7880): #1 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:321:33) E/flutter ( 7880): <asynchronous suspension> E/flutter ( 7880): #2 AndroidViewController._create (package:flutter/src/services/platform_views.dart:640:54) E/flutter ( 7880): #3 AndroidViewController.setSize (package:flutter/src/services/platform_views.dart:557:14) E/flutter ( 7880): #4 RenderAndroidView._sizePlatformView (package:flutter/src/rendering/platform_view.dart:174:29) E/flutter ( 7880): #5 RenderAndroidView.performResize (package:flutter/src/rendering/platform_view.dart:155:5) E/flutter ( 7880): #6 RenderObject.layout (package:flutter/src/rendering/object.dart:1703:9) E/flutter ( 7880): #7 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13) E/flutter ( 7880): #8 RenderObject.layout (package:flutter/src/rendering/object.dart:1724:7) E/flutter ( 7880): #9 RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:105:13) E/flutter ( 7880): #10 RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1584:7) E/flutter ( 7880): #11 PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:844:18) E/flutter ( 7880): #12 RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:344:19) E/flutter ( 7880): #13 WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:774:13) E/flutter ( 7880): #14 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:283:5) E/flutter ( 7880): #15 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1102:15) E/flutter ( 7880): #16 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1041:9) E/flutter ( 7880): #17 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:957:5) E/flutter ( 7880): #18 _rootRun (dart:async/zone.dart:1126:13) E/flutter ( 7880): #19 _CustomZone.run (dart:async/zone.dart:1023:19) E/flutter ( 7880): #20 _CustomZone.runGuarded (dart:async/zone.dart:925:7) E/flutter ( 7880): #21 _invoke (dart:ui/hooks.dart:259:10) E/flutter ( 7880): #22 _drawFrame (dart:ui/hooks.dart:217:3) E/flutter ( 7880):
I tried
flutter clean
. Restarting IDE. My project is AndroidX project and I put Internet permission in Manifest, my project is more than API 21, but it still crashes. How can I reflect this HTML. I appreciate your time and ideas. Thanks