華為手機的后置攝像頭想要實現掃碼功能,必須要開啟后置攝像頭的預覽畫面也就是拍攝畫面,而后置攝像頭的使用也需要開啟相應的權限才行,比如手機相機的敏感類型權限ohos.permission.CAMERA 。
下面,我們一起在自己的APP項目中來實現相機權限-ohos.permission.CAMERA的獲取和開啟 。
一.打開項目中的配置文件config.json , 通過“reqPermissions”字段聲明相機相關的權限 。

文章插圖
二.在MainAbilitySlice類中,使用requestPermissionFromUser來動態申請相機的權限 。public class MainAbilitySlice extends AbilitySlice {public static final int MY_PERMISSIONS_REQUEST_CAMERA = 1039;@Overridepublic void onStart(intent intent) {super.onStart(intent);super.setUIContent(ResourceTable.Layout_ability_main);requestCameraPermission();}//1.獲取相機權限public void requestCameraPermission(){if (verifySelfPermission("ohos.permission.CAMERA") != IBundleManager.PERMISSION_GRANTED) {// 應用未被授予權限if (canRequestPermission("ohos.permission.CAMERA")) {// 是否可以申請彈框授權(首次申請或者用戶未選擇禁止且不再提示)requestPermissionsFromUser(new String[] { "ohos.permission.CAMERA" } , MY_PERMISSIONS_REQUEST_CAMERA);} else {// 顯示應用需要權限的理由 , 提示用戶進入設置授權new ToastDialog(getContext()).setText("請進入手機系統【設置】中 , 重新開啟應用的相機權限").show();}} else {// 權限已成功被授予new ToastDialog(getContext()).setText("已授權,可使用相機的拍攝功能").show();//相機預覽界面//addQrLayout();}}}三.在MainAbility中,通過onRequestPermissionsFromUserResult回調函數來接收授予相機權限的結果 。public class MainAbility extends Ability {private static final int PERMISSION_REQUEST_CODE = MainAbilitySlice.MY_PERMISSIONS_REQUEST_CAMERA;@Overridepublic void onStart(Intent intent) {super.onStart(intent);super.setMainRoute(MainAbilitySlice.class.getName());}//調用requestPermissionsFromUser后的權限申請應答@Overridepublic void onRequestPermissionsFromUserResult(int requestCode, String[] permissions, int[] grantResults) {switch (requestCode){case PERMISSION_REQUEST_CODE: {if (grantResults.length > 0 && grantResults[0] == IBundleManager.PERMISSION_GRANTED){new ToastDialog(getContext()).setText("此應用已授權,可進行相機的拍攝").show();}else{new ToastDialog(getContext()).setText("權限被拒絕").show();}return;}}}}四.進行項目的真機測試 , 查看項目的APP是否有相關權限內容的提示,如果有相關提示框出現則表示手機的攝像頭使用權限可以進行開通 。

文章插圖
【鴻蒙攝像頭調用,鴻蒙應用程序讀取相冊權限】如果APP在打開之后,出現上圖所示的提示框,我們選擇并點擊“僅使用期間允許”按鈕,即可真正開通手機相機功能的權限 。
結語:手機實現掃碼的第一步需要開通相機功能相關的權限,比如ohos.permission.CAMERA權限 。而后置攝像頭之所以能正常進行畫面的拍攝 , 需要在APP初次安裝時去啟動并獲取相機功能給予的權限,保證在后面進行拍攝時其畫面不出現“黑屏” 。
- 華為鴻蒙系統快速打開健康碼,華為鴻蒙系統最新版本功能
- 華為鴻蒙系統多機位怎么弄,華為鴻蒙進入工程模式
- 升級鴻蒙后高清通話,華為鴻蒙系統高清通話怎么開啟
- 華為鴻蒙系統快捷欄怎么設置,華為鴻蒙操作界面怎么設置
- 華為手機提示升級鴻蒙系統,華為手機升級鴻蒙的各功能
- 華為P10Plus鴻蒙回退Emui安卓教程官方操作系統
- 華為手機充電顯示此數據線會降低充電速度,鴻蒙充電慢什么原因
- 華為鴻蒙系統怎么設置充電,鴻蒙電池最大容量
- 榮耀v10攝像頭傳感器型號,榮耀v10攝像頭型號查詢
- 華為升級鴻蒙沒有指紋識別,華為升級鴻蒙20正式版
