我目前正在创建一个 AR Web 应用程序,它允许您截取屏幕截图、从 Base64 转换为 Blob 文件并在屏幕上显示预览。当从 chrome 共享时,它使用
navigator.share()
很好地发送图像,但是当从 safari 共享时(长按图像并点击共享),它会将 blob url (blob:https://
) 作为字符串共享。它似乎还带有“保存到照片”选项,因此似乎知道这是一张图像。有没有办法强制它分享图片而不是网址(image.src
)?
我遇到了这个问题,并且能够通过将图像渲染到画布然后调用
toDataURL()
来获取 Base64 编码来修复。如果您使用它作为图像源(而不是 Blob),人们只需长按图像并使用本机共享功能,就不会出现任何问题。