微信小程序开发2 - 本文实例讲述了微信小程序实现拍照和录像拍摄功能方法。分享给大家供大家参考,具体如下:

微信小程序拍照: API:wx.chooseImage

原先的想法是使用微信的camera组件来实现,并且模拟发朋友圈的样子来进行相机的设置,其实就是将camera组件的大小设置成根屏幕一样大,并在上面使用一个cover-image组件来给用户进行点击,可是实际上的情况是第一,cover-image组件有时候会消失,第二,整个流程实现起来很僵硬,页面跳转也是卡的要死,后来无意间发现了另一个API:wx.chooseImage,这个API会自己去调用相机和相册,之后的工作完全交给底层去实现,简直是简单到没朋友:

// 微信小程序拍照功能
getLocalImage:function(){var that=this;wx.chooseImage({count:1,success:function(res){// 这里无论用户是从相册选择还是直接用相机拍摄,拍摄完成后的图片临时路径都会传递进来app.startOperating("保存中")var filePath=res.tempFilePaths[0];var session_key=wx.getStorageSync('session_key');// 这里顺道展示一下如何将上传上来的文件返回给后端,就是调用wx.uploadFile函数wx.uploadFile({url: app.globalData.url+'/home/upload/uploadFile/session_key/'+session_key,filePath: filePath,name: 'file',success:function(res){app.stopOperating();// 下面的处理其实是跟我自己的业务逻辑有关var data=JSON.parse(res.data);if(parseInt(data.status)===1){app.showSuccess('文件保存成功');}else{app.showError("文件保存失败");}}})},fail:function(error){console.error("调用本地相册文件时出错")console.warn(error)},complete:function(){}})},

微信小程序录像拍摄  API:wx.chooseVideo

其实跟上面的原理是一样的,对应的API就是wx.chooseVideo,其中可以设置拍摄时间,用户拍摄结束以及用户拍摄时间超时等,都会调用success的回调函数,所以又是可以安心处理接下来的业务流程,而不用需要调用camera组件。

// 摄像功能getLocalVideo:function(){var that=this;var session_key=wx.getStorageSync('session_key');wx.chooseVideo({maxDuration:10,success:function(res1){app.startOperating("上传中")// 这个就是最终拍摄视频的临时路径了var tempFilePath=res1.tempFilePath;},fail:function(){console.error("获取本地视频时出错");}})},

实现起来也是很简单,但是有一个问题就是没有办法像调用camera组件一样获取视频的缩略图,这是现在唯一的缺陷。但是总体来说,比起调用camera组件,这样实现起来的确简单了很多。

微信小程序开发(2) - 微信小程序实现拍照和录像拍摄功能方法相关推荐

  1. 微信小程序开发实现微信支付

    微信支付是时下最流行的交易支付方法之一,潜移默化推动着无现今社会的变革.小程序作为微信上的轻应用,同时也开放微信支付的接口,可以通过转账,扫二维码支付.要完成一次具体的订单支付需要完整的支付流程,具体 ...

  2. 微信小程序开发(一) 微信登录流程

    文/YXJ 地址:http://blog.csdn.net/sk719887916/article/details/53761107 最近在研究微信小程序开发,非常有意思的一个东西.花了一点时间写了一 ...

  3. 小程序开发教程、小程序资讯、小程序demo、小程序实战等合揖(7月19日更新)

    7月19日微信小程序联盟更新的小程序开发教程.小程序资讯.小程序demo.小程序实战内容合揖如下: 小程序资讯与小程序教程 一张图带你看懂小程序发展蓝皮书 2017-07-19 微信小程序开发问答&l ...

  4. 小程序开发教程、小程序资讯、小程序demo、小程序实战等合揖(7月19日更新)...

    2019独角兽企业重金招聘Python工程师标准>>> 7月19日微信小程序联盟更新的小程序开发教程.小程序资讯.小程序demo.小程序实战内容合揖如下: #小程序资讯与小程序教程 ...

  5. 微信公众平台开发[3] —— 微信公众号支付功能(PHP)

    直言无讳,我就是一个初涉微信开发的小白,写这篇博客的原因:一是为了给自己做下备忘记录,以便以后能回忆这条程序猿的坎坷路:二是希望能帮助到同是自学开发的小白们:三是对那些不屑一顾于我等尘埃的大牛们的控诉 ...

  6. 视频教程-基于python的微信公众号开发教程-微信开发

    基于python的微信公众号开发教程 微信企业号星级会员.10多年软件从业经历,国家级软件项目负责人,主要从事软件研发.软件企业员工技能培训.已经取得计算机技术与软件资格考试(软考)--"信 ...

  7. 微信公众 mysql回复图片_微信公众号开发之微信公共平台消息回复类实例

    本文实例讲述了微信公众号开发之微信公共平台消息回复类.分享给大家供大家参考.具体如下: 微信公众号开发代码我在网上看到了有不少,其实都是大同小义了都是参考官方给出的demo文件进行修改的,这里就给各位 ...

  8. 视频教程-微信公众平台开发入门-微信开发

    微信公众平台开发入门 订阅后,请点击此处观看大牛全套视频课程:课程播放页链接 价格可能因活动略有浮动 刘运强 ¥39.00 立即订阅视频课 订阅后:请点击此处观看视频课程 视频教程-微信公众平台开发入 ...

  9. 微信公众平台开发[2] —— 微信端分享功能

    背景 初次尝试微信公众号的开发,对于学习方法的探索都是来源于网上的博客.问答,对于参差不齐的信息,自己也是有苦说不出,抽出一点时间写点文章,既是对自己的学习总结,也希望给予同是菜鸟的小白一点帮助. 今 ...

最新文章

  1. 深入学习微框架:Spring Boot
  2. 文章页点赞php代码,wordpress文章页面添加点赞功能
  3. qt 从文件中读出数据显示在表格中_QT中有什么控件可以实现向excel的表格显示,qt数据存储到Excel表格...
  4. position:搜索框显示历史浏览记录
  5. javascript 未来新方法的介绍
  6. OpenCV2简单的特征匹配
  7. Atitit 遍历文件夹算法 autoit attilax总结
  8. PLC/WINCC实现远程监控的方法
  9. 程序员价值观和网络复杂性-网络不可达排查过程
  10. 团队协作OA解决方案
  11. raised exception class EAccexxViolation with ‘Access violation at address 45EFD5 in module 出错
  12. java娘_如何调教Java娘来优化MC!
  13. 1.13正版服务器,我的世界Minecraft梦幻世界服务器(1.7-1.13版本)
  14. Springboot + Spring Security 实现前后端分离登录认证及权限控制
  15. mars3d-热力图
  16. python下标越界怎么解决_Python异常处理
  17. win10右键一直卡死解决记录
  18. js调用linux命令行,shelljs
  19. 那些裸辞的人后来都怎么样了?
  20. 转计算机网络应用申请书,转专业相关申请书最新6篇

热门文章

  1. 压缩包里面excel 导出 (跨行跨列)
  2. Android 10 及api29之后,解决全透明导航栏不成功
  3. 什么是次世代游戏?次世代游戏前景怎么样?
  4. Flask05_ORM单表
  5. 诗词创作[3] 问春
  6. zabbix 自动发现/自定义宏
  7. 【Python】新华字典(bushi
  8. August 16th Thursday (八月 十四日 木曜日)
  9. PTA 7-47 打印选课学生名单
  10. JVM 面试 4 连炮,你能顶住么?