我试图将cyanogenmod 12.1 (基于5.xAndroid)移植到我的LG D290n L Fino上,这是一款基于高通( qualcomm msm8610 )的运行安卓KitKat的设备。当我尝试使用库存相机HAL模块(包含所有专有的股票qcamera库和股票qcamera)时,我会在相机HAL模块的dlopen中出现一个关于缺少符号"_ZN7android16CameraParameters9isPreviewE“的错误(它被"camera.msm8610.so”库引用)。然后相机初始化失败。我已经做了一些研究,我发现这个符号位于libcamera_client.so (由框架/av包提供的库)中的kitkat。这个符号在棒棒糖库中丢失了。
有人知道定义这个符号的代码是什么吗?
非常感谢您提前!
发布于 2016-04-10 16:30:40
那是android::CameraParameters::isPreview()。如果它是AOSP的一部分,我希望它是在KitKat's CameraParameters.h中定义的,但它并不存在,这意味着它是由OEM引入的(也许是氰素,尽管我没有看到它那里也有)。
如果是这样的话,您的HAL模块只能使用自定义的libcamera_client.so。有可能这个方法很简单,你可以对它进行逆向工程并提供替换,但它确实引发了这样一个问题:其他的部件和部件是否已经以更精细的方式定制了。
https://stackoverflow.com/questions/36528094
复制相似问题