这与过去提出的其他问题类似,但有新的变化。 WebView
的capturePicture()
完成的通知是onNewPicture
,但是最新的文档说这里面返回的图片永远是null from API 18 及更高版本 (Android 4.3)。
到目前为止,我已经检查它在 Android 4.0.3 上仍然有效(并且尝试使用捕获的图像失败,除非我等待通知)。
我们应该用什么来代替?图片是在onPageFinished
时立即返回,还是在WebChromeClient
进度通知100%时返回?
更新
API-18 (Android 4.3) 几天前出现在 SDK 上。 onNewPicture
仍然在模拟器上发送捕获的图片。不幸的是,我没有运行 Android 4.3 的实际设备。
最佳答案
这实际上取决于您应用的targetSdkLevel
。为了兼容性,如果目标级别 < 18 (JB MR2),onNewPicture
仍会发送图片。
捕获 WebView 图像的首选方法是让它在您提供的 Canvas
上绘制,参见示例 Which can replace capturePicture function
关于Android WebView PictureListener 已弃用 - 仍然别无选择?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17873341/