是否可以从共享扩展中截取 Safari 中 webview 的当前可见区域?我可以使用窗口,但扩展不支持 UIApplication,因此我无法访问该窗口。
最佳答案
您不能,因为无法从扩展程序访问 UIApplication。您无法获得第一个 UIWindow,它是 Safari 层,因此您必须使用扩展程序具有的 Javascript 预处理文件。因此,只需创建一个 Javascript 文件,当发送到 Safari 时,它会生成一个包含当前可见区域图像数据的 base64 字符串。通过扩展中的 kUTTypePropertyList 标识符获取该字符串。因为它应该是 NSData,所以使用 +imageWithData
从那里生成 UIImage。这就是您要找的,无需再次加载页面,如果网页需要登录,则可以防止第二次加载和错误图像。
关于ios - 来自共享扩展的 Safari 截图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25552846/