You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter webview_flutter iOS端ARC语义错误求助:setInspectable:方法不存在

解决webview_flutter 4.2.0 iOS运行时的setInspectable:语义错误

以下是几种可行的解决方法:

  • 升级依赖版本
    webview_flutter 4.2.0搭配的webview_flutter_wkwebview 3.6.0存在API兼容问题,FWFWebView类未声明setInspectable:方法。直接升级依赖到匹配的稳定版本即可解决:

    1. 在项目根目录执行命令:flutter pub upgrade webview_flutter
    2. 或者手动修改pubspec.yaml中webview_flutter的版本为最新稳定版,再执行flutter pub get
  • 清理缓存并重新构建
    旧缓存的依赖代码可能导致冲突,按以下步骤清理后重新构建:

    1. 执行flutter clean清理Flutter项目缓存
    2. 删除iOS端Pod缓存:rm -rf ios/Pods ios/Podfile.lock
    3. 重新拉取依赖:flutter pub get
    4. 进入iOS目录执行pod install
    5. 回到项目根目录运行flutter run
  • 临时修改iOS原生代码(不推荐长期使用)
    如果暂时无法升级依赖,可手动修正报错代码:

    1. 找到报错文件:/Users/xxx/.pub-cache/hosted/pub.dev/webview_flutter_wkwebview-3.6.0/ios/Classes/FWFWebViewHostApi.m
    2. 定位到第203行的[self.webView setInspectable:value];代码,替换为WKWebView原生的属性赋值方式,并保留版本判断:
      if (@available(iOS 16.4, *)) {
          self.webView.inspectable = value;
      }
      

    注意:修改pub缓存中的代码会在后续依赖更新时被覆盖,仅作为临时应急方案。

  • 检查iOS部署目标版本
    确认Xcode中项目的iOS Deployment Target是否满足依赖要求:

    1. 打开iOS项目的Runner.xcworkspace
    2. 在项目设置中查看Deployment Target,确保不低于webview_flutter要求的最低版本(当前为iOS 11.0),若代码中针对iOS 16.4做了判断,可根据实际需求调整部署目标或版本判断逻辑

内容的提问来源于stack exchange,提问作者KeroJohn97

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 00:22:19