我已经关注 http://kn-gloryo.github.io/Build_NDK_AndroidStudio_detail/ ,效果很好!但是,我想在新的Android应用程序中使用生成的.so库,我根本不知道如何做到这一点...我已经苦苦挣扎了几天,如果可以分享任何分步教程这会有所帮助!
这是我用来生成.so文件的Android项目 MyApp :
MainActivity:
Java类:MyNDK
头文件:com_demo_ble_myapp_MyNDK.h
Cpp文件:MyLibrary
这是我的新Android项目 useSOLib 的结构,我只是将所有文件从 MyApp \ app \ src \ main \ libs 复制到 useSoLib \应用\ SRC \主\ jniLibs
这是useSoLib中的MainActivity:
我可以构建 - >使项目成功,但当我在设备上运行它时,应用程序显示“不幸的是,useSoLib已停止”。压碎了。我知道我在这里错过了一些步骤,但我是Android Studio的新手,所以我不知道我应该从哪里开始...提前感谢您的任何建议! :)
答案 0 :(得分:1)
您应该导入 MyNDK 并使用其实例。 JNI库与Java类相关。更改代码:
public class MainActivity extends AppCompatActivity{
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.i("MyTag", new MyNDK().getMyString());
}
}
您可以将 MyNDK 类导出为jar包,也可以创建 aar 捆绑包。然后使用JNI库将Java类导入到新项目中。
帖子How to Build *.so Library Files into AAR Bundle in Android Studio可能会对您有所帮助。