微信小程序最近非常火熱,小編最近做了一個新項目,使用小程序開發考試系統,在使用App參加考試的時候調用攝像頭抓拍用戶是否作弊,在開發過程中遇到點問題,下面小編把問題描述和解決方法分享給大家,具體內容如下:
問題
今天小編遇到了這么個問題,就是在用戶使用App參加考試的時候調用攝像頭抓拍用戶是否作弊,其實這也沒什么,關鍵在于不能打擾用戶考試,不能被用戶發現什么時候抓拍的,也不能給用戶查看圖片,只有考完是后才能查看。這系統相當于考駕照時的上機答題部分。開始經理的要求是調用小程序外部的手機拍攝功能,這要可把我嚇的夠嗆。
解決方法
遇到這種問題肯定要先找下官網的幫助文檔,于是找到了調用攝像頭的這么一個模塊
相機組件控制 (wx.createCameraContext)
說明:
創建并返回 camera 上下文 cameraContext 對象,cameraContext 與頁面的 camera 組件綁定,一個頁面只能有一個camera,通過它可以操作對應的 <camera/> 組件。 在自定義組件下,第一個參數傳入組件實例this,以操作組件內 <camera/> 組件
cameraContext 對象的方法列表:
| takePhoto | OBJECT | 拍照,可指定質量,成功則返回圖片 |
| startRecord | OBJECT | 開始錄像 |
| stopRecord | OBJECT | 結束錄像,成功則返回封面與視頻 |
takePhoto 的 OBJECT 參數列表:
| quality | String | 否 | 成像質量,值為high, normal, low,默認normal |
| success | Function | 否 | 接口調用成功的回調函數 ,res = { tempImagePath } |
| fail | Function | 否 | 接口調用失敗的回調函數 |
| complete | Function | 否 | 接口調用結束的回調函數(調用成功、失敗都會執行) |
這不是有個拍照功能的模塊嗎,于是去找了一下官網所給的代碼研究了一下:
官網代碼:
wxml代碼:
<view class="page-body"><view class="page-body-wrapper"><camera device-position="back" flash="off" binderror="error" style="width: 100%; height: 300px;"></camera><view class="btn-area"><button type="primary" bindtap="takePhoto">拍照</button></view><view class="btn-area"><button type="primary" bindtap="startRecord">開始錄像</button></view><view class="btn-area"><button type="primary" bindtap="stopRecord">結束錄像</button></view><view class="preview-tips">預覽</view><image wx:if="{{src}}" mode="widthFix" src="{{src}}"></image><video wx:if="{{videoSrc}}" class="video" src="{{videoSrc}}"></video></view></view>
新聞熱點
疑難解答