Fixing Xcode 16 Issue: Forked flutter_inappwebview and my_fatoorah as Workarounds
2 min readBy Aerotix

Recently, many Flutter developers encountered issues with flutter_inappwebview after upgrading to Xcode 16. The core problem arises when using the evaluateJavascript function, causing errors during the build or runtime, especially for iOS builds. If you’re working with a package that relies on flutter_inappwebview, this issue can significantly impact the performance of your app or lead to breaking changes.
In this article, I’ll walk you through the workaround I implemented by forking the flutter_inappwebview package to fix this issue. I’ll also show how this workaround helps with the my_fatoorah package, which depends on flutter_inappwebview for handling in-app web views during payment processing.
The Issue:
The primary issue stems from changes introduced in Xcode 16 that affect how JavaScript evaluation is handled in flutter_inappwebview, particularly when using the evaluateJavascript method. This breaks certain web-based functionalities, leading to failed interactions and errors, especially during critical app operations like payments.
Workaround Solution:
To address this, I created a fork of the flutter_inappwebview package, applying a fix that resolves the Xcode 16 issue. This temporary workaround ensures that developers can continue using the package without interruptions while waiting for an official update to the flutter_inappwebview package.
How to Use the Forked Version:
If you’re using flutter_inappwebview and encountering issues with Xcode 16, you can integrate our fork of the package as a temporary solution. You can add the following to your pubspec.yaml:
flutter_inappwebview:
git:
url: https://github.com/aerotix/flutter_inappwebview.git
ref: masterThis fork contains the necessary changes to bypass the Xcode 16 issues with evaluateJavascript.
Impact on my_fatoorah:
The my_fatoorah package, a widely used payment gateway for Flutter, also relies on flutter_inappwebview. Due to the Xcode 16 issue, developers may face errors when processing payments using this package. As a result, I also forked the my_fatoorah package to resolve the errors in payment flow that stem from the flutter_inappwebview issue.
To use the fixed version of my_fatoorah, you can add the following to your pubspec.yaml:
my_fatoorah:
git:
url: https://github.com/aerotix/my_fatoorah.git
ref: masterConclusion:
This fork provides a temporary workaround for the Xcode 16 issue with flutter_inappwebview. It’s important to stay updated on the official repositories for both packages to incorporate any official fixes once they are released. In the meantime, you can use these forks to ensure that your app continues to run smoothly, especially when handling crucial features like payments through my_fatoorah.
Feel free to share your thoughts or reach out if you encounter any further issues. Hopefully, this fix can help you maintain smooth functionality in your apps until the official patches are deployed.
Fork Links:
Forked flutter_inappwebview: GitHub Link
Forked my_fatoorah: GitHub Link