w3c/web-share

ios web share save file to camera roll only works once

Closed this issue · 3 comments

when using the web share api on mobile browsers (not native app) the web share api works as expected only until the 'save to camera roll' functionality is selected.
when the dialog opens, all of the options including closing the dialog(cancelling the action) allow the button to open the dialog again, but when saving to the photo album the button is no longer optional and a promiseReactionJobWithoutPromise message appears on the console.
Please see the following code sandbox to see the issue:
https://codesandbox.io/s/restless-pine-g1fiqj?file=/src/useExport.js
test case:

  1. click the 'click me' button, the dialog opens with an image.
  2. close the dialog without selection.
  3. click the button again, all works as expected.
  4. click save image.
  5. verify image is saved.
  6. try click the 'click me' button again.
  7. see the error in the console, web share api no longer works.

please let me know if more information is required

This is not a spec issue, but, if at all, an implementation issue in Safari. I tried the described workflow on my device (iPad with version 15.7.3 (19H307)) and it worked. If the problem persists, file a WebKit bug, please. Go to https://bugs.webkit.org and add your OS version. Thanks.

@tomayac This issue is occurring on chrome as well.
also, is this working for you multiple times?
are you able to open the dialog even after saving the image?

Chrome on iOS uses WKWebView internally. Yes, it works multiple times. Please open a WebKit bug. I won’t be able to respond further here. Thanks.