如何将 C 库与 Android NDK (Android Studio 2.3.3) 配合使用
How can I use C libraries with Android NDK (Android Studio 2.3.3)
我按照 https://wiki.openssl.org/index.php/Android 指南构建了一个动态库(和一个静态库)
但是,我现在被困住了,我不知道下一步该怎么做。 指南的下一步是"安装OpenSSL库",我没有错误。下一步是"编译和链接库",我认为这是我需要帮助的地方,因为我必须使用 Android Studio 2.3.3 来做到这一点
。如何让安卓工作室"找到"库和头文件位置
有人可以帮忙吗?
您需要执行的操作因实际项目而异。你有指向你自己的代码的指针吗?
我能给出的最好的建议是看看一个也使用 NDK 的项目。这是FreeRDP,它实际上也使用SSL:https://github.com/FreeRDP/FreeRDP/tree/master/client/Android/Studio
你必须连接东西,看看这里的.h
和.c
文件 https://github.com/FreeRDP/FreeRDP/tree/master/client/Android 更重要的是:
- https://github.com/FreeRDP/FreeRDP/blob/master/client/Android/android_jni_callback.h
- https://github.com/FreeRDP/FreeRDP/blob/master/client/Android/android_jni_callback.c
- https://github.com/FreeRDP/FreeRDP/blob/master/client/Android/android_jni_utils.h
- https://github.com/FreeRDP/FreeRDP/blob/master/client/Android/android_jni_utils.c
沿着代码库遵循其中一些函数。至于SSL,最终,您在主机开发环境中安装多少并不重要,重要的是它将如何与Android应用程序打包以及如何加载。例如,如果您按原样使用 OpenSSL,根据实际手机,它可能会加载 OpenSSL,这是系统的一部分,而不是与应用程序一起打包的内容 https://github.com/FreeRDP/FreeRDP/issues/3631。
相关文章:
- 无法将 GLFW 库与 Ubuntu 18.04 上的头文件链接
- 无法在Ubuntu上将共享库与Eclipse链接
- 为什么构建目录中新构建的共享库与安装目录中的副本具有不同的依赖项集?
- 使用静态库与 std::jthread (g++-10) 的分段错误
- 不能将C++的"std::filesystem"库与介子构建一起使用
- 如果包含映射的静态库与可执行文件和动态库链接,静态映射(变量)是否会被多次释放?
- 将预编译的 C 共享库与 JNI/NDK 结合使用
- 如何将 PhysX 库与 Xcode 链接
- NDK 将库与 cmake 链接
- 无法将提升库与 CMake 链接
- 强制链接静态库与 cmake 不起作用
- 矛盾的未解决的外部符号+未使用的库与VS2017和FFMPEG 4
- 如何在应用程序子项目中将静态库与gradle子项目链接起来
- 如何将动态链接库与CMake一起使用
- 如何将英特尔的数学函数库与 gcc 一起使用?
- 将外部C++库与 CMake 一起使用时出错
- 不同的数学符号绑定与共享库与 dlopen 并直接链接到可执行文件 (Linux)
- 如何将 C 库与 Android NDK (Android Studio 2.3.3) 配合使用
- Android NDK:使用的静态库与指定的预编译库不同
- 链接c++静态库与android ndk时出错(错误:无法识别文件格式)