使用cameraManager.getSupportedCameras获取相机列表,得到的列表中仅2个可用摄像头,与真机摄像头数量不符

用官方示例获取相机列表:

let cameraArray: Array<camera.CameraDevice> = cameraManager.getSupportedCameras() 
得到的cameraArray的length是2,再用如下示例打印出摄像头信息: 
for (let index = 0; index < cameraArray.length; index++) { 
  console.info('cameraId : ' + cameraArray[index].cameraId);                          // 获取相机ID 
  console.info('cameraPosition : ' + cameraArray[index].cameraPosition);              // 获取相机位置 
  console.info('cameraType : ' + cameraArray[index].cameraType);                      // 获取相机类型 
  console.info('connectionType : ' + cameraArray[index].connectionType);              // 获取相机连接类型 
}

打印出的信息如下:

cameraId : device/0 
cameraPosition : 1 
cameraType : 0 
connectionType : 0 
 
cameraId : device/1 
cameraPosition : 2 
cameraType : 0 
connectionType : 0

问题1:cameraArray里是这个手机所有可用的摄像头,为什么只有2个,而不是4个(真机有4个)

问题2:打印出来的摄像头信息,cameraType都是0,既不是广角也不是长焦,但真机的系统相机里有广角和长焦镜头,为什么获取不到。

手机版本:2.0.0.33(SP35C00E33R4P11log)

HarmonyOS
2024-05-08 21:40:34
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
sheeny2000

接口中将物理摄像头打包成了逻辑摄像头,数组中的两个元素,前置和后置是逻辑摄像头,不可以通过代码区分不同的物理摄像头。

分享
微博
QQ
微信
回复
2024-05-09 11:32:10
相关问题
HiSpark_IPC_DIY 摄像头烧录失败
4097浏览 • 3回复 待解决
如何获取前置摄像头预览图像
475浏览 • 1回复 待解决
请问3.1如何调用摄像头
811浏览 • 1回复 待解决
鸿蒙webview调用摄像头和麦克风
335浏览 • 0回复 待解决
寻找鸿蒙系统灯控设备、鸿蒙摄像头
3996浏览 • 2回复 待解决
关于获取应用列表权限问题?
1552浏览 • 1回复 待解决
获取sequence列表问题有知道吗?
1322浏览 • 2回复 待解决
谁知道手表gt2如何测试
5778浏览 • 2回复 待解决
调试鸿蒙,如何获取手机UDID
24973浏览 • 5回复 已解决