我有一台Nexus 6P。我正在调查为什么OpenCamera已停止使用Android N开发者预览版(我不是开发人员,只是用户)。我找到了可能导致问题的以下代码:CameraControllerManager2.java:62
我创建了一个新的Android项目,并添加了以下功能:
...
import android.hardware.camera2.CameraAccessException;
import android.hardware.camera2.CameraCharacteristics;
import android.hardware.camera2.CameraManager;
import android.hardware.camera2.CameraMetadata;
...
public class MainActivity extends AppCompatActivity {
private String TAG = "MainActivity";
...
public void test(int cameraId) {
CameraManager manager = (CameraManager)this.getSystemService(Context.CAMERA_SERVICE);
try {
String cameraIdS = manager.getCameraIdList()[cameraId];
CameraCharacteristics characteristics = manager.getCameraCharacteristics(cameraIdS);
int support = characteristics.get(CameraCharacteristics.INFO_SUPPORTED_HARDWARE_LEVEL);
Log.d(TAG, "Camera support: " + support);
}
catch (CameraAccessException e) {
e.printStackTrace();
}
}
...
}
调用test(0)
,设备上的控制台输出为:
04-22 15:16:54.263 11578-11578/test.myapplication D/MainActivity: Camera support: 3
当我查找support
(docs)的可能值时,它们必须为0, 1 or 2,但support
如何取3的值?它应该是一个位掩码还是更糟糕的事情?
答案 0 :(得分:2)
您正在查看Android发送版的文档。目前,Android N位于开发者预览版中,文档为elsewhere。
该特征有一个新的INFO_SUPPORTED_HARDWARE_LEVEL_3
值,描述为:
...设备还支持YUV重新处理和RAW图像捕获,以及其他输出流配置。