讨教各位高手,之前没做过 android 开发,现在正在参与一个项目,碰到一些动态库调用的困惑。
目前的情况是:
本人拿到几个在ubuntu中编译的 armv7-a版本.so的动态库,库接口有.h和文档说明,也有示例文件。这些库和示例文件都是C/C++编写的,运行在ubuntu上,接口并不是JNI标准接口。
本人需要在android 中调用这些库的功能,需要为这些库再封装一层JNI接口,再生成native层的新的.so的库。查了一些资料,发现需要用NDK来生成native 的.so库。
本人安卓的开发是在windows 上用android studio 管理的。
现在不清楚的是:
本人需要的这个native层的.so库应该是在windows上用windows 版的NDK生成,还是在ubuntu上用linux版的NDK生成?
NDK的版本选择有什么需要注意的么?
android 新手,望指点,谢谢!
目前的情况是:
本人拿到几个在ubuntu中编译的 armv7-a版本.so的动态库,库接口有.h和文档说明,也有示例文件。这些库和示例文件都是C/C++编写的,运行在ubuntu上,接口并不是JNI标准接口。
本人需要在android 中调用这些库的功能,需要为这些库再封装一层JNI接口,再生成native层的新的.so的库。查了一些资料,发现需要用NDK来生成native 的.so库。
本人安卓的开发是在windows 上用android studio 管理的。
现在不清楚的是:
本人需要的这个native层的.so库应该是在windows上用windows 版的NDK生成,还是在ubuntu上用linux版的NDK生成?
NDK的版本选择有什么需要注意的么?
android 新手,望指点,谢谢!
解决方案
10
两个版本都可以进行jni的封装编译
2
没区别
8
都可以,反正都是交叉编译