C 是否可以使用SWIG将静态库包装为.a扩展名?

C 是否可以使用SWIG将静态库包装为.a扩展名?,c,android-ndk,swig,C,Android Ndk,Swig,我使用NDK编译了一个C项目,得到了许多.a文件,据我所知,它们只是静态库。我不知道.a和.so文件之间到底有什么区别,但我想问:我确切地知道,使用NDK中的工具链,我可以导入所有的.a文件并获取.so文件,但拥有.a文件。如何在.interface文件中包含.a文件以扫描整个库?SWIG不会从中生成接口文件图书馆。您可以提供一个包含所有相关头(.h)文件的包装器,或者手动创建.i文件,仅公开相关的C函数 请注意,Android应用程序无法与静态库一起使用,您必须构建一个动态库。因此才能使用JN

我使用NDK编译了一个C项目,得到了许多.a文件,据我所知,它们只是静态库。我不知道.a和.so文件之间到底有什么区别,但我想问:我确切地知道,使用NDK中的工具链,我可以导入所有的.a文件并获取.so文件,但拥有.a文件。如何在.interface文件中包含.a文件以扫描整个库?

SWIG不会从中生成接口文件图书馆。您可以提供一个包含所有相关头(
.h
)文件的包装器,或者手动创建
.i
文件,仅公开相关的
C
函数

请注意,Android应用程序无法与静态库一起使用,您必须构建一个动态库
。因此
才能使用JNI。您将从Java代码中调用
System.load()
,以从磁盘加载此