编译ICS/JB相机应用-原生库jni-mosaic错误

 2023-01-21    241  

问题描述

我想使用ICS/JB摄像头应用程序的Panorama模式.
我已经下载了源代码(带有资源),并设法解决了所有代码编译错误,但是一旦我在设备上启动应用程序(运行JB),我就会得到此错误:

10-25 14:42:53.617: E/AndroidRuntime(23147): FATAL EXCEPTION: GLThread 2586
10-25 14:42:53.617: E/AndroidRuntime(23147): java.lang.UnsatisfiedLinkError: Native method not found: com.app.camera.panorama.MosaicRenderer.reset:(IIZ)V
10-25 14:42:53.617: E/AndroidRuntime(23147):    at com.app.camera.panorama.MosaicRenderer.reset(Native Method)
10-25 14:42:53.617: E/AndroidRuntime(23147):    at com.app.camera.panorama.MosaicRendererSurfaceViewRenderer.onSurfaceChanged(MosaicRendererSurfaceViewRenderer.java:49)
10-25 14:42:53.617: E/AndroidRuntime(23147):    at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1505)
10-25 14:42:53.617: E/AndroidRuntime(23147):    at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)

我确实有一个位于Armeabi-V7A/armeabi/x86的Libjni-Mosaic Lib,它似乎可以很好地加载它,但可能不包含MosaiCrenderer的方法.

编译ICS/JB相机应用-原生库jni-mosaic错误

.

我还尝试编译CyanogenMod摄像机应用树/ICS 但是我遇到了同样的错误…

相机本身适用于剧照和视频录制,但是一旦我更改为Panorama模式,它就会崩溃.

任何人都可以将我指向正确的JNI-Mosaic Lib,或者可能是我做错了什么?我需要做些事情以使我的应用使用jni/so文件吗?

推荐答案

您将Java类MosaiCrenderer移至包装com.app.camera.panorama,但是mosaic_renderer_jni.cpp文件仍然具有本机方法,请参阅com.android.camera.panorama,例如

JNIEXPORT void Java_com_android_camera_panorama_MosaicRenderer_reset(

您应该更改本机代码中的函数名称以反映新的软件包名称,例如

JNIEXPORT void Java_com_app_camera_panorama_MosaicRenderer_reset(

其他推荐答案

如果有人仍然对构建Google的本机相机应用程序感兴趣,我建议您此存储库 https://android.googlesource.com/platform/packages/apps/camera2/它不需要构建所有Android OS代码.这对我有很大帮助.

以上所述是小编给大家介绍的编译ICS/JB相机应用-原生库jni-mosaic错误,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/26241.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。