我即将开始一项涉及使用EPSON Moverio AR眼镜或类似产品的增强现实项目。假设我们使用这些眼镜,它们可以在Android 4.0.4 - API 15上运行。该应用程序将涉及近乎实时的视频分析(来自眼镜相机的帧),用于使用标记进行特征检测/跟踪,并在现实世界中覆盖3d对象'基于标记。
到目前为止,在技术方面,看起来我们将处理:
考虑到上述情况,我想知道是否值得通过NDK使用单NativeActivity
和android_native_app_glue
代码完成所有操作。当我说值得时,我的意思是表现明智。
当然,在C / C ++方面做这一切有一个优点,那就是代码可能会被移植,只需要很少的修改就可以在其他环境中运行。但OpenCV确实有Android的Java绑定,GL也可以在一定程度上用于Java。所以我只是想知道性能是否值得,或者它与使用GLSurfaceView
的情况大致相同。
答案 0 :(得分:2)
我在增强现实中工作。我见过的绝大多数应用都是原生的。 Google建议避免使用原生应用程序,除非绝对必要。我认为AR是必要的相对较少的案例之一。我所知道的好处是:
您可能能够构建一个非原生应用程序,其中大部分代码都是原生代码,并且尽管基于Java,但运行良好,但它要困难得多。