我可以使用NDK构建主要组件是头文件(.h)的静态库吗?

时间:2013-12-28 05:51:40

标签: android-ndk android-library

我想将静态库的cpp代码转换为Android库。 为此,我试图使用NDK。 但我读了NDK文档,它说只有源代码可以输入用于构建“Android.mk”。 我的任务是“有没有办法用我的cpp库为Android系统构建静态库?” 我的cpp库的顶层模块是头文件,它可以在Windows系统上构建为“.lib”。

谢谢!

1 个答案:

答案 0 :(得分:1)

您的cpp库应该使用NDK工具链作为"libyourname.a"开始构建。您不需要Android.mk,即使在许多情况下,导出符合标准的Android.mk也是微不足道的,并且从长远来看使开发人员的生活更加幸福(参见,例如github })。

下一步应该是准备一个JNI包装器动态库(共享对象,.so),它可以从您的Java应用程序加载。那个"libyourname_jni.so"可能有自己独立的Android.mk文件。好吧,Java不是必须的:你可以使用NativeActivity,或者一些替代框架。

我建议您阅读以下内容以了解整个过程:http://thesoftwarerogue.blogspot.co.il/2010/05/porting-of-libcurl-to-android-os-using.html