我对添加到Camera2Basic示例代码的createcamerapreviewsion函数末尾的代码片段有问题。
我有以下代码片段将相机特性打印到控制台:
CameraManager manager = (CameraManager) getContext().getSystemService(Context.CAMERA_SERVICE);
CameraCharacteristics characteristics = manager.getCameraCharacteristics(mCameraId);
List<CameraCharacteristics.Key<?>> keys = characteristics.getKeys();
for (CameraCharacteristics.Key key: keys){
//Log.i(key.getName(), (String)characteristics.get(key));
//Log.i("hello", "there");
System.out.println("Key: " + key + "- " + key.getName() + "; Value: " + characteristics.get(key));
}
在大多数情况下,它会返回良好的值:
Key: android.sensor.info.pixelArraySize; Value: 4128x3096
但对于许多值,结果既不合理也不为空,但似乎存在一些编码问题:
Key: android.control.aeAvailableModes; Value: [I@829b672
我试着测试并省略空值,然后重新转换为字符串。
理想情况下,我需要清晰地打印出完整的值集,或者测试该值是否相关,而不是在列表中获取垃圾值。