此接口用于截屏。
snapshot 的使用方法
AlipayJSBridge.call('snapshot', function(result) {
console.log(result.success);
});
代码示例
<h1>点击下面按钮查看不同截图效果</h1>
<a href="javascript:void(0)" class="btn screen">截取屏幕并保存到相册</a>
<a href="javascript:void(0)" class="btn viewport">viewport 截图返回 fileURL</a>
<script>
function ready(callback) {
// 如果 jsbridge 已经注入则直接调用
if (window.AlipayJSBridge) {
callback && callback();
} else {
// 如果没有注入则监听注入的事件
document.addEventListener('AlipayJSBridgeReady', callback, false);
}
}
ready(function() {
document.querySelector('.screen').addEventListener('click', function() {
AlipayJSBridge.call('snapshot', function(result) {
alert(JSON.stringify(result));
});
});
document.querySelector('.viewport').addEventListener('click', function() {
AlipayJSBridge.call('snapshot', {
range: 'viewport',
dataType: 'fileURL',
saveToGallery: false
}, function(result) {
alert(JSON.stringify(result));
});
});
});
</script>
API 说明
AlipayJSBridge.call('snapshot', {
range, saveToGallery, dataType, imageFormat, quality,
maxWidth, maxHeight
}, fn)
入参
属性 | 类型 | 描述 | 必填 | 默认值 |
range | string | 快照范围:
重要 document 会截取全部网页,在安卓手机上,网页很多时候会存在浏览器内存溢出情况,请使用 | N | “screen” |
saveToGallery | bool | 是否保存到相册。 | N | true |
dataType | string | 结果数据格式:
| N | “none” |
imageFormat | string | jpg、png。 | N | “jpg” |
quality | int | jpg 的图片质量,取值为 1 到 100。 | N | 75 |
maxWidth | int | 图片的最大宽度,过大将被等比缩小。 | N | - |
maxHeight | int | 图片的最大高度,过大将被等比缩小。 | N | - |
fn | function | 回调函数。 | N | - |
出参
回调函数带入的参数 result: {success, fileUrl, dataURL}
。
属性 | 类型 | 描述 |
success | bool | 是否处理成功。 |
fileUrl | string | 图片在文件系统中的 URL。 |
dataURL | string | base64 编码的图片数据。 |
错误码
错误码 | 描述 |
10 | 相册保存失败。 |
11 | 图片文件保存失败。 |
文档内容是否对您有帮助?