我正在为HTC Doubleshot开发ROM,并且我遇到了一些相机故障(它强制关闭)。尤其是股票相机和大多数第三方相机(UCam Ultra Camera没有)。E/AndroidRuntime(2671):java.lang.RuntimeException:setParameters失败
我有几个logcats(乐趣从最新一行的696行开始),我很难理解发生了什么。其他相机,如Google相机,也有相同的结果。
我的ROM是CarbonROM 4.4.4,其中成功的工作已经由开发建设的CyanogenMod 11所以我的表现已经分裂我的github(joelmaxuel)和他之间已经完成(EmmanuelU,KitKatDS)的构建:
<?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代码,文件摄像机/ 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
我不知道接下来要检查什么。有什么建议么?
你有没有偶然发现这个呢?这听起来类似:http://stackoverflow.com/questions/3890381/camera-setparameters-failed-in-android –
我做到了。感谢您再次提醒我注意。我最初解雇它是因为它更多的是相机设计,我的问题是框架设计(或者更合适的设备树设计)。我可以(理论上)在股票相机2应用程序中禁用一堆东西(或修改以适应我的需要)以使其工作,但这不能解决第三方相机(如谷歌相机,也是FC的)。 –