高通android9.0 camera API1底層調用為HAL3而非HAL1,若需要調用HAL1的效果,打開攝像頭需要按如下方法打開:
try {
Class<?> cameraCalzz = Class.forName("android.hardware.Camera");
Method openLegacy = cameraCalzz.getMethod("openLegacy", int.class, int.class);
camera = (Camera) openLegacy.invoke(null, cameraId, 0x100);//CAMERA_HAL_API_VERSION_1_0 = 0x100
} catch (Exception e) {
e.printStackTrace();
}
具體可參考:https://blog.csdn.net/zhuyong006/article/details/102480557