![](/img/trans.png)
[英]Camera java.lang.RuntimeException: setParameters failed
[英]E/AndroidRuntime( 2671): java.lang.RuntimeException: setParameters failed
我正在为HTC Doubleshot开发ROM ,但相机出现了一些问题(强制关闭)。 尤其是普通相机,还有大多数第三方相机(UCam Ultra Camera则没有)。
我遇到了一些麻烦 (有趣的地方是最近一次的第696行),我对发生的事情感到困惑。 其他相机(例如Google相机)的结果相同。
我的ROM是CarbonROM 4.4.4的构建,开发人员在构建Cyanogenmod 11的过程中成功完成了工作。
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="DS"
fetch="git://github.com/KitKatDS/"/>
<remote name="emmanuel"
fetch="git://github.com/EmmanuelU/"/>
<remote name="joelmaxuel"
fetch="git://github.com/joelmaxuel/"/>
<remote name="githubby"
fetch="git://github.com/"/>
<project path="buildbot" name="James_Buildbot" revision="master" remote="emmanuel">
<copyfile src="James" dest="James" />
</project>
<project name="android_device_htc_common" path="device/htc/common" revision="gingerbread" remote="DS" />
<project path="device/htc/doubleshot" name="android_device_htc_doubleshot" remote="joelmaxuel" revision="kk" />
<project path="device/htc/msm8660-common" name="android_device_htc_msm8660-common" remote="joelmaxuel" revision="kk" />
<project path="vendor/htc/doubleshot" name="android_vendor_htc_doubleshot" remote="joelmaxuel" revision="kk" />
<project path="kernel/htc/doubleshot" name="wild_kernel_htc_msm8660" remote="emmanuel" revision="android-msm-doubleshot-3.0-ion" />
<remove-project name="CyanogenMod/android_hardware_libhardware_legacy" />
<remove-project name="CarbonDev/android_frameworks_av" />
<remove-project name="CarbonDev/android_frameworks_native" />
<remove-project name="CarbonDev/android_packages_apps_Camera2" />
<project name="android_hardware_libhardware_legacy" path="hardware/libhardware_legacy" revision="cm-11.0" remote="DS" />
<project name="android_hardware_qcom_media-legacy" path="hardware/qcom/media-legacy" revision="cm-11.0-ion" remote="DS" />
<project name="android_hardware_qcom_display-legacy" path="hardware/qcom/display-legacy" revision="cm-11.0-ion" remote="DS" />
<project name="android_frameworks_av" path="frameworks/av" revision="cm-11.0" remote="DS" />
<project name="android_packages_apps_Camera2" path="packages/apps/Camera2" revision="cm-11.0" remote="DS" />
<project name="android_frameworks_native" path="frameworks/native" revision="kk" remote="joelmaxuel" />
</manifest>
我确保这在我的BoardConfigCommon.mk中:
# Camera
BOARD_USES_QCOM_LEGACY_CAM_PARAMS := true
COMMON_GLOBAL_CFLAGS += -DICS_CAMERA_BLOB -DNO_UPDATE_PREVIEW -DQCOM_BSP_CAMERA_ABI_HACK
BOARD_USES_QCOM_LEGACY_CAM_PARAMS的代码将添加适当的CFLAG(我检查了frameworks_av代码,文件camera / Android.mk):
ifeq ($(BOARD_USES_QCOM_HARDWARE),true)
LOCAL_CFLAGS += -DQCOM_HARDWARE
endif
ifeq ($(BOARD_USES_QCOM_LEGACY_CAM_PARAMS),true)
LOCAL_CFLAGS += -DQCOM_LEGACY_CAM_PARAMS
endif
我不知道接下来要检查什么。 有什么建议么?
设备的摄像头实现认为您传入的设置值无效。
在所有其他相机记录之间很难看到实际的抱怨,但是在日志中:
E / QualcommCameraHardwareZSL(171):无效的对焦模式值:连续图片E / QualcommCameraHardwareZSL(171):虚拟android :: status_t android :: QualcommCameraHardware :: setParameters(const android :: CameraParameters&):6487,rc = -22
如果在支持的自动对焦模式列表中未定义连续图片,则该应用程序将尝试对其进行无效设置。 如果已列出,则说明相机实现错误地拒绝了它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.