从 Android 中的原生 c++ 文件调用本机 opencv
Calling native opencv, from native c++ files in Android
在这里真的很挣扎。 基本上,我有一大堆来自iOS项目的c ++文件,它们使用opencv并且工作正常。
现在,我正在尝试移植到Android。 所以我需要做的是,将我现有的 c++ 文件作为共享库拉入 Android 项目中,并且仍然能够调用本机 opencv c++ 方法。 这可能吗?
我知道 java 实现只是一堆 c++ 代码的包装器,但我似乎找不到一种方法来从项目中的其他 c++ 文件中调用本机 c++ 代码。 任何帮助,不胜感激。 谢谢
史蒂夫
您是否尝试过使用 Android NDK(原生开发套件(?它允许您在Android中使用c/c ++代码。但是,您不能简单地将库导入到您的应用程序中,您需要使用 NDK (.SO 文件(,它将生成充当代码链接器的脚本。
如果我理解正确的话,你需要在本地层与opencv接口(而不是通过Java API(。 您应该能够获取目标平台的 .so 库以及必要的标头,并使用 NDK 对其进行构建。
如果您的应用程序项目没有 JNI 部件,只需将相应的 OpenCV 本机库从/sdk/native/libs/复制到项目目录到文件夹 libs/即可。
源
您可以通过多种方式设置 NDK 内部版本。CMake 的较新版本 (>=3.7.2( 使得交叉编译相对轻松。请参阅此页面
相关文章:
- 编译多个C++文件.调用二进制文件以运行代码
- 无法从 SO 文件调用 SO 文件的函数 - C++生成文件
- 如何从另一个文件调用类构造函数?
- 调用函数一次用于动态链接库,一次从可执行文件调用函数
- 当我从头文件和实现文件调用我的函数到我的主文件时,我没有得到任何输出
- 从 Android 中的 C 文件调用C++函数
- 从外部文件C++调用函数
- 如何从多个 cpp 文件调用函数
- 从用户定义的头文件调用函数时出现未定义的引用错误,其实现位于.cpp文件中
- cmake:生成批处理文件调用cl.exe
- 在文件中生成随机数,然后从文件调用它们,然后将它们打印出来
- main.cpp从 .h 文件调用公共虚拟方法
- 如何从 python (py) 文件调用 C++ 函数
- 如何从 cpp 文件调用 setRequestOrientation()
- 调试Visual Studio中可执行文件调用的C 文件
- 可以使用不同的头文件调用相同的函数吗?
- 从 Android 中的原生 c++ 文件调用本机 opencv
- 使用对象文件调用Winapi功能
- 从头文件调用字符串getter函数
- 方法从头文件调用