没有C ++源文件的JNI

时间:2016-06-27 08:35:05

标签: android android-studio java-native-interface

我正在与JNI合作开发Android APP项目。我有一些项目的来源,但我只有.so文件和源的.java文件。如何在没有C ++源文件的情况下使用JNI函数?

enter image description here

1 个答案:

答案 0 :(得分:2)

如果您拥有与 .so 接口的Java类,则不需要C ++源来使用它。如果需要,您甚至可以将本机方法从受保护的更改为 public ,或者添加可以更轻松地使用本机方法的Java包装器方法。

说到Android,请确保您的 .so 文件与平台匹配(例如,您无法在ARM设备上使用x86库)。您的 .so 必须使用兼容的工具链进行编译(例如,您无法使用Linux编译器)。如果您的 .so 是针对特定平台构建的,则可能无法在旧设备上加载:NDK平台向前兼容,而不是向后兼容。