【发布时间】:2017-03-17 20:45:09
【问题描述】:
我刚刚完成了 android 的原生开发。我成功地让我的 AndroidStudio 2.2.2 准备好进行原生开发
我还构建了示例 hello-jni 项目
我正在努力实现的目标
我正在尝试使用以 c++ 设计的现有库(我将获得静态库 .a 扩展名或 .so 文件)
关于原生开发的一些困惑
1) 我应该使用现有 c++ 库的 .cpp 和 .h 文件而不是 .a 或 .so 文件吗?
2) 我是否需要制作 CMakeLists.text :到目前为止,我用谷歌搜索了我的 .a 文件 不是使用 ndk-build 生成的> ,所以我需要成功。
如果我使用 .cpp & .h 文件,我应该制作 Android.mk 和 Application.mk
CMakeLists.text 是否将我新开发的 android 项目编译为库或我现有的 .a 文件?
3) 我应该将 .a 文件放在我的项目中的什么位置。是在jni文件夹下吗?
4) 我的 java 类文件是否应该使用 keyword native 定义与在 c++ 文件中实现的方法相同的方法(例如:在 c++ 文件方法名称 getData() 中,java 类是否应该包含 public native getData( ) )
【问题讨论】:
标签: android android-ndk java-native-interface .a .so