- 小程序camera组件takePhoto安卓调用无效
现在Camera组件takePhoto方法在IOS上可以正常拍照并进入对应的回调 但安卓却不行,takePhoto后根本不进入fail,complete跟success。 之前还可以,现在所有安卓机型都不行了。 临上线来个这种问题,拜托你们微信的东西能不能稳定点,camera这个组件一直有问题也没看到怎么解决 , 但外界需求是有的啊,没弄好要么就别丢上来了,搞死开发啊 [代码][代码]//拍照功能 takePhoto() { if (!this.ctx) { //创建拍照组件 if (wx.createCameraContext()) { this.ctx = wx.createCameraContext(); //加载结束 } else { wx.showModal({ title: "提示", content: "当前微信版本过低,请升级到最新微信版本!" }) } } if (this.data.showResult) { return } console.log("开始拍照"); this.ctx.takePhoto({ quality: 'low', success: (res) => { this.setData({ tempSrc: res.tempImagePath }) this.uploadImg(res.tempImagePath); }, fail: (error) => { setTimeout(() => { this.takePhoto() }, 1000); console.log("拍照失败"); }, complete:()=>{ console.log('拍照完成'); } }); }, [代码][代码]
2018-11-01 - 调用摄像头的持续拍照出现无法定时拍照,闪退,发热等问题
- 小程序Camera组件调用摄像头持续自动拍照上传, 部分手机无法按照预期自动拍照(华为手机尤其明显), 而且2~3分钟后手机发烫,电量耗费严重。 这个takePhoto方法会将照片上传到服务器,服务器返回信息后继续拍照,但有时候拍照很随缘,takePhoto后并没有拍照 [代码]//拍照功能[代码][代码] [代码][代码]takePhoto() {[代码][代码] [代码][代码]this[代码][代码].ctx.takePhoto({[代码][代码] [代码][代码]quality: [代码][代码]'low'[代码][代码],[代码][代码] [代码][代码]success: (res) => {[代码][代码] [代码][代码]this[代码][代码].setData({[代码][代码] [代码][代码]tempSrc: res.tempImagePath[代码][代码] [代码][代码]})[代码][代码] [代码][代码]this[代码][代码].setData({[代码][代码] [代码][代码]tempImg: res.tempImagePath,[代码][代码] [代码][代码]})[代码][代码] [代码][代码]this[代码][代码].uploadImg(res.tempImagePath);[代码][代码] [代码][代码]}[代码][代码] [代码][代码]});[代码][代码] [代码][代码]},[代码]
2018-09-28 - 关于自动调用摄像头的持续拍照的的问题
- 小程序Camera组件调用摄像头持续自动拍照上传, 部分手机无法按照预期自动拍照(华为手机尤其明显), 而且2~3分钟后手机发烫,电量耗费严重。 - 所有手机自动拍照上传,得到后台响应后再继续拍第二张进行上传 - arwxAPI.taskSequence() .then(() => arwxAPI.uploadFile({ url: app.globalData.origin + '/ar-service/api/v1/info/upload', filePath: url, name: 'file', header: { "Content-Type": "multipart/form-data" }, formData: { 'openId': openID, 'latitude': this.data.userPoint.lat === undefined ? '' : this.data.userPoint.lat, 'longitude': this.data.userPoint.lng === undefined ? '' : this.data.userPoint.lng } })) .then(res => { //将获取的结果置入 let resultJson = JSON.parse(res.data); if (resultJson.payload != null && resultJson.payload.infos.length > 0) { let resultList = []; for (let num = 0; num < resultJson.payload.infos.length; num++) { let item = resultJson.payload.infos[num]; let isSame = this.data.resultList.some((val, key) => { return val.itemId == item.arCode }); if (!isSame) { resultList.push({ itemId: item.arCode, itemIcon: item.iconPath, itemName: item.title, content: item.info, video: item.videoUrl, dealerList: [{ name: resultJson.payload.dealerName, addr: resultJson.payload.dealerAddr, distance: '距离' + resultJson.payload.dealerLength + '公里', phone: resultJson.payload.dealerTel, isFavor: false }, { name: resultJson.payload.fdName, addr: resultJson.payload.fdAddr, distance: '距离' + resultJson.payload.fdLength + '公里', phone: resultJson.payload.fdTel, isFavor: true } ] }); //弹出扫描结果页面 this.setData({ resultLogo: resultList[0].itemIcon }); this.setData({ resultscan: true, scanSuccess: true, }); this.resultRingAnimation(); } } setTimeout(() => { this.setData({ resultscan: false }); }, 3500); let newResultList = this.data.resultList.concat(resultList); this.setData({ resultList: newResultList.reverse() }); }
2018-09-04