android - 使用 NDK(本机 C++ 代码)部分构建 librealsense android 应用程序?
问题描述
我正在尝试构建一个android应用程序。
- 该应用程序利用 librealsense android 包装器来获取帧(返回
com.intel.realsense.librealsense.FrameSet
)。 - 然后它将获得的帧传递给一些本机 C++ 函数以进行进一步处理。本机 C++ 函数将
rs2::frameset
作为输入参数,例如int NativeFrameProcessing(rs2::frameset& frames)
. 这是通过使用 NDK 实现的。
通过查看librealsense示例android程序,android中的帧获取部分似乎很清楚。librealsense 代码还显示了通过将本地指针转换为jlong
.
我不清楚的是如何在 android 部分和 NDK(本机代码)部分中指定 librealsense 依赖项。
在android中,依赖被指定为:
repositories {
maven{
url "https://dl.bintray.com/intel-realsense/librealsense-dev"
}
}
dependencies {
implementation 'com.intel.realsense:librealsense:2.41.0+@aar'
}
在 NDK(本机代码部分)中,我使用 CMake 生成编译配置。
find_package(realsense2 REQUIRED)
但是我猜这样,CMake会找到安装在当前系统中的librealsense(本例中是Ubuntu,因为我在Ubuntu中做项目),它不是针对android设备构建的,版本可能不一致使用下载的 AAR android 库。
那么如何正确指定对 librealsense 的依赖项?例如,指向 CMake 以某种方式使用下载的 AAR 库,因此 android 部分和 NDK 部分都依赖于相同的 librealsense ?提前致谢 !
解决方案
推荐阅读
- ssl - 使用 .pem、.cert、.p7b 文件应用证书
- compiler-construction - LLVM - Wrapper Pass 类
- azure - 从 GitHub 工作流管理 Azure 管道
- javascript - Typescript 多维数组类型
- microsoft-graph-api - 使用 Outlook 日历 API 安排缩放会议
- php - 如何运行所有 csv 数据以使用 curl 获取数据
- sas - 返回过去 16 年的特定日期
- html - 如何仅更改引导表的外边界的属性
- performance - 缓存视频文件 - 好习惯与否
- linux - 如何从 git 历史记录中清除多余的合并?