TPAC 2024
Anaheim CA, USA
hybrid meeting
24 SEPTEMBER 2024
The W3C WebView Community Group (CG) created a survey with the objective of identifying, understanding the issues arising from WebViews (apps that render Web technology-based content outside a Web browser). The CG appreciated the input of 34 anonymous developers and experts who took part in the survey.
The survey ran for over a month (until September 15th 2024) with the kind support of W3C China. This presentation summarizes the insights of those 34 replies. (Spreadsheet)
The description of the pie chart, here as a table:
Options | Replies |
---|---|
WebViews | 20 |
Browsers | 11 |
None (native only) | 3 |
The description of the pie chart, here as a table:
Options | Replies |
---|---|
Hybrid apps (Apache Cordova, Capacitor...) | 26 |
Mini apps | 18 |
Browser apps | 12 |
Internal/Information pages | 10 |
Offline web content | 5 |
External links | 4 |
Ads | 3 |
The description of the pie chart, here as a table:
Options | Replies |
---|---|
JavaScript Injection | 29 |
WebStorage (localStorage, sessionStorage...) | 22 |
Cookies | 18 |
CSS Injection | 17 |
Video playback | 17 |
WebSockets | 10 |
webRTC | 1 |
offscreencanvas | 1 |
This includes the replies to the question #4 (other...)
The description of the pie chart, here as a table:
Options | Replies |
---|---|
Inconsistency | 23 |
Performance | 16 |
WebView bug | 14 |
Lack of web functionality | 8 |
Safety | 5 |
Memory comsuption | 2 |
Lack of updates & new features | 1 |
Lack of extensibility to native alignment | 1 |
This includes the replies to the question #6 (other...)
The description of the pie chart, here as a table:
Options | Replies |
---|---|
Android | 22 |
iOS | 20 |
Windows | 16 |
macOS | 15 |
Linux | 7 |
HarmonyOS | 5 |
other | 2 |
The description of the pie chart, here as a table:
Options | Replies |
---|---|
Android WebView | 24 |
WKWebView | 16 |
WebView2 | 12 |
X5 (Tencent) | 10 |
ArkWeb (HarmonyOS) | 4 |
UIWebView | 4 |
Custom Tabs | 3 |
SFSafariViewController | 3 |
UCWebView | 1 |
JxBrowser | 1 |
other | 1 |
This includes the replies to the question #10 (other...)
The description of the pie chart, here as a table:
Options | Replies |
---|---|
Yes | 5 |
No | 19 |
Not sure | 10 |
The description of the pie chart, here as a table:
Options | Replies |
---|---|
Yes, enough | 14 |
No, not enough | 10 |
Not sure | 10 |
Challenge found | Replies |
---|---|
Scarce documentation in MDN on WebViews | 2 |
No standard documentation | 2 |
WebViews loading mechanism | 1 |
Performance optimization | 1 |
How web features are implemented and the influence of the native environment in the webview | 1 |
Limitations and restrictions of WebViews | 1 |
How to build homogeneous layouts in different platforms | 1 |
Existing documentation relative old | 1 |
The description of the pie chart, here as a table:
Options | Replies |
---|---|
Social Media | 16 |
Blogs | 14 |
Release Notes | 13 |
Announcements | 13 |
other | 1 |
The description of the pie chart, here as a table:
Options | Replies |
---|---|
JS | 7 |
Swift | 2 |
Java | 2 |
.net Core | 1 |
ArkTS | 1 |
Kotlin multiplatform | 1 |
OCaml | 1 |
JSPy | 1 |
Rust | 1 |
Approach | Mentions |
---|---|
Manual testing on different devices | 5 |
Using only web standards | 1 |
Regression Testing | 1 |
Automatic testing with Playwright, Appium | 1 |
Debugging with https://eruda.liriliri.io | 1 |
End to end testing | 1 |
exec()
Options | Mentions |
---|---|
Keep experience within the app | 2 |
When all the pages are managed by the webview | 2 |
When the user does not want to use the browser | 1 |
If data interaction is required with the native app | 1 |
When the the browser sandbox is reached | 1 |
Options | Mentions |
---|---|
Avoiding using WebViews | 2 |
Asking the community | 1 |
Relying on "advanced technology" | 1 |
Searching info and using examples | 1 |
Thoughts | Mentions |
---|---|
No opinion | 3 |
"Profile needs to be promoted as a standard" | 1 |
There are too many and too easy ways to bypass vulnerabilities | 1 |
The description of the pie chart, here as a table:
Options | Replies |
---|---|
Pre-rendering | 4 |
WebView Pool | 2 |
Quicker startup | 1 |
Efficient communication | 1 |
Native UI interoperability | 1 |
This slides were made for the TPAC 2024, using the official template.
To start the slide show, press ‘A’. Return to the index with ‘A’ or ‘Esc’. On a touch screen, use a 3-finger touch. Double click to open a specific slide. In slide mode, press ‘?’ (question mark) to get a list of available commands.