html5
主页 > 网页 > html5 >

html5+实现plus.io进行拍照和图片等获取

2022-06-05 | 酷站 | 点击:

使用Hbuilder开发工具开发:实现可对Android机进行控制和获取资源
说明:IO模块管理本地文件系统,用于对文件系统的目录浏览、文件的读取、文件的写入等操作。通过plus.io可获取文件系统管理对象

获取目录:常量:

以下有四个demo

1

2

3

4

<button @click.stop="videoCapture" class="delBtn">录像</button>

 <button @click.stop="captureImage" class="delBtn">拍照</button>

 <button @click.stop="getImage" class="delBtn">获取图片</button>

 <button @click.stop="getImageUrl" class="delBtn">获取图片目录</button>

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

//打开摄像头进行录像

videoCapture(){

                    this.cmr = plus.camera.getCamera();

                    var res = this.cmr.supportedVideoResolutions[0];

                    var fmt = this.cmr.supportedVideoFormats[0];

                    console.log("Resolution: "+res+", Format: "+fmt);

                    this.cmr.startVideoCapture( function( path ){

                            alert( "Capture video success: " + path ); 

                        },

                        function( error ) {

                            alert( "Capture video failed: " + error.message );

                        },

                        {resolution:res,format:fmt}

                    );

                    // 拍摄10s后自动完成

                    setTimeout( this.stopCapture, 10000 );

            },

1

2

3

4

5

//停止摄像头录像

            stopCapture(){

                console.log("stopCapture");

                this.cmr.stopVideoCapture()   //设备现在不支持,需要手动调用关闭摄像头

            },

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

//打开摄像头进行拍照

            captureImage(){

                var cmr = plus.camera.getCamera();

                    var res = cmr.supportedImageResolutions[0];

                    var fmt = cmr.supportedImageFormats[0];

                    console.log("Resolution: "+res+", Format: "+fmt);

                    cmr.captureImage( function( path ){

                        //path   拍照成功获取到路径

                            console.log(path)

                        },

                        function( error ) {   //取消拍照的函数

                            console.log(error)

                        },

                        {resolution:res,format:fmt}

                    )

            },

1

2

3

4

5

6

7

8

9

10

11

12

13

//根据路径获取图片参数

            getImage(){

                 

                 plus.io.getImageInfo({

                     src: "/storage/emulated/0/Android/data/io.dcloud.HBuilder/apps/HBuilder/doc/1652421993337.jpg",

                     success: function(data){ 

                        console.log(JSON.stringify(data)); 

                    }, 

                    fail: function(err){ 

                        console.log(JSON.stringify(err)); 

                    }

                 })

            },

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

//获取根目录找到图片

            getImageUrl(){

                console.log(this)

                let that = this

                console.log(that)

                 // 应用私有文档目录常量

                plus.io.requestFileSystem( plus.io.PRIVATE_DOC , function(fs){

                        // fs.root是根目录操作对象DirectoryEntry

                        // 创建读取目录信息对象

                        var directoryReader = fs.root.createReader();

                        console.log(directoryReader)

                        directoryReader.readEntries( function( entries ){

                            console.log( entries.length)

                            var reg = /.(png|jpg|gif|jpeg|webp)$/;

                            entries.forEach( item =>{

                                console.log(item.name)

                                if(reg.test(item.name)) {

                                    console.log(item.name)

                                    console.log(that.imageList)

                                    let name = '/storage/emulated/0/Android/data/io.dcloud.HBuilder/apps/HBuilder/doc/'+item.name

                                    that.imageList.push(name)

                                    console.log(that.imageList)

                                }

                            })

                            console.log(that.imageList)

                        }, function ( e ) {

                            alert( "Read entries failed: " + e.message );

                        } );

                    } );

            }

原文链接:
相关文章
最新更新