Name | Platforms | Description | Features | Limitations | UX flexibility | Usage Example | State shared |
---|---|---|---|---|---|---|---|
Android Webview | Android | Default WebView implementation on Android | Rich API with JS and CSS interaction, Tie WebView and native APIs together | Features equal to current Chrime but some Web APIs are not supported | Allows you to mix native content with the WebView and to resize it | Hybrid Frameworks (Cordova, Capacitor) | |
Custom Tabs | Android | API for opening browser-like WebViews on Android | Browser navigation and conveniance features like password fill | App has no access to Web content | Covers the entire application with some minimal top bar customization | Link preview in social media apps | |
SFSafariViewController | iOS, iPadOS | API for opening browser-like WebViews on iOS | Browser navigation and conveniance features like password fill | App has no access to Web content | Covers the entire application with some minimal top bar customization | Link preview in social media apps | |
UIWebView (deprecated) | iOS, iPadOS, macOS | Soon-to-be-removed WebView API of iOS | Rich API with JS and CSS interaction, Tie WebView and native APIs together | Some current Web standards not implemented. Performance and security wise inferior to WKWebView, deprecated | Allows you to mix native content with the WebView and to resize it | Hybrid Frameworks (Cordova, Capacitor) | |
WKWebView | iOS, iPadOS, macOS | Default WebView implementation on iOS | Rich API with JS and CSS interaction, Tie WebView and native APIs together | Features similar to current Safari but some Web APIs are not supported | Allows you to mix native content with the WebView and to resize it | Hybrid Frameworks (Cordova, Capacitor) | |
WebView2 | Windows | Default WebView implementation on Windows | Rich API with JS and CSS interaction |
Last active
July 29, 2022 16:55
-
-
Save NiklasMerz/e9058d5a687d8e5b2b5e3f7e63a867ad to your computer and use it in GitHub Desktop.
Different WebViewAPIs
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
State sharing
Usecase table