flutter_inappwebview
A Flutter plugin that allows you to add an inline webview, to use an headless webview, and to open an in-app browser window.
6.1.5
1.2M downloads/mo
#317 most downloaded on pub.dev
pichillilorenzo/flutter_inappwebview
What this package is like to depend on
Last release 6 months ago
04 Feb 2026
Ships unpredictably
gaps range from 8 days to 1.2 years
Nearly every release is documented
notes for 79 of 79 stable releases
Nothing withdrawn
no release was ever pulled
7 years old
123 releases · first in 2019
1 release in the last 12 months
see the full history below
Release timeline
123 releases · Nov 2019 to Feb 2026Releases
latest 60 of 123-
6.2.0-beta.304 Feb 2026 pre-releaseRelease notes
Open source →- Added Linux support
- Updated dependencies to the latest versions for all platform implementations:
flutter_inappwebview_platform_interface:^1.4.0-beta.2->^1.4.0-beta.3flutter_inappwebview_android:^1.2.0-beta.2->^1.2.0-beta.3flutter_inappwebview_ios:^1.2.0-beta.2->^1.2.0-beta.3flutter_inappwebview_macos:^1.2.0-beta.2->^1.2.0-beta.3flutter_inappwebview_web:^1.2.0-beta.2->^1.2.0-beta.3flutter_inappwebview_windows:^0.7.0-beta.2->^0.7.0-beta.3flutter_inappwebview_linux:^0.1.0-beta.1
- Added
InAppWebViewController.getFaviconwrapper withfaviconImageFormatsupport. - Fixed "When useShouldInterceptAjaxRequest is true, some ajax requests doesn't work" #2197
- Mapped
isClassSupported,isPropertySupported,isMethodSupportedplatform interface static methods to the corresponding plugin classes such asInAppWebViewController,InAppWebView,InAppBrowser, etc., in order to check if a class, property, or method is supported by the platform at runtime - Updated code generator
- Minimum Dart SDK
^3.8.0 - Minimum Flutter SDK
>=3.32.0
Platform Interface
- Updated
flutter_inappwebview_internal_annotationsdependency from^1.2.0to^1.3.0 - Added
isClassSupported,isPropertySupported,isMethodSupportedstatic methods for all main classes, such asPlatformInAppWebViewController,InAppWebViewSettings,PlatformInAppBrowser, etc., in order to check if a class, property, or method is supported by the platform at runtime - Added
isSupportedmethod to all custom enum classes - Added
saveState,restoreState,requestEnterFullscreen,requestExitFullscreen,setVisible,setTargetRefreshRate,getTargetRefreshRate,requestPointerLock,requestPointerUnlock,getScreenScale,setScreenScale,isVisible,getFrameId,getFavicon,showSaveAsUI,getMemoryUsageTargetLevel,setMemoryUsageTargetLevelmethods toPlatformInAppWebViewControllerclass - Added
useOnAjaxReadyStateChange,useOnAjaxProgress,useOnShowFileChooser,corsAllowlist,itpEnabled,darkMode,disableAnimations,fontAntialias,fontHintingStyle,fontSubpixelLayout,fontDPI,cursorBlinkTime,doubleClickDistance,doubleClickTime,dragThreshold,keyRepeatDelay,keyRepeatInterval,disableWebSecurity,enableWebRTC,webRTCUdpPortsRange,javaScriptCanAccessClipboard,allowModalDialogs,enableMedia,enableEncryptedMedia,enableMediaCapabilities,enableMockCaptureDevices,mediaContentTypesRequiringHardwareSupport,enableJavaScriptMarkup,enable2DCanvasAcceleration,allowTopNavigationToDataUrlsproperties toInAppWebViewSettings - Added
onShowFileChooser,onContentLoading,onDOMContentLoaded,onLaunchingExternalUriScheme,onFaviconChanged,onNotificationReceived,onSaveAsUIShowing,onSaveFileSecurityCheckStarting,onScreenCaptureStartingWebView events - Added
PlatformWebNotificationControllerclass - Update code documentation
- Deprecated
onReceivedIconin favor ofonFaviconChanged
Android Platform
- Updated native dependencies:
- implementation from
'androidx.webkit:webkit:1.12.0'to'androidx.webkit:webkit:1.14.0' - implementation from
'androidx.browser:browser:1.8.0'to'androidx.browser:browser:1.9.0' - implementation from
'androidx.appcompat:appcompat:1.6.1'to'androidx.appcompat:appcompat:1.7.1' - implementation from
'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'to'androidx.swiperefreshlayout:swiperefreshlayout:1.2.0'
- implementation from
- Updated android native
compileOptionstoJavaVersion.VERSION_17 - Implemented
saveState,restoreStateInAppWebViewController methods - Implemented
onShowFileChooserWebView event - Updated InAppBrowser toolbar top
- Merged "Android: implemented PlatformPrintJobController.onComplete" #2216 (thanks to Doflatango)
- Fixed "When useShouldInterceptAjaxRequest is true, some ajax requests doesn't work" #2197
- Merged "Fixed recursive calling toMap in AndroidInternalStoragePathHandler" #2452 (thanks to roberthofstra)
- Fixed recursive
toMapcall forAndroidInternalStoragePathHandler#2451 - Fixed "Error when updating webview settings Android in v6.2.0-beta.2" #2449
- Fixed "[Android] Upgrade to AGP 9" #2765
- Fixed "update android apg version to 8.9.1 or higer" #2761
- Fixed "InAppWebViewController.goTo" implementation
- Merged "fix #2484, Remove not-empty assert for Cookie.value" #2486 (thanks to laishere)
macOS and iOS Platforms
- Implemented
saveState,restoreStateInAppWebViewController methods - Implemented
PlatformProxyControllerclass - Add Swift Package Manager support #2409
- Fixed "[iOS] Webview opened with windowId does not receive javascript handler callback." #2393
- Fixed internal javascript callback handlers when the WebView has windowId not null
- Fixed crash of unhandled
onPrintRequestWebView event - Fixed "When useShouldInterceptAjaxRequest is true, some ajax requests doesn't work" #2197
- Fixed "iOS App rejected by apple for violating Guideline 2.5.1 - Performance - Software Requirements | Flutter 3.35.x seems to use non-public or deprecated APIs" #2754
- Fixed "InAppWebViewController.goTo" implementation
- Merged "Add proxy support for iOS" #2362 (thanks to yerkejs)
- Merged "🐛 fix MacOS: when using the
WebMessageListeneronPostMessagemethod, the message parameter is unexpectedly empty" #2481 (thanks to imoyakin) - Merged "fix #2484, Remove not-empty assert for Cookie.value" #2486 (thanks to laishere)
- Merged "Fix gesture recognition delay prevention for latest Flutter versions" #2538 (thanks to muccy-timeware)
Windows
- Updated Microsoft.Web.WebView2 SDK version from
1.0.2849.39to1.0.3650.58 - Implemented
getFrameId,getFavicon,showSaveAsUI,getMemoryUsageTargetLevel,setMemoryUsageTargetLevelInAppWebViewController method - Added support for
onEnterFullscreen,onExitFullscreen,onContentLoading,onDOMContentLoaded,onLaunchingExternalUriScheme,onFaviconChanged,onNotificationReceived,onSaveAsUIShowing,onSaveFileSecurityCheckStarting,onScreenCaptureStartingWebView events. - Added native FindInteractionController implementation using WebView2
ICoreWebView2Find. - Implemented
setFindOptionsFindInteractionController method - Implemented
PlatformWebNotificationControllerfeature - Merged "windows: fix WebViewEnvironment dispose crash" #2433 (thanks to GooRingX)
- Merged "fix #2484, Remove not-empty assert for Cookie.value" #2486 (thanks to laishere)
- Merged "Prevent Unpredictable Close On Windows" #2543 (thanks to momadvisor)
Web
- Updated
onCreateWindowWebView event - Implemented
onCloseWindow,onCallJsHandlerWebView events - Implemented
addJavaScriptHandler,removeJavaScriptHandler,hasJavaScriptHandler,addUserScript,addUserScripts,removeUserScript,removeUserScriptsByGroupName,removeUserScripts,hasUserScriptInAppWebViewController methods - Implemented
setJavaScriptBridgeName,getJavaScriptBridgeName,getDefaultUserAgentInAppWebViewController static methods - Implemented
javaScriptHandlersOriginAllowList,javaScriptBridgeEnabled,javaScriptBridgeOriginAllowList,hasJavaScriptHandler,addUserScript,addUserScripts,removeUserScriptofInAppWebViewSettings - Merged "fix #2484, Remove not-empty assert for Cookie.value" #2486 (thanks to laishere)
Linux
- Initial implementation
Release notes
Open source →- Added Linux support
- Updated dependencies to the latest versions for all platform implementations:
flutter_inappwebview_platform_interface:^1.4.0-beta.2->^1.4.0-beta.3flutter_inappwebview_android:^1.2.0-beta.2->^1.2.0-beta.3flutter_inappwebview_ios:^1.2.0-beta.2->^1.2.0-beta.3flutter_inappwebview_macos:^1.2.0-beta.2->^1.2.0-beta.3flutter_inappwebview_web:^1.2.0-beta.2->^1.2.0-beta.3flutter_inappwebview_windows:^0.7.0-beta.2->^0.7.0-beta.3flutter_inappwebview_linux:^0.1.0-beta.1
- Added
InAppWebViewController.getFaviconwrapper withfaviconImageFormatsupport. - Fixed "When useShouldInterceptAjaxRequest is true, some ajax requests doesn't work" #2197
- Mapped
isClassSupported,isPropertySupported,isMethodSupportedplatform interface static methods to the corresponding plugin classes such asInAppWebViewController,InAppWebView,InAppBrowser, etc., in order to check if a class, property, or method is supported by the platform at runtime - Updated code generator
- Minimum Dart SDK
^3.8.0 - Minimum Flutter SDK
>=3.32.0
Platform Interface
- Updated
flutter_inappwebview_internal_annotationsdependency from^1.2.0to^1.3.0 - Added
isClassSupported,isPropertySupported,isMethodSupportedstatic methods for all main classes, such asPlatformInAppWebViewController,InAppWebViewSettings,PlatformInAppBrowser, etc., in order to check if a class, property, or method is supported by the platform at runtime - Added
isSupportedmethod to all custom enum classes - Added
saveState,restoreState,requestEnterFullscreen,requestExitFullscreen,setVisible,setTargetRefreshRate,getTargetRefreshRate,requestPointerLock,requestPointerUnlock,getScreenScale,setScreenScale,isVisible,getFrameId,getFavicon,showSaveAsUI,getMemoryUsageTargetLevel,setMemoryUsageTargetLevelmethods toPlatformInAppWebViewControllerclass - Added
useOnAjaxReadyStateChange,useOnAjaxProgress,useOnShowFileChooser,corsAllowlist,itpEnabled,darkMode,disableAnimations,fontAntialias,fontHintingStyle,fontSubpixelLayout,fontDPI,cursorBlinkTime,doubleClickDistance,doubleClickTime,dragThreshold,keyRepeatDelay,keyRepeatInterval,disableWebSecurity,enableWebRTC,webRTCUdpPortsRange,javaScriptCanAccessClipboard,allowModalDialogs,enableMedia,enableEncryptedMedia,enableMediaCapabilities,enableMockCaptureDevices,mediaContentTypesRequiringHardwareSupport,enableJavaScriptMarkup,enable2DCanvasAcceleration,allowTopNavigationToDataUrlsproperties toInAppWebViewSettings - Added
onShowFileChooser,onContentLoading,onDOMContentLoaded,onLaunchingExternalUriScheme,onFaviconChanged,onNotificationReceived,onSaveAsUIShowing,onSaveFileSecurityCheckStarting,onScreenCaptureStartingWebView events - Added
PlatformWebNotificationControllerclass - Update code documentation
- Deprecated
onReceivedIconin favor ofonFaviconChanged
Android Platform
- Updated native dependencies:
- implementation from
'androidx.webkit:webkit:1.12.0'to'androidx.webkit:webkit:1.14.0' - implementation from
'androidx.browser:browser:1.8.0'to'androidx.browser:browser:1.9.0' - implementation from
'androidx.appcompat:appcompat:1.6.1'to'androidx.appcompat:appcompat:1.7.1' - implementation from
'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'to'androidx.swiperefreshlayout:swiperefreshlayout:1.2.0'
- implementation from
- Updated android native
compileOptionstoJavaVersion.VERSION_17 - Implemented
saveState,restoreStateInAppWebViewController methods - Implemented
onShowFileChooserWebView event - Updated InAppBrowser toolbar top
- Merged "Android: implemented PlatformPrintJobController.onComplete" #2216 (thanks to Doflatango)
- Fixed "When useShouldInterceptAjaxRequest is true, some ajax requests doesn't work" #2197
- Merged "Fixed recursive calling toMap in AndroidInternalStoragePathHandler" #2452 (thanks to roberthofstra)
- Fixed recursive
toMapcall forAndroidInternalStoragePathHandler#2451 - Fixed "Error when updating webview settings Android in v6.2.0-beta.2" #2449
- Fixed "[Android] Upgrade to AGP 9" #2765
- Fixed "update android apg version to 8.9.1 or higer" #2761
- Fixed "InAppWebViewController.goTo" implementation
- Merged "fix #2484, Remove not-empty assert for Cookie.value" #2486 (thanks to laishere)
macOS and iOS Platforms
- Implemented
saveState,restoreStateInAppWebViewController methods - Implemented
PlatformProxyControllerclass - Add Swift Package Manager support #2409
- Fixed "[iOS] Webview opened with windowId does not receive javascript handler callback." #2393
- Fixed internal javascript callback handlers when the WebView has windowId not null
- Fixed crash of unhandled
onPrintRequestWebView event - Fixed "When useShouldInterceptAjaxRequest is true, some ajax requests doesn't work" #2197
- Fixed "iOS App rejected by apple for violating Guideline 2.5.1 - Performance - Software Requirements | Flutter 3.35.x seems to use non-public or deprecated APIs" #2754
- Fixed "InAppWebViewController.goTo" implementation
- Merged "Add proxy support for iOS" #2362 (thanks to yerkejs)
- Merged "🐛 fix MacOS: when using the
WebMessageListeneronPostMessagemethod, the message parameter is unexpectedly empty" #2481 (thanks to imoyakin) - Merged "fix #2484, Remove not-empty assert for Cookie.value" #2486 (thanks to laishere)
- Merged "Fix gesture recognition delay prevention for latest Flutter versions" #2538 (thanks to muccy-timeware)
Windows
- Updated Microsoft.Web.WebView2 SDK version from
1.0.2849.39to1.0.3650.58 - Implemented
getFrameId,getFavicon,showSaveAsUI,getMemoryUsageTargetLevel,setMemoryUsageTargetLevelInAppWebViewController method - Added support for
onEnterFullscreen,onExitFullscreen,onContentLoading,onDOMContentLoaded,onLaunchingExternalUriScheme,onFaviconChanged,onNotificationReceived,onSaveAsUIShowing,onSaveFileSecurityCheckStarting,onScreenCaptureStartingWebView events. - Added native FindInteractionController implementation using WebView2
ICoreWebView2Find. - Implemented
setFindOptionsFindInteractionController method - Implemented
PlatformWebNotificationControllerfeature - Merged "windows: fix WebViewEnvironment dispose crash" #2433 (thanks to GooRingX)
- Merged "fix #2484, Remove not-empty assert for Cookie.value" #2486 (thanks to laishere)
- Merged "Prevent Unpredictable Close On Windows" #2543 (thanks to momadvisor)
Web
- Updated
onCreateWindowWebView event - Implemented
onCloseWindow,onCallJsHandlerWebView events - Implemented
addJavaScriptHandler,removeJavaScriptHandler,hasJavaScriptHandler,addUserScript,addUserScripts,removeUserScript,removeUserScriptsByGroupName,removeUserScripts,hasUserScriptInAppWebViewController methods - Implemented
setJavaScriptBridgeName,getJavaScriptBridgeName,getDefaultUserAgentInAppWebViewController static methods - Implemented
javaScriptHandlersOriginAllowList,javaScriptBridgeEnabled,javaScriptBridgeOriginAllowList,hasJavaScriptHandler,addUserScript,addUserScripts,removeUserScriptofInAppWebViewSettings - Merged "fix #2484, Remove not-empty assert for Cookie.value" #2486 (thanks to laishere)
Linux
- Initial implementation
-
6.2.0-beta.226 Nov 2024 pre-releaseRelease notes
Open source →- Updated dependencies to the latest versions for all platform implementations:
flutter_inappwebview_platform_interface:^1.4.0-beta.1->^1.4.0-beta.2flutter_inappwebview_android:^1.2.0-beta.1->^1.2.0-beta.2flutter_inappwebview_ios:^1.2.0-beta.1->^1.2.0-beta.2flutter_inappwebview_macos:^1.2.0-beta.1->^1.2.0-beta.2flutter_inappwebview_web:^1.2.0-beta.1->^1.2.0-beta.2flutter_inappwebview_windows:^0.7.0-beta.1->^0.7.0-beta.2
- Fixed specific URLAuthenticationChallenge type for
onReceivedHttpAuthRequest,onReceivedServerTrustAuthRequest,onReceivedClientCertRequestevents of HeadlessInAppWebView - Fixed missing return type for
InAppWebViewController.getJavaScriptBridgeNamestatic method
Platform Interface
- Updated
flutter_inappwebview_internal_annotationsdependency from^1.1.1to^1.2.0 - Updated
fromMapstatic method andtoMapmethod implementations - Updated all WebView events with return type
Futureto typeFutureOrin order to not force the usage ofasynckeyword - Added
byName,name,asNameMapcustom enum classes methods - Added
statusBarEnabled,browserAcceleratorKeysEnabled,generalAutofillEnabled,passwordAutosaveEnabled,isPinchZoomEnabled,hiddenPdfToolbarItems,reputationCheckingRequired,nonClientRegionSupportEnabled,alpha,isUserInteractionEnabledproperties toInAppWebViewSettings - Added
isInterfaceSupported,getProcessInfos,getFailureReportFolderPathmethods toPlatformWebViewEnvironmentclass - Added
isInterfaceSupported,setInputMethodEnabled,hideInputMethod,showInputMethodmethods toPlatformInAppWebViewControllerclass - Added
exclusiveUserDataFolderAccess,isCustomCrashReportingEnabled,enableTrackingPrevention,areBrowserExtensionsEnabled,channelSearchKind,releaseChannels,scrollbarStyleproperties toWebViewEnvironmentSettings - Added
onDownloadStartingWebView event and deprecatedonDownloadStartRequestevent - Added
onNewBrowserVersionAvailable,onBrowserProcessExited,onProcessInfosChangedevents toPlatformWebViewEnvironmentclass - Fixed missing PrintJobOrientation android values
Android Platform
- Implemented
hideInputMethod,showInputMethodInAppWebViewController methods - Implemented
isUserInteractionEnabled,alphaproperties ofInAppWebViewSettings - Merged "Show / Hide / Disable / Enable soft Keyboard Input (Android & iOS)" #2408 (thanks to Mecharyry)
- Fixed "[Android] PrintJobOrientation _TypeError (type 'Null' is not a subtype of type 'int')" #2413
- Fixed "Accessibility Android" #1694
- Fixed "Automatic font scale according to accessibility option 'font size' of device does not work on Android" #540
- Fixed "callHandler method is not injected into InAppBrowser" #1973
iOS Platform
- Implemented
setInputMethodEnabled,hideInputMethodInAppWebViewController methods - Implemented
isUserInteractionEnabled,alphaproperties ofInAppWebViewSettings - Merged "Show / Hide / Disable / Enable soft Keyboard Input (Android & iOS)" #2408 (thanks to Mecharyry)
- Fixed "In iOS version 17.2, when moving the input focus in a WebView, an unknown area appears at the top of the screen." #1947
macOS Platform
- Implemented
alphaproperty ofInAppWebViewSettings
Windows Platform
- Updated Microsoft.Web.WebView2 SDK version from
1.0.2792.45to1.0.2849.39 - Implemented
disableDefaultErrorPage,statusBarEnabled,browserAcceleratorKeysEnabled,generalAutofillEnabled,passwordAutosaveEnabled,isPinchZoomEnabled,allowsBackForwardNavigationGestures,hiddenPdfToolbarItems,reputationCheckingRequired,nonClientRegionSupportEnabledproperties ofInAppWebViewSettings - Implemented
isInterfaceSupported,getProcessInfos,getFailureReportFolderPathWebViewEnvironment methods - Implemented
isInterfaceSupported,getZoomScaleInAppWebViewController method - Implemented
onDownloadStarting,onAcceleratorKeyPressedWebView event - Implemented
exclusiveUserDataFolderAccess,isCustomCrashReportingEnabled,enableTrackingPrevention,areBrowserExtensionsEnabled,channelSearchKind,releaseChannels,scrollbarStyleproperties ofWebViewEnvironmentSettings - Implemented
onNewBrowserVersionAvailable,onBrowserProcessExited,onProcessInfosChangedWebViewEnvironment events - Send mouse leave region event to native view
- Fixed wrong channel name when creating a
WebViewEnvironmentinstance - Fixed "[Windows] Has an overlay on the desktop when the application is minimized" #2402
- Fixed "[Windows] missing implementation of onPermissionRequest event will cause crash when requested by the webpage" #2404
- Fixed "Windows: getCookies return empty list" #2314
Release notes
Open source →- Updated dependencies to the latest versions for all platform implementations:
flutter_inappwebview_platform_interface:^1.4.0-beta.1->^1.4.0-beta.2flutter_inappwebview_android:^1.2.0-beta.1->^1.2.0-beta.2flutter_inappwebview_ios:^1.2.0-beta.1->^1.2.0-beta.2flutter_inappwebview_macos:^1.2.0-beta.1->^1.2.0-beta.2flutter_inappwebview_web:^1.2.0-beta.1->^1.2.0-beta.2flutter_inappwebview_windows:^0.7.0-beta.1->^0.7.0-beta.2
- Fixed specific URLAuthenticationChallenge type for
onReceivedHttpAuthRequest,onReceivedServerTrustAuthRequest,onReceivedClientCertRequestevents of HeadlessInAppWebView - Fixed missing return type for
InAppWebViewController.getJavaScriptBridgeNamestatic method
Platform Interface
- Updated
flutter_inappwebview_internal_annotationsdependency from^1.1.1to^1.2.0 - Updated
fromMapstatic method andtoMapmethod implementations - Updated all WebView events with return type
Futureto typeFutureOrin order to not force the usage ofasynckeyword - Added
byName,name,asNameMapcustom enum classes methods - Added
statusBarEnabled,browserAcceleratorKeysEnabled,generalAutofillEnabled,passwordAutosaveEnabled,isPinchZoomEnabled,hiddenPdfToolbarItems,reputationCheckingRequired,nonClientRegionSupportEnabled,alpha,isUserInteractionEnabledproperties toInAppWebViewSettings - Added
isInterfaceSupported,getProcessInfos,getFailureReportFolderPathmethods toPlatformWebViewEnvironmentclass - Added
isInterfaceSupported,setInputMethodEnabled,hideInputMethod,showInputMethodmethods toPlatformInAppWebViewControllerclass - Added
exclusiveUserDataFolderAccess,isCustomCrashReportingEnabled,enableTrackingPrevention,areBrowserExtensionsEnabled,channelSearchKind,releaseChannels,scrollbarStyleproperties toWebViewEnvironmentSettings - Added
onDownloadStartingWebView event and deprecatedonDownloadStartRequestevent - Added
onNewBrowserVersionAvailable,onBrowserProcessExited,onProcessInfosChangedevents toPlatformWebViewEnvironmentclass - Fixed missing PrintJobOrientation android values
Android Platform
- Implemented
hideInputMethod,showInputMethodInAppWebViewController methods - Implemented
isUserInteractionEnabled,alphaproperties ofInAppWebViewSettings - Merged "Show / Hide / Disable / Enable soft Keyboard Input (Android & iOS)" #2408 (thanks to Mecharyry)
- Fixed "[Android] PrintJobOrientation _TypeError (type 'Null' is not a subtype of type 'int')" #2413
- Fixed "Accessibility Android" #1694
- Fixed "Automatic font scale according to accessibility option 'font size' of device does not work on Android" #540
- Fixed "callHandler method is not injected into InAppBrowser" #1973
iOS Platform
- Implemented
setInputMethodEnabled,hideInputMethodInAppWebViewController methods - Implemented
isUserInteractionEnabled,alphaproperties ofInAppWebViewSettings - Merged "Show / Hide / Disable / Enable soft Keyboard Input (Android & iOS)" #2408 (thanks to Mecharyry)
- Fixed "In iOS version 17.2, when moving the input focus in a WebView, an unknown area appears at the top of the screen." #1947
macOS Platform
- Implemented
alphaproperty ofInAppWebViewSettings
Windows Platform
- Updated Microsoft.Web.WebView2 SDK version from
1.0.2792.45to1.0.2849.39 - Implemented
disableDefaultErrorPage,statusBarEnabled,browserAcceleratorKeysEnabled,generalAutofillEnabled,passwordAutosaveEnabled,isPinchZoomEnabled,allowsBackForwardNavigationGestures,hiddenPdfToolbarItems,reputationCheckingRequired,nonClientRegionSupportEnabledproperties ofInAppWebViewSettings - Implemented
isInterfaceSupported,getProcessInfos,getFailureReportFolderPathWebViewEnvironment methods - Implemented
isInterfaceSupported,getZoomScaleInAppWebViewController method - Implemented
onDownloadStarting,onAcceleratorKeyPressedWebView event - Implemented
exclusiveUserDataFolderAccess,isCustomCrashReportingEnabled,enableTrackingPrevention,areBrowserExtensionsEnabled,channelSearchKind,releaseChannels,scrollbarStyleproperties ofWebViewEnvironmentSettings - Implemented
onNewBrowserVersionAvailable,onBrowserProcessExited,onProcessInfosChangedWebViewEnvironment events - Send mouse leave region event to native view
- Fixed wrong channel name when creating a
WebViewEnvironmentinstance - Fixed "[Windows] Has an overlay on the desktop when the application is minimized" #2402
- Fixed "[Windows] missing implementation of onPermissionRequest event will cause crash when requested by the webpage" #2404
- Fixed "Windows: getCookies return empty list" #2314
- Updated dependencies to the latest versions for all platform implementations:
-
6.2.0-beta.105 Nov 2024 pre-releaseRelease notes
Open source →- Updated dependencies to the latest versions for all platform implementations:
flutter_inappwebview_platform_interface:^1.3.0->^1.4.0-beta.1flutter_inappwebview_android:^1.1.3->^1.2.0-beta.1flutter_inappwebview_ios:^1.1.2->^1.2.0-beta.1flutter_inappwebview_macos:^1.1.2->^1.2.0-beta.1flutter_inappwebview_web:^1.1.2->^1.2.0-beta.1flutter_inappwebview_windows:^0.6.0->^0.7.0-beta.1
Implemented security features to better manage access to the native javascript bridge.
Platform Interface
- Updated static
fromMapimplementation for some classes - Updated
kJavaScriptHandlerForbiddenNameslist - Added
PlatformInAppLocalhostServer.onDataparameter to set a custom on data server callback - Added
javaScriptBridgeEnabled,javaScriptBridgeOriginAllowList,javaScriptBridgeForMainFrameOnly,pluginScriptsOriginAllowList,pluginScriptsForMainFrameOnly,javaScriptHandlersOriginAllowList,javaScriptHandlersForMainFrameOnly,scrollMultiplierInAppWebViewSettings parameters - Added
setJavaScriptBridgeName,getJavaScriptBridgeNamestatic WebView controller methods - Added
requestFocusWebView method - Added
onProcessFailedWebView event - Added
regexToAllowSyncUrlLoadingAndroid-specific property toInAppWebViewSettings - Added
JavaScriptHandlerFunctionDatatype - Deprecated
JavaScriptHandlerCallbacktype in favor ofJavaScriptHandlerFunctiontype - Deprecated
InAppWebViewSettings.forceDarkandInAppWebViewSettings.forceDarkStrategyAndroid-only properties in favor ofInAppWebViewSettings.algorithmicDarkeningAllowed - Fixed X509Certificate PEM base64 decoding
- Fixed specific URLAuthenticationChallenge type for
onReceivedHttpAuthRequest,onReceivedServerTrustAuthRequest,onReceivedClientCertRequestevents
Android Platform
- Added
InAppWebViewController.enableSlowWholeDocumentDrawstatic method - Added
CookieManager.flushmethod - Added support for
UserScript.forMainFrameOnlyparameter - Implemented
requestFocusWebView method - Updated UserScript at document end implementation
- Updated
InAppWebViewController.takeScreenshotimplementation to support screenshot out of visible viewport whenInAppWebViewController.enableSlowWholeDocumentDrawis called - Fixed "After dispose a InAppWebViewKeepAlive using InAppWebViewController.disposeKeepAlive. NullPointerException is thrown when main activity enter destroyed state." #2025
- Fixed crash when trying to open InAppBrowser with R.menu.menu_main on release mode
- Fixed "android.webkit.WebSettingsWrapper cannot be cast to com.android.webview.chromium.ContentSettingsAdapter" #2397
- Merged "Prevent blank InAppBrowser Activity from being restored" #1984 (thanks to ShuheiSuzuki-07)
- Merged "Update Android Cookie Expiration date format to 24-hour format (HH)" #2389 (thanks to takuyaaaaaaahaaaaaa)
- Merged "[Android] allow sync navigation requests using a regular expression" #2008 (thanks to lyb5834)
macOS and iOS Platforms
- Implemented
requestFocusWebView method - Updated ConsoleLogJS internal PluginScript to main-frame only as using it on non-main frames could cause issues such as #1738
- Moved
WKUserContentControllerinitialization onpreWKWebViewConfigurationto fix possibleundefined is not an object (evaluating 'window.webkit.messageHandlers')javascript error - Added support for
UserScript.allowedOriginRulesparameter - Merged "change priority of DispatchQueue" #2322 (thanks to nnnlog)
- ios: Fixed
show,hidemethods andhiddensetting forInAppBrowser - macOS: Implemented also
clearFocusWebView method - macOS: Implemented workaround for "[macOS] Copy Shortcut does not work if TextField outside of WebView has focus" #2380
Windows Platform
- Updated
scrollMultiplierdefault value from 6 to 1 - Added support for
UserScript.allowedOriginRulesandUserScript.forMainFrameOnlyparameters - Implemented
onReceivedHttpAuthRequest,onReceivedClientCertRequest,onReceivedServerTrustAuthRequest,onRenderProcessGone,onRenderProcessUnresponsive,onWebContentProcessDidTerminate,onProcessFailedWebView events - Implemented
clearSslPreferencesWebView method - Fixed
get_optional_fl_map_valueimplementation inutils/flutter.h - Fixed "Error in transparentBackground handling in Windows" #2391
Web Platform
Release notes
Open source →- Updated dependencies to the latest versions for all platform implementations:
flutter_inappwebview_platform_interface:^1.3.0->^1.4.0-beta.1flutter_inappwebview_android:^1.1.3->^1.2.0-beta.1flutter_inappwebview_ios:^1.1.2->^1.2.0-beta.1flutter_inappwebview_macos:^1.1.2->^1.2.0-beta.1flutter_inappwebview_web:^1.1.2->^1.2.0-beta.1flutter_inappwebview_windows:^0.6.0->^0.7.0-beta.1
- Fixed specific URLAuthenticationChallenge type for
onReceivedHttpAuthRequest,onReceivedServerTrustAuthRequest,onReceivedClientCertRequestevents
Implemented security features to better manage access to the native javascript bridge.
Platform Interface
- Updated static
fromMapimplementation for some classes - Updated
kJavaScriptHandlerForbiddenNameslist - Added
PlatformInAppLocalhostServer.onDataparameter to set a custom on data server callback - Added
javaScriptBridgeEnabled,javaScriptBridgeOriginAllowList,javaScriptBridgeForMainFrameOnly,pluginScriptsOriginAllowList,pluginScriptsForMainFrameOnly,javaScriptHandlersOriginAllowList,javaScriptHandlersForMainFrameOnly,scrollMultiplierInAppWebViewSettings parameters - Added
setJavaScriptBridgeName,getJavaScriptBridgeNamestatic WebView controller methods - Added
requestFocusWebView method - Added
onProcessFailedWebView event - Added
regexToAllowSyncUrlLoadingAndroid-specific property toInAppWebViewSettings - Added
JavaScriptHandlerFunctionDatatype - Deprecated
JavaScriptHandlerCallbacktype in favor ofJavaScriptHandlerFunctiontype - Deprecated
InAppWebViewSettings.forceDarkandInAppWebViewSettings.forceDarkStrategyAndroid-only properties in favor ofInAppWebViewSettings.algorithmicDarkeningAllowed - Fixed X509Certificate PEM base64 decoding
Android Platform
- Added
InAppWebViewController.enableSlowWholeDocumentDrawstatic method - Added
CookieManager.flushmethod - Added support for
UserScript.forMainFrameOnlyparameter - Implemented
requestFocusWebView method - Updated UserScript at document end implementation
- Updated
InAppWebViewController.takeScreenshotimplementation to support screenshot out of visible viewport whenInAppWebViewController.enableSlowWholeDocumentDrawis called - Fixed "After dispose a InAppWebViewKeepAlive using InAppWebViewController.disposeKeepAlive. NullPointerException is thrown when main activity enter destroyed state." #2025
- Fixed crash when trying to open InAppBrowser with R.menu.menu_main on release mode
- Fixed "android.webkit.WebSettingsWrapper cannot be cast to com.android.webview.chromium.ContentSettingsAdapter" #2397
- Merged "Prevent blank InAppBrowser Activity from being restored" #1984 (thanks to ShuheiSuzuki-07)
- Merged "Update Android Cookie Expiration date format to 24-hour format (HH)" #2389 (thanks to takuyaaaaaaahaaaaaa)
- Merged "[Android] allow sync navigation requests using a regular expression" #2008 (thanks to lyb5834)
macOS and iOS Platforms
- Implemented
requestFocusWebView method - Updated ConsoleLogJS internal PluginScript to main-frame only as using it on non-main frames could cause issues such as #1738
- Moved
WKUserContentControllerinitialization onpreWKWebViewConfigurationto fix possibleundefined is not an object (evaluating 'window.webkit.messageHandlers')javascript error - Added support for
UserScript.allowedOriginRulesparameter - Merged "change priority of DispatchQueue" #2322 (thanks to nnnlog)
- ios: Fixed
show,hidemethods andhiddensetting forInAppBrowser - macOS: Implemented also
clearFocusWebView method - macOS: Implemented workaround for "[macOS] Copy Shortcut does not work if TextField outside of WebView has focus" #2380
Windows Platform
- Updated
scrollMultiplierdefault value from 6 to 1 - Added support for
UserScript.allowedOriginRulesandUserScript.forMainFrameOnlyparameters - Implemented
onReceivedHttpAuthRequest,onReceivedClientCertRequest,onReceivedServerTrustAuthRequest,onRenderProcessGone,onRenderProcessUnresponsive,onWebContentProcessDidTerminate,onProcessFailedWebView events - Implemented
clearSslPreferencesWebView method - Fixed
get_optional_fl_map_valueimplementation inutils/flutter.h - Fixed "Error in transparentBackground handling in Windows" #2391
Web Platform
- Updated dependencies to the latest versions for all platform implementations:
-
6.1.508 Oct 2024Release notes
Open source →- Updated dependencies to the latest versions for all platform implementations:
flutter_inappwebview_windows:^0.5.0->^0.6.0
Windows Platform
- Updated code to support multiple flutter windows
- Fixed
InAppWebViewController.callAsyncJavaScriptnot working with JSON objects - Fixed
onLoadResourceWithCustomSchemeWebView event called every time
Release notes
Open source →- Updated dependencies to the latest versions for all platform implementations:
flutter_inappwebview_windows:^0.5.0->^0.6.0
Windows Platform
- Updated code to support multiple flutter windows
- Fixed
InAppWebViewController.callAsyncJavaScriptnot working with JSON objects - Fixed
onLoadResourceWithCustomSchemeWebView event called every time
- Updated dependencies to the latest versions for all platform implementations:
-
6.1.402 Oct 2024Release notes
Open source →6.1.4
- Updated dependencies to the latest versions for all platform implementations:
flutter_inappwebview_platform_interface:^1.2.0->^1.3.0flutter_inappwebview_android:^1.1.1->^1.1.3flutter_inappwebview_ios:^1.1.1->^1.1.2flutter_inappwebview_macos:^1.1.1->^1.1.2flutter_inappwebview_web:^1.1.1->^1.1.2flutter_inappwebview_windows:^0.4.0->^0.5.0
Android Platform
- Removed webview/plugin_scripts_js/ConsoleLogJS.java file, use native WebChromeClient.onConsoleMessage instead
Windows Platform
- Implemented
shouldInterceptRequest,onLoadResourceWithCustomSchemeWebView events
Release notes
Open source →- Updated dependencies to the latest versions for all platform implementations:
flutter_inappwebview_platform_interface:^1.2.0->^1.3.0flutter_inappwebview_android:^1.1.1->^1.1.3flutter_inappwebview_ios:^1.1.1->^1.1.2flutter_inappwebview_macos:^1.1.1->^1.1.2flutter_inappwebview_web:^1.1.1->^1.1.2flutter_inappwebview_windows:^0.4.0->^0.5.0
Android Platform
- Removed webview/plugin_scripts_js/ConsoleLogJS.java file, use native WebChromeClient.onConsoleMessage instead
Windows Platform
- Implemented
shouldInterceptRequest,onLoadResourceWithCustomSchemeWebView events
- Updated dependencies to the latest versions for all platform implementations:
-
6.1.329 Sep 2024Release notes
Open source →- Updated dependencies to the latest versions for all platform implementations:
flutter_inappwebview_platform_interface:^1.1.0->^1.2.0flutter_inappwebview_android:^1.1.0+4->^1.1.1flutter_inappwebview_ios:^1.1.0+3->^1.1.1flutter_inappwebview_macos:^1.1.0+3->^1.1.1flutter_inappwebview_web:^1.1.0+2->^1.1.1flutter_inappwebview_windows:^0.3.0->^0.4.0
Windows Platform
- Updated
shouldOverrideUrlLoadingimplementation using the Chrome DevTools Protocol API Fetch.requestPaused event
Release notes
Open source →- Updated dependencies to the latest versions for all platform implementations:
flutter_inappwebview_platform_interface:^1.1.0->^1.2.0flutter_inappwebview_android:^1.1.0+4->^1.1.1flutter_inappwebview_ios:^1.1.0+3->^1.1.1flutter_inappwebview_macos:^1.1.0+3->^1.1.1flutter_inappwebview_web:^1.1.0+2->^1.1.1flutter_inappwebview_windows:^0.3.0->^0.4.0
Windows Platform
- Updated
shouldOverrideUrlLoadingimplementation using the Chrome DevTools Protocol API Fetch.requestPaused event
- Updated dependencies to the latest versions for all platform implementations:
-
6.1.227 Sep 2024Release notes
Open source →- Updated minimum platform implementation versions
Windows Platform
- Implemented
pause,resume,getCertificatemethods forInAppWebViewController - Implemented
onPermissionRequestWebView event - Fixed
InAppWebViewController.evaluateJavascriptnot working with JSON objects - Fixed
InAppWebViewManager::METHOD_CHANNEL_NAMEc++ value - Fixed
InAppWebViewController.takeScreenshotto behave consistently with the other platforms
Release notes
Open source →- Updated minimum platform implementation versions
Windows Platform
- Implemented
pause,resume,getCertificatemethods forInAppWebViewController - Implemented
onPermissionRequestWebView event - Fixed
InAppWebViewController.evaluateJavascriptnot working with JSON objects - Fixed
InAppWebViewManager::METHOD_CHANNEL_NAMEc++ value - Fixed
InAppWebViewController.takeScreenshotto behave consistently with the other platforms
-
6.1.126 Sep 2024Release notes
Open source →- Updated README
- Updated pubspec.yaml
- Updated minimum platform implementation versions
Release notes
Open source →- Updated README
- Updated pubspec.yaml
- Updated minimum platform implementation versions
-
6.1.023 Sep 2024Release notes
Open source →- Added initial Windows support
- Added
InAppWebViewwidget MacOS support - Added privacy manifest for MacOS
- Migrated web support to
package:web. - Updated minimum supported SDK version to Flutter 3.24/Dart 3.5.
- Updated androidx.webkit:webkit:1.8.0 to androidx.webkit:webkit:1.12.0
- Updated androidx.browser:browser:1.6.0 to androidx.browser:browser:1.8.0
- Fixed "[MACOS] launching InAppBrowser with 'hidden: true' calls onExit immediately" #1939
- Fixed XCode 16 build
- Removed unsupported WebViewFeature.SUPPRESS_ERROR_PAGE
- Merged "Add privacy manifest for iOS" #2029 (thanks to ueman)
- Merged "Remove references to deprecated v1 Android embedding" #2176 (thanks to gmackall)
Release notes
Open source →- Added initial Windows support
- Added
InAppWebViewwidget MacOS support - Added privacy manifest for MacOS
- Migrated web support to
package:web. - Updated minimum supported SDK version to Flutter 3.24/Dart 3.5.
- Updated androidx.webkit:webkit:1.8.0 to androidx.webkit:webkit:1.12.0
- Updated androidx.browser:browser:1.6.0 to androidx.browser:browser:1.8.0
- Fixed "[MACOS] launching InAppBrowser with 'hidden: true' calls onExit immediately" #1939
- Fixed XCode 16 build
- Removed unsupported WebViewFeature.SUPPRESS_ERROR_PAGE
- Merged "Add privacy manifest for iOS" #2029 (thanks to ueman)
- Merged "Remove references to deprecated v1 Android embedding" #2176 (thanks to gmackall)
-
6.1.0+123 Sep 2024 -
6.0.025 Dec 2023Release notes
Open source →- Updated minimum platform interface and implementation versions
- Merged "Added == operator and hashCode to WebUri" #1941 (thanks to daisukeueta)
Release notes
Open source →- Updated minimum platform interface and implementation versions
- Merged "Added == operator and hashCode to WebUri" #1941 (thanks to daisukeueta)
-
6.0.0-rc.323 Dec 2023 pre-releaseRelease notes
Open source →- Updated minimum platform interface and implementation versions
- Fix typos and other code improvements (thanks to michalsrutek)
- Fixed "runtime issue of SecTrustCopyExceptions 'This method should not be called on the main thread as it may lead to UI unresponsiveness.' when using onReceivedServerTrustAuthRequest" #1924
- Merged "💥 Fix iPad crash due to missing sourceView" #1933 (thanks to michalsrutek)
- Merged "💥 Fix crash - remove force unwrapping from dispose method" #1932 (thanks to michalsrutek)
-
6.0.0-rc.218 Dec 2023 pre-releaseRelease notes
Open source →- Updated minimum platform interface and implementation versions
- Added
CustomPathHandlerclass to be able to implement Android custom path handlers forWebViewAssetLoader
-
6.0.0-rc.117 Dec 2023 pre-releaseRelease notes
Open source →- Updated minimum platform interface and implementation versions
- Added
InAppBrowser.onMainWindowWillCloseevent - Added
WindowType.WINDOWforInAppBrowserSettings.windowType - Fixed "Cloudflare Turnstile failure" #1738
- Fixed
InAppWebViewController.callAsyncJavaScriptAndroid-issue when the last line of thefunctionBodyparameter includes a code comment
BREAKING CHANGES
- Default value of
InAppBrowserSettings.windowTypeisWindowType.WINDOW
-
6.0.0-beta.3212 Dec 2023 pre-releaseRelease notes
Open source →- Updated minimum platform interface and implementation versions
- Added
InAppWebViewSettings.interceptOnlyAsyncAjaxRequests#1905 - Added
InAppWebViewController.clearFormDataAndroid-specific method - Added
InAppWebViewController.clearAllCachestatic method - Added
CookieManager.removeSessionCookiesAndroid-specific method - Deprecated
InAppWebViewController.clearCacheandInAppWebViewSettings.clearCache. UseInAppWebViewController.clearAllCachestatic method instead - Deprecated
InAppWebViewSettings.clearSessionCache. UseCookieManager.removeSessionCookiesmethod instead - Updated
useShouldInterceptAjaxRequestautomatic infer logic - Updated
CookieManagermethods return value - Fixed "iOS crash at public func userContentController(_ userContentController: WKUserContentController, didReceive message: WKScriptMessage)" #1912
- Fixed "iOS Fatal Crash" #1894
- Fixed "getFavicons: _TypeError: type '_Map<String, dynamic>' is not a subtype of type 'Iterable<dynamic>'" #1897
- Fixed error in InterceptAjaxRequestJS 'Failed to set responseType property'
- Fixed shouldInterceptAjaxRequest javascript code when overriding XMLHttpRequest.open method parameters
- Fixed "onClosed not considering back navigation or up button / close button in ChromeSafariBrowser when using noHistory: true" #1882
- Merged "Fixed error in InterceptAjaxRequestJS 'Failed to set responseType property'" #1904 (thanks to EArminjon)
BREAKING CHANGES
- Due to Flutter platform channels async nature, using
useShouldInterceptAjaxRequest: truewould break sync ajax requests, so that theXMLHttpRequest.send()will not wait for the response. To fix this issue, the default value ofInAppWebViewSettings.interceptOnlyAsyncAjaxRequestsistrue. To intercept also sync ajax requests, this value should befalse.
-
6.0.0-beta.3104 Dec 2023 pre-releaseRelease notes
Open source →- Updated minimum platform interface and implementation versions
- Fixed events not called on
InAppBrowserandChromeSafariBrowseropening same instance multiple times
-
6.0.0-beta.3028 Nov 2023 pre-releaseRelease notes
Open source →- Updated minimum platform interface and implementation versions
- Fixed "Crash when starting ChromeSafariBrowser on Android java.lang.NoSuchMethodError: No virtual method isEngagementSignalsApiAvailable" #1881
-
6.0.0-beta.2927 Nov 2023 pre-releaseRelease notes
Open source →BREAKING CHANGES
- Plugin conversion to a Federated Plugin to better support multiple environments and implementations.
- Dart SDK min version
>= 2.17.0 - Android package name has been changed to
com.pichillilorenzo.flutter_inappwebview_android. References to old package namecom.pichillilorenzo.flutter_inappwebviewshould be updated, for example insideAndroidManifest.xmlfile:<provider android:name="com.pichillilorenzo.flutter_inappwebview_android.InAppWebViewFileProvider" android:authorities="${applicationId}.flutter_inappwebview_android.fileprovider" ... - Web Platform:
web_support.jsfile path has been changed topackages/flutter_inappwebview_web/assets/web/web_support.js
-
6.0.0-beta.2814 Nov 2023 pre-releaseRelease notes
Open source →- Added
ProcessGlobalConfigfor Android WebViews - Added
disableWebViewstatic method onInAppWebViewControllerfor Android - Added support for Android
WebViewFeature.isStartupFeatureSupported,WebViewFeature.STARTUP_FEATURE_SET_DIRECTORY_BASE_PATHS,WebViewFeature.STARTUP_FEATURE_SET_DATA_DIRECTORY_SUFFIX,WebViewFeature.WEB_MESSAGE_ARRAY_BUFFER - Added
WebMessage.typeproperty - Fixed "iOS EXC_BAD_ACCESS crash on kill app with InAppWebView keyboard open" #1837
- Fixed "Flutter Web - TypeError: Failed to execute 'observe' on 'MutationObserver': parameter 1 is not of type 'Node'. error" #1841
BREAKING CHANGES
WebMessage.dataproperty is of typedynamicJavaScriptReplyProxy.postMessageis of typeWebMessageWebMessageListener.onPostMessageandWebMessagePort.setWebMessageCallbackmethods signature
- Added
-
6.0.0-beta.2712 Nov 2023 pre-releaseRelease notes
Open source →- Added
requestPostMessageChannel,postMessage,isEngagementSignalsApiAvailablemethods onChromeSafariBrowserfor Android - Added
onMessageChannelReady,onPostMessage,onVerticalScrollEvent,onGreatestScrollPercentageIncreased,onSessionEndedevents onChromeSafariBrowserfor Android - Added
getPackageNamestatic method onChromeSafariBrowserfor Android
- Added
-
6.0.0-beta.2611 Nov 2023 pre-releaseRelease notes
Open source →- Throw an error if any controller is used after being disposed
CookieManager.deleteCookieswait for all delete cookie completion handler to be completed on iOS and macOS- Updated return value for
CookieManager.setCookiemethod to beFuture<bool>. The return value indicates whether the cookie was set successfully - Merged "feat(ios): optional tradeoff to fix ios input delay" #1665 (thanks to andreasgangso)
- Merged "Fix ios multiple flutter presenting error" #1736 (thanks to AlexT84)
- Merged "fix cert parsing for ios 12" #1822 (thanks to darkang3lz92)
- Merged "Fix iOS and macOS Forced unwrap null value HTTPCookie for CookieManager.setCookie" #1677 (thanks to maxmitz)
- Merged "android imm.isAcceptingText() crash fix" #1827 (thanks to AlexDochioiu)
- Merged "fix: chrome tab open failed due to chrome process not running" #1772 (thanks to YumengNevix)
- Merged "Android - Fix context menu position for pages with horizontal scroll" #1504 (thanks to lrorpilla)
- Fixed "iOS about:blank popup not loading page" #1500
- Fixed "iOS macOS - This method should not be called on the main thread as it may lead to UI unresponsiveness" #1678
- Fixed iOS and macOS InAppWebView memory leaks
-
6.0.0-beta.2502 Oct 2023 pre-releaseRelease notes
Open source →- Updated
androidx.webkit:webkitdependency to1.8.0 - Updated
androidx.browser:browserdependency to1.6.0 - Merged "feat: InAppLocalhostServer decode assets url when loading them" #1657 (thanks to Nirajn2311)
- Merged "fix: xcode 15 related bug" #1801 (thanks to nesquikm)
- Updated
-
6.0.0-beta.2410 Jun 2023 pre-releaseRelease notes
Open source →- Added InAppWebView keep alive feature
- Added InAppBrowser menu items feature
- Added
hasJavaScriptHandler,hasUserScript,hasWebMessageListenerInAppWebViewController methods - Added
hideCloseButton,hideDefaultMenuItems,menuButtonColorInAppBrowser settings HeadlessInAppWebView.webViewControllercould benull- Removed
throwIfAlreadyOpened,throwIfNotOpenedInAppBrowser methods - Removed
throwIfAlreadyOpened,throwIfNotOpenedChromeSafariBrowser methods - Merged "fix #1389 #1315 contextMenu ios 13" #1575 (thanks to heralight)
- Merged "fix: remove ignored flutter_export_environment.sh" #1593 (thanks to Sunbreak)
- Merged "Fix AndroidX migration URL in README.md" #1529 (thanks to cslee)
- Merged "InAppBrowser Bugfix/viewgroup index crash" #1618 (thanks to KhatibFX)
- Fixed old iOS versions crash "dyld: Library not loaded: /usr/lib/swift/libswiftCoreGraphics.dylib Reason: image not found" (thanks to guide-flutter)
- Fixed
InAppBrowser.show()possible crash on macOS - Fixed missing
windowTitlebarSeparatorStyle,windowAlphaValue,windowStyleMask,windowFramemacOS settings updates when usingsetSettings() - Fixed "iOS and macOS flutter multiple engine" #1632
-
6.0.0-beta.24+112 Jun 2023 pre-release -
6.0.0-beta.2315 May 2023 pre-releaseRelease notes
Open source →- Updated
androidx.webkit:webkitdependency to1.6.1 - Updated
androidx.browser:browserdependency to1.5.0 - Updated
androidx.appcompat:appcompatdependency to1.6.1 - Added support for Android
WebViewFeature.GET_COOKIE_INFO - Added
requestedWithHeaderOriginAllowListWebView setting for Android - Added
isInspectable,shouldPrintBackgroundsWebView settings for iOS and macOS - Removed
WebViewFeature.REQUESTED_WITH_HEADER_CONTROL,ServiceWorkerController.setRequestedWithHeaderMode(),ServiceWorkerController.getRequestedWithHeaderMode(),InAppWebViewSettings.requestedWithHeaderMode - Fixed "Build fail with AGP 8.0" #1643
- Fixed "java.lang.RuntimeException: Unknown feature REQUESTED_WITH_HEADER_CONTROL" #1611
- Fixed "iOS 16.4 WebDebugging WKWebView.isInspectable" #1629
- Fixed some
@availablechecks for macOS
- Updated
-
6.0.0-beta.2215 Dec 2022 pre-releaseRelease notes
Open source →- Updated
window.flutter_inappwebview.callHandlerimplementation: if there is an error/exception on Flutter/Dart side, thecallHandlerwill reject the JavaScript promise with the error/exception message, so you can catch it also on JavaScript side - Fixed Android Web Storage Manager
deleteAllDataanddeleteOriginmethods implementation - Fixed "Xiaomi store - Conflict of Privacy Permissions, android.permission.MY_READ_INSTALLED_PACKAGES" #1462
- Fixed "Flutter 3.0.5 compilation issue" #1475
- Updated
-
6.0.0-beta.2106 Dec 2022 pre-releaseRelease notes
Open source →- Fixed "Android plugin version 6 - UserScripts not executing on new tabs." #1455
-
6.0.0-beta.2003 Dec 2022 pre-releaseRelease notes
Open source →- Using Android
WebViewClientCompatfor Chromium-based WebView if the WebView package major version is >= 73 (https://bugs.chromium.org/p/chromium/issues/detail?id=925887) - Updated code docs
- Fixed "Unexpected addWebMessageListener behaviour" #1422
- Using Android
-
6.0.0-beta.1930 Nov 2022 pre-releaseRelease notes
Open source →- Updated code docs
- Fixed "Cannot Grant Permission at Android 21" #1447
- Fixed some missing macOS asserts
-
6.0.0-beta.1828 Nov 2022 pre-release -
6.0.0-beta.1725 Nov 2022 pre-releaseRelease notes
Open source →- Replaced
Uri.encodeFullwithUri.encodeComponentto load html data correctly on Web platform
- Replaced
-
6.0.0-beta.1623 Nov 2022 pre-releaseRelease notes
Open source →- Removed Android Hybrid Composition constraint to use the pull-to-refresh feature
- Removed Android
com.squareup.okhttp3:okhttpdependency
-
6.0.0-beta.1522 Nov 2022 pre-releaseRelease notes
Open source →- Automatically infer
useShouldOverrideUrlLoading,useOnLoadResource,useOnDownloadStart,useShouldInterceptAjaxRequest,useShouldInterceptFetchRequest,useShouldInterceptRequest,useOnRenderProcessGone,useOnNavigationResponsesettings if their value isnulland the corresponding event is implemented by the WebView (InAppWebViewandHeadlessInAppWebView, notInAppBrowser) before it's native initialization
BREAKING CHANGES
- All
PrintJobSettingsproperties are optionals - All
PullToRefreshSettingsproperties are optionals - All
WebAuthenticationSessionSettingsproperties are optionals
- Automatically infer
-
6.0.0-beta.1416 Nov 2022 pre-releaseRelease notes
Open source →- Fixed User Script remove methods
- Fixed macOS available checks for XCode 14.1
-
6.0.0-beta.1315 Nov 2022 pre-releaseRelease notes
Open source →- Added
ContentBlockerActionType.BLOCK_COOKIESandContentBlockerActionType.IGNORE_PREVIOUS_RULESfor iOS and macOS platforms - Updated
ContentBlockerTrigger.urlFilterIsCaseSensitivefor Android - Fixed Android
ContentBlockerActionType.CSS_DISPLAY_NONEusage
- Added
-
6.0.0-beta.1202 Nov 2022 pre-releaseRelease notes
Open source →- Removed
willSuppressErrorPageWebView Android setting in favor ofdisableDefaultErrorPage. - Added
isMultiProcessEnabledstatic method onInAppWebViewControllerfor Android - Added
onContentSizeChangedWebView event for iOS - Added
onPermissionRequestCanceled,onRequestFocusWebView events for Android - Added
defaultVideoPosterWebView setting for Android - Added
TracingControllerfor Android WebViews
BREAKING CHANGES
- Removed
willSuppressErrorPageWebView Android setting. UsedisableDefaultErrorPageinstead.
- Removed
-
6.0.0-beta.1127 Oct 2022 pre-releaseRelease notes
Open source →- Fixed "[webRTC / macOS] onPermissionRequest not called on HeadlessInAppWebView" #1405
-
6.0.0-beta.1027 Oct 2022 pre-releaseRelease notes
Open source →- Created
WebUriclass to replaceUridart core type. Related to:
BREAKING CHANGES
- Replaced the usage of
Uritype with the newWebUritype
- Created
-
6.0.0-beta.926 Oct 2022 pre-releaseRelease notes
Open source →- Added
headers,otherLikelyURLs,referrerarguments onChromeSafariBrowser.openmethod for Android - Added
onNavigationEvent,onServiceConnected,onRelationshipValidationResultevents onChromeSafariBrowserfor Android - Added
mayLaunchUrl,launchUrl,updateActionButton,validateRelationship,setSecondaryToolbar,updateSecondaryToolbarmethods onChromeSafariBrowserfor Android - Added
startAnimations,exitAnimations,navigationBarColor,navigationBarDividerColor,secondaryToolbarColor,alwaysUseBrowserUIChromeSafariBrowser settings for Android - Added
getMaxToolbarItemsstatic method onChromeSafariBrowserfor Android - Added
ChromeSafariBrowserMenuItem.imageproperty for iOS - Added
didLoadSuccessfullyoptional argument onChromeSafariBrowser.onCompletedInitialLoadevent for iOS - Added
onInitialLoadDidRedirect,onWillOpenInBrowserevents onChromeSafariBrowserfor iOS - Added
activityButton,eventAttributionChromeSafariBrowser settings for iOS - Added
clearWebsiteData,prewarmConnections,invalidatePrewarmingTokenstatic methods onChromeSafariBrowserfor iOS - Added
getVariationsHeaderWebView static method
BREAKING CHANGES
ChromeSafariBrowser.onCompletedInitialLoadevent has an optional argumentChromeSafariBrowserMenuItem.actionandChromeSafariBrowserActionButton.actioncan be null- All
ChromeSafariBrowserSettingsproperties are optionals
- Added
-
6.0.0-beta.824 Oct 2022 pre-releaseRelease notes
Open source →- Merged "Exposed "shared" property of HttpServer bind method to support more use-cases." #1395 (thanks to LugonjaAleksandar)
- Fixed "ios 14.5 crash reports upgradeKnownHostsToHTTPS" #1393
-
6.0.0-beta.722 Oct 2022 pre-releaseRelease notes
Open source →- Updated Android hybrid composition implementation
BREAKING CHANGES
- Minimum Flutter version
3.0.0
-
6.0.0-beta.622 Oct 2022 pre-releaseRelease notes
Open source →- Added
InAppWebViewSettings.allowBackgroundAudioPlayingfor Android - Added
WebViewAssetLoaderandInAppWebViewSettings.webViewAssetLoaderfor Android
BREAKING CHANGES
WebResourceResponse.contentTypeandWebResourceResponse.contentEncodingproperties can be null
- Added
-
6.0.0-beta.520 Oct 2022 pre-release -
6.0.0-beta.420 Oct 2022 pre-releaseRelease notes
Open source →- Added
InAppWebView.headlessWebViewproperty to convert anHeadlessWebViewtoInAppWebViewwidget
- Added
-
6.0.0-beta.319 Oct 2022 pre-releaseRelease notes
Open source →- Added MacOS support
- Added
windowType,windowAlphaValue,windowStyleMask,windowTitlebarSeparatorStyle,windowFramefor MacOSInAppBrowserSettings - Added
PrintJobInfo.printer - Added
getContentWidthWebView method
BREAKING CHANGES
- Removed
PrintJobInfo.printerId - All
InAppWebViewSettings,InAppBrowserSettingsproperties are optionals InAppBrowser.webViewControllercan be null
-
6.0.0-beta.214 Oct 2022 pre-release -
6.0.0-beta.114 Oct 2022 pre-releaseRelease notes
Open source →- Deprecated old classes/properties/methods to make them eventually compatible with other Platforms and WebView engines.
- Added Web support
- Added
ProxyControllerfor Android - Added
PrintJobControllerto manage print jobs - Added
WebAuthenticationSessionfor iOS - Added
FindInteractionControllerfor Android and iOS - Added
pauseAllMediaPlayback,setAllMediaPlaybackSuspended,closeAllMediaPresentations,requestMediaPlaybackState,isInFullscreen,getCameraCaptureState,setCameraCaptureState,getMicrophoneCaptureState,setMicrophoneCaptureState,loadSimulatedRequestWebView controller methods - Added
underPageBackgroundColor,isTextInteractionEnabled,isSiteSpecificQuirksModeEnabled,upgradeKnownHostsToHTTPS,forceDarkStrategy,willSuppressErrorPage,algorithmicDarkeningAllowed,requestedWithHeaderMode,enterpriseAuthenticationAppLinkPolicyEnabled,isElementFullscreenEnabled,isFindInteractionEnabled,minimumViewportInset,maximumViewportInsetWebView settings - Added
onCameraCaptureStateChanged,onMicrophoneCaptureStateChangedWebView events - Added support for
onPermissionRequestevent on iOS 15.0+ - Added
debugLoggingSettingsstatic property for WebView and ChromeSafariBrowser - Added
WebViewFeature.DOCUMENT_START_SCRIPTAndroid feature support - Added
getRequestedWithHeaderMode,setRequestedWithHeaderModeServiceWorkerController methods - Added
ContentBlockerTrigger.ifFrameUrlandContentBlockerTrigger.loadContextproperties - Added
PullToRefreshController.isEnabledmethod - Updated
getMetaThemeColoron iOS 15.0+ - Deprecated
onLoadErrorforonReceivedError.onReceivedErrorwill be called also for subframes - Deprecated
onLoadHttpErrorforonReceivedHttpError.onReceivedHttpErrorwill be called also for subframes
BREAKING CHANGES
- Updated Android
minSdkVersionto19 - Updated minimum iOS version to
9.0 - On Android, the
InAppWebViewwidget uses hybrid composition by default (useHybridComposition: true) - All properties of
GeolocationPermissionShowPromptResponsecannot benull - Removed
URLProtectionSpace.iosIsProxyproperty historyUrlandbaseUrlofInAppWebViewInitialDatacan benull
-
5.8.002 Oct 2023 -
5.7.223 Nov 2022Release notes
Open source →- Removed Android Hybrid Composition constraint to use the pull-to-refresh feature
-
5.7.2+130 Nov 2022 -
5.7.2+203 Dec 2022 -
5.7.2+315 Dec 2022Release notes
Open source →- Fixed "Xiaomi store - Conflict of Privacy Permissions, android.permission.MY_READ_INSTALLED_PACKAGES" #1462
-
5.7.124 Oct 2022Release notes
Open source →- Exposed "shared" property of HttpServer bind method to support more use-cases. (thanks to LugonjaAleksandar)
-
5.7.1+116 Nov 2022Release notes
Open source →- Fixed User Script remove methods
- Fixed missing
breakstatement on Android when parsingChromeCustomTabsOptions.displayModein Java code
-
5.7.1+218 Nov 2022 -
5.7.022 Oct 2022Release notes
Open source →- Added
PlatformViewsService.initExpensiveAndroidViewfor Android
BREAKING CHANGES
- Flutter minimum version
3.0.0
- Added
-
5.6.022 Oct 2022Release notes
Open source →- Fixed "URLCredential.fromMap returns null for username" #1205
- Fixed "Compare to webview_flutter, inappwebview is significant frame dropped while page scrolling" #1386
- Merged "Fix hybrid composition laggy" #1387 (thanks to Doflatango)
-
5.6.0+122 Oct 2022 -
5.6.0+222 Oct 2022 -
5.5.013 Oct 2022Release notes
Open source →- Added Android direct camera capture feature
- Fixed missing
PullToRefreshController.isRefreshingiOS implementation - Fixed Android
PullToRefreshController.setEnabledat runtime - Fixed iOS
findNext - Fixed Android
RendererPriorityPolicy.waivedWhenNotVisibletype 'Null' is not a subtype of type 'bool' - Fixed iOS 14.0 crash when calling
callAsyncJavaScriptmethod - Merged "Android fix leaking MethodChannel through anonymous class" #1201 (thanks to emakar)
- Merged "Fix RangeError: Maximum call stack size exceeded" #1208 (thanks to liasica)
- Merged "fix: try to open with Chrome if default browser app does not support custom tabs" #1233 (thanks to addie9000)
- Merged "fix: Prevent Android java.lang.NullPointerException in InAppWebViewCl…" #1237 (thanks to kamilpowalowski)
- Merged "Android - Load client certificate from local storage" #1241 (thanks to akioyamamoto1977)
- Merged "fix Theme_AppCompat_Dialog_Alert not found" #1262 (thanks to mohenaxiba)
- Merged "Allow a cookie without a domain to be set on Android" #1295 (thanks to bagedevimo)
- Merged "Catch and ignore utf8 format exception in getFavicons()" #1302 (thanks to Doflatango)
- Merged "Disable exporting activity definitions for Android" #1313 (thanks to daanporon)
- Merged "Add directoryIndex and documentRoot to InAppLocalhostServer option" #1319 (thanks to fa0311)
- Merged "fix(ios): invoke onBrowserCreated when viewDidLoad is called with win…" #1344 (thanks to perffecto)
BREAKING CHANGES
CookieManager.getCookie,CookieManager.deleteCookieandCookieManager.deleteCookieshave thedomainargument optional and without a default value