首页 > 解决方案 > Flutter PlatformViews:尝试创建未注册类型的平台视图

问题描述

所以,我跟着60devs 的这篇文章,关于如何使用 PlatformView 在 Flutter 中实现原生 Webview。我完全按照这篇文章,但我得到了这个错误:

Unhandled Exception: PlatformException(error, Trying to create a platform view of unregistered type: webview, null)
  • 我的最低 SDK 版本大于 20(目前为 21)。
  • 我的文件中有Internet 权限AndroidManifest.xml
  • 我试过了flutter clean

但没有任何效果。

颤振运行错误:

E/flutter ( 8794): [ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: PlatformException(error, Trying to create a platform view of unregistered type: webview, null)
E/flutter ( 8794): #0      StandardMethodCodec.decodeEnvelope 
package:flutter/…/services/message_codecs.dart:564
E/flutter ( 8794): #1      MethodChannel.invokeMethod 
package:flutter/…/services/platform_channel.dart:316
E/flutter ( 8794): <asynchronous suspension>
E/flutter ( 8794): #2      AndroidViewController._create 
package:flutter/…/services/platform_views.dart:639
E/flutter ( 8794): <asynchronous suspension>
E/flutter ( 8794): #3      AndroidViewController.setSize 
package:flutter/…/services/platform_views.dart:556
E/flutter ( 8794): <asynchronous suspension>
E/flutter ( 8794): #4      RenderAndroidView._sizePlatformView 
package:flutter/…/rendering/platform_view.dart:189
E/flutter ( 8794): <asynchronous suspension>
E/flutter ( 8794): #5      RenderAndroidView.performResize 
package:flutter/…/rendering/platform_view.dart:170
E/flutter ( 8794): #6      RenderObject.layout 
package:flutter/…/rendering/object.dart:1604
E/flutter ( 8794): #7      _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout 
package:flutter/…/rendering/proxy_box.dart:105
E/flutter ( 8794): #8      RenderObject.layout 
package:flutter/…/rendering/object.dart:1619
E/flutter ( 8794): #9      _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout 
package:flutter/…/rendering/proxy_box.dart:105
E/flutter ( 8794): #10     RenderObject.layout 
package:flutter/…/rendering/object.dart:1619
E/flutter ( 8794): #11     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout 
package:flutter/…/rendering/proxy_box.dart:105
E/flutter ( 8794): #12     RenderObject.layout 
package:flutter/…/rendering/object.dart:1619
E/flutter ( 8794): #13     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout 
package:flutter/…/rendering/proxy_box.dart:105
E/flutter ( 8794): #14     RenderObject.layout 
package:flutter/…/rendering/object.dart:1619
E/flutter ( 8794): #15     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout 
package:flutter/…/rendering/proxy_box.dart:105
E/flutter ( 8794): #16     RenderObject.layout 
package:flutter/…/rendering/object.dart:1619
E/flutter ( 8794): #17     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout 
package:flutter/…/rendering/proxy_box.dart:105
E/flutter ( 8794): #18     RenderObject.layout 
package:flutter/…/rendering/object.dart:1619
E/flutter ( 8794): #19     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout 
package:flutter/…/rendering/proxy_box.dart:105
E/flutter ( 8794): #20     RenderObject.layout 
package:flutter/…/rendering/object.dart:1619
E/flutter ( 8794): #21     RenderOffstage.performLayout 
package:flutter/…/rendering/proxy_box.dart:3074

能否请您看一下本文中的代码,它简短而简单。并告诉我出了什么问题?

标签: androidkotlinflutter

解决方案


请打印 flutter doctor -v 的信息,可能 1.5.4hotfix 不能在平台视图下工作。


推荐阅读