Skip to content

[webview_flutter_wkwebview] ARC Semantic Issue (Xcode): No visible @interface for 'FWFWebView' declares the selector 'setInspectable:' #129587

Closed
flutter/packages
#4340

Description

@SPodjasek

Is there an existing issue for this?

Steps to reproduce

  1. Upgrade webview_flutter_wkwebview to 3.6.0

Expected results

Successful build

Actual results

Builds are failing with following error:

flutter \
    build ipa \
    --release \
    --no-codesign \
    --no-pub \
    --build-name=2.0.0 \
    --build-number=20141
  shell: /bin/bash -e {0}
  env:
    SSH_AUTH_SOCK: ***
    SSH_AGENT_PID: ***
    FLUTTER_ROOT: /Users/runner/hostedtoolcache/flutter/stable-3.10.5-x6[4] ***
    PUB_CACHE: /Users/runner/hostedtoolcache/flutter/stable-3.10.[5] ***

Warning: Building for device with codesigning disabled. You will have to manually codesign before deploying to device.
Archiving ***...
Adding input path to Thin Binary build phase.
Running pod install...                                              4.9s
Running Xcode build...                                          
Xcode archive done.                                         25.[8](https://github.com/***)s
Failed to build iOS app
ARC Semantic Issue (Xcode): No visible @interface for 'FWFWebView' declares the selector 'setInspectable:'
/Users/runner/hostedtoolcache/flutter/stable-3.[10]***

Encountered error while archiving for device.
Error: Process completed with exit code 1.

Some irrelevant strings were replaced with ***

Code sample

Code sample

This issue is webview package related so I don't believe any code sample is applicable. Possibly any example app using webview should fail build for iOS.

Screenshots or Video

No response

Logs

No response

Flutter Doctor output

Doctor output
[✓] Flutter (Channel stable, 3.10.5, on macOS 12.6.6 21G646 darwin-x64, locale en)
    • Flutter version 3.10.5 on channel stable at /Users/runner/hostedtoolcache/flutter/stable-3.10.5-x64
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 796c8ef792 (13 days ago), 2023-06-13 15:51:02 -0700
    • Engine revision 45f6e00911
    • Dart version 3.0.5
    • DevTools version 2.23.1

[!] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/runner/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/runner/Library/Android/sdk
    • ANDROID_SDK_ROOT = /Users/runner/Library/Android/sdk
    • Java binary at: /Users/runner/hostedtoolcache/Java_Temurin-Hotspot_jdk/8.0.372-7/x64/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (Temurin)(build 1.8.0_372-b07)
    ! Some Android licenses not accepted. To resolve this, run: flutter doctor --android-licenses

[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
    • Xcode at /Applications/Xcode_14.2.app/Contents/Developer
    • Build 14C18
    • CocoaPods version 1.12.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[!] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/docs/get-started/install/macos#android-setup for detailed instructions).

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • macOS 12.6.6 21G6[46]*** darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 114.0.[57]***35.133

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 2 categories.
The Flutter CLI developer tool uses Google Analytics to report usage and diagnostic data
along with package dependencies, and crash reporting to send basic crash reports.
This data is used to help improve the Dart platform, Flutter framework, and related tools.

Telemetry is not sent on the very first run.
To disable reporting of telemetry, run this terminal command:

flutter --disable-telemetry.
If you opt out of telemetry, an opt-out event will be sent,
and then no further information will be sent.
This data is collected in accordance with the
Google Privacy Policy (https://policies.google.com/privacy).```

</details>

Activity

  1. SPodjasek commented on Jun 26, 2023

    @SPodjasek
    ContributorAuthor

    I can confirm that after reverting from:

      webview_flutter_wkwebview:
        dependency: transitive
        description:
          name: webview_flutter_wkwebview
          sha256: "7b203961d6830f3e5ed1df4c4f0493fea8388a46c4d43716167c4a8ba8ecbe83"
          url: "https://pub.dev"
        source: hosted
        version: "3.6.0"

    to

      webview_flutter_wkwebview:
        dependency: transitive
        description:
          name: webview_flutter_wkwebview
          sha256: ecc9e9ea15216afc5ba3b1f14aa19414ceba526e57b19cebd970bfa91a0f4058
          url: "https://pub.dev"
        source: hosted
        version: "3.5.0"

    builds are successful again.

  2. added
    c: regressionIt was better in the past than it is now
    platform-iosiOS applications specifically
    packageflutter/packages repository. See also p: labels.
    P1High-priority issues at the top of the work list
    on Jun 27, 2023
  3. stuartmorgan-g commented on Jun 27, 2023

    @stuartmorgan-g
    Contributor

    We'll need to __IPHONE_OS_VERSION_MAX_ALLOWED-gate the new codepath to support older versions of Xcode that are still supported by the tool. @bparrishMines can you add that?

    (The issue here is that the new API is 16.4+, and Xcode 14.2 doesn't have the iOS 16.4 SDK, so we need both a runtime check and and compile-time check.)

  4. thangldvn commented on Jun 27, 2023

    @thangldvn

    We'll need to __IPHONE_OS_VERSION_MAX_ALLOWED-gate the new codepath to support older versions of Xcode that are still supported by the tool. @bparrishMines can you add that?

    (The issue here is that the new API is 16.4+, and Xcode 14.2 doesn't have the iOS 16.4 SDK, so we need both a runtime check and and compile-time check.)

    how can i fix the issue when i am using macos monterey, which can not update xcode to 14.2

  5. SPodjasek commented on Jun 27, 2023

    @SPodjasek
    ContributorAuthor

    @thangldvn I see that my GitHub macOS runners are also on Monterey - so if you lock webview_flutter_wkwebview package to v3.5.0 it should work. Breaking change came with 3.6.0.

  6. thangldvn commented on Jun 27, 2023

    @thangldvn

    @SPodjasek actually i use package, webview_flutter, which depends on webview_flutter_wkwebview. when i run flutter pub get, the pubspec.lock files are always is webview_flutter_wkwebview version 3.6.0. how can i fix this

  7. SPodjasek commented on Jun 27, 2023

    @SPodjasek
    ContributorAuthor

    @thangldvn Use dependency_overrides like this:

    dependency_overrides:
      webview_flutter_wkwebview: '3.5.0'

    even though webview_flutter_wkwebview isn't your direct dependency it will force it's version to 3.5.0. After this issue gets a fix just remove this override.

  8. HarshuPatel007 commented on Jun 30, 2023

    @HarshuPatel007
  9. added a commit that references this issue on Jul 2, 2023
  10. github-actions commented on Jul 18, 2023

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  11. locked as resolved and limited conversation to collaborators on Jul 18, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

P1High-priority issues at the top of the work listc: regressionIt was better in the past than it is nowp: webviewThe WebView pluginpackageflutter/packages repository. See also p: labels.platform-iosiOS applications specifically

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions