WebKit supports "Web Share — Level 1" since https://bugs.webkit.org/show_bug.cgi?id=171100 was resolved (🙏 thanks!).
"Web Share — Level 2" adds a feature detection method `canShare()`, and the `ShareData` dictionary now has a `files` member for sharing files (https://wicg.github.io/web-share/level-2/#changes-since-level-1).
This allows use cases like sharing images apart from text.
I am Gabriele, Software Architect for X-Rite Pantone (www.pantone.com, www.xrite.com).
We have hundreds of thousands per user on our website per month, so we are expecting a high number of users also in our new apps.
We will soon release a mobile App for Pantone for both iOS and Android, which will provide a sharing palettes/pictures features.
It would be amazing to have the Web Share Api level 2 implemented, so we could make the feature available also on iOS.
Is there any ETA for this task?
My name is Samy and I am the founder of Hypefury. We help online entrepreneurs grow their audience and market their products.
We already implemented features such as sharing pictures on Instagram, and they work perfectly on Android.
Most our users use iPhones though, and supporting level 2 sharing would make their experience a whole.
Fixed via https://bugs.webkit.org/show_bug.cgi?id=207491.
Looks like this hasn't fully landed yet, so reopening and adding relevant dependencies.
All subtasks are complete, but this isn't enabled by default yet.
I'm thrilled to see the progress on this bug. Media sharing for 'image/jpeg' and 'video/mp4' files has been a top requested feature for our web platform from numerous big brands and creative agencies.
Any chance this will be enabled by default in iOS 13.6+?
Just to note that while the "canShare" method was implemented and accepted, support for the "files" property is still not implemented.
@Matt, even with the following resolved dependent bug "Implement web-share v2 for files"? https://bugs.webkit.org/show_bug.cgi?id=209265
Seems to be implemented on iOS 14 (first beta) including WKWebView, but with a few problems.
I tested with this website https://w3c.github.io/web-share/demos/share-files.html
The title is not used, the message is shown instead.
Sharing to AirDrop sometimes show an error or don't properly share some of the items.
Sharing to twitter doesn't show the selected images and don't let you share (probably because of that)
Sharing to messages or mail doesn't attach the images.
Other than that, it looks like a good starting point for iOS 14 before it's final.
Note that "Web Share API Level 2" is still disabled as default in the experimental section of Safari settings, but it's working fine without enabling it. Not sure if it could stop working in future beta releases or if it means that it is no longer experimental.
This API works well but is turned off by default in iOS 14. Please either turn it on by default or promote it out of experimental features as many of our customers rely on this functionality. Thank you.
WebShare V2 was working really well in all of the iOS14 betas for file sharing, and we were looking forward to see this launch (default-enabled) in iOS14. This was the most exciting thing about iOS 14 for my company. It is such critical functionality for web developers to be able to share mp4 video files and jpgs to native applications, and Safari is really the only remaining majority browser lacking this ability.
Needless to say, is was discouraging to see it switch off with the public release after building websites in anticipation that would have worked well had the public release matched the betas. Please re-enable WebShare V2 file sharing as a default for Safari users!
Sad here as well to find L2 is disabled by default in the latest iOS update. Please enable by default, we live in a world of sharing media and this feature will allow developers to enrich the user experience for all Apple users.
Note that "Level 2" is no longer a thing: The the "L2" stuff has is being merged into the core spec, and "L2" just redirects to the main spec.
Note also that Mozilla folks found significant issues with .canShare():
This issue can probably be closed as invalid.
Just want to clarify that I think the "level 2" support aspect of this bug is invalid (because there is no level 2 spec anymore). However, other bugs that arise from sharing files and .canShare() should be addressed separately.
Updated core spec link: https://w3c.github.io/web-share/#api-definition.
This is implemented behind a flag in Safari 14 (using the "Level 2" name suffix), so the status of this bug is probably "Resolved".
Other questions like the fate of `canShare()` indeed deserve new bugs once the spec issues have been closed.