h5+plus照片拍摄及相册选择

5+sdk封装的内容特别强大,只需要简简单单的一些代码就可以了,下面直接上代码

        function captureImage(){
    var cmr = plus.camera.getCamera();//获取摄像头对象
    var res = cmr.supportedImageResolutions[2];//获取支持的分辨率,这里是第三个分辨率,直接使用supportenImageResolutions可以获取自己手机所支持的分辨率有多少种格式,返回值类型 string[]
    var fmt = cmr.supportedImageFormats[0];//JPG格式,我的VIVO只支持JPG

    cmr.captureImage( function( path ){//成功回调函数,获取路径
            alert( "拍照成功" );
            plus.gallery.save( path, function () { //将图片保存到系统路径,再通过gallery.pick才能获取到,其实在captureImage成功回调之后图片已经被保存到了你打包的APP的目录下,但是默认情况下该目录是隐藏的,通过gallery对象来获取图片,发现并不能获得照片,几遍指定了filename参数这个文件路径也无法获取,获取的目录仍然是系统相册目录,为此,在拍照成功后,把图片再保存到系统相册中,当使用gallery获取图片的时候就能看到,缺点是这样的话会保存两张图片,一张在系统相册,另外一张在APP默认路径。目前由于本人刚学还没找到方法可以直接选择APP中被隐藏的图片。
        //alert( "保存图片到相册成功" );
    } );
        },
        function( error ) {
            alert( "Capture image failed: " + error.message );
        },
        {resolution:res,format:fmt}//分辨率和格式,必填,就是上面获取到的。
    );
}

gallery获取相片,单选或者多选:


        function galleryImg() {
    // 从相册中选择图片
    console.log("从相册中选择图片:");
    plus.gallery.pick( function(path){
        console.log(path);
    }, function ( e ) {
        console.log( "取消选择图片" );
    }, {filter:"image",filename:'_documents/siyuan/'} );//过滤器,只要照片 ,filename指定选择路径,但是好像并没什么用,都是在系统相册中选择
}
// 从相册中选择多张图片 
function galleryImgs(){
    // 从相册中选择图片
    console.log("从相册中选择多张图片:");
    plus.gallery.pick( function(e){
        for(var i in e.files){
            console.log(e.files[i]);
        }
    }, function ( e ) {
        console.log( "取消选择图片" );
    },{filter:"image",multiple:true});//过滤器只要图片,多选
}
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值