我想在播放视频时截取我的 Crosswalk webview 的屏幕截图,据我所知,我需要暂停 webview,截取屏幕截图,然后恢复 webview。
现在这在普通 webview 上工作正常,就像这里的例子:
webView.pauseTimers();
webView.onPause();
final Bitmap bm = Take_Screenshot(Bitmap.Config.RGB_565);
webView.onResume();
webView.resumeTimers();
但在人行横道 webview 中,我找不到与 theonPause
和 the等价的onResume
东西,因此它返回一个空白图像。经过大量研究,我所能发现的只是当活动暂停时人行横道会暂停,但这无论如何都无济于事,原因有很多:
1-我不知道如何在同一个活动中暂停和恢复
2-如果可以在一段时间后恢复,则活动将继续进行,onResume()
而不是从中断的地方继续。
有什么方法可以暂停和恢复人行横道的 webview,还是有更好的方法来捕获屏幕截图?
编辑:
我在这里找到了一个 Crosswalk 函数来捕获位图异步示例。 这是处理异步请求的类:
class XWalkGetBitmapCallbackImpl extends XWalkGetBitmapCallback{
public XWalkGetBitmapCallbackImpl() {
super();
}
@Override
public void onFinishGetBitmap(Bitmap bitmap, int response) {
if (response == 0) {
mImageView.setImageBitmap(bitmap);
bitmap = null;
}
}
}
但由于某种原因onFinishGetBitmap
从未被调用,我想我又被卡住了。