如何捆绑本机库(.so+;.jar),以便在新的EclipseAndroid项目中重用? 我有一个C++库,我制作了一些JNI代码,把它导出到Android世界。我还创建了一个Android应用程序,它使用我的JNI接口

如何捆绑本机库(.so+;.jar),以便在新的EclipseAndroid项目中重用? 我有一个C++库,我制作了一些JNI代码,把它导出到Android世界。我还创建了一个Android应用程序,它使用我的JNI接口,eclipse,jar,android-ndk,shared-libraries,Eclipse,Jar,Android Ndk,Shared Libraries,为了使用该库,我将Eclipse应用程序项目中的所有*.java和*.h/*.cpp文件导入到正确的文件夹中,然后为NDK创建了*.mk文件。我用ndk build编译了这个库,并用Eclipse将它加载到目标设备中。该应用程序运行良好 现在我想将应用程序从库中分离出来。因此,我编译了JNE.JAR,其中包含JNI接口的java文件,然后我编译了LBNAME.C++用NDK构建。然后我将name.jar放入newproject/libs,将libname.so放入newproject/libs/

为了使用该库,我将Eclipse应用程序项目中的所有*.java和*.h/*.cpp文件导入到正确的文件夹中,然后为NDK创建了*.mk文件。我用ndk build编译了这个库,并用Eclipse将它加载到目标设备中。该应用程序运行良好

现在我想将应用程序从库中分离出来。因此,我编译了JNE.JAR,其中包含JNI接口的java文件,然后我编译了LBNAME.C++用NDK构建。然后我将name.jar放入newproject/libs,将libname.so放入newproject/libs/armeabi。考虑“NeWorkStudio”,我创建的应用程序没有库源代码(我不想发布源代码,只有.jar和.so).

结果是应用程序崩溃,内存转储到LogCat中。我在静态上下文中使用System.loadLibrary(“名称”)


有人能帮我吗?

我的程序还可以。我发现问题:我的应用程序正在加载LIB,它运行C++代码。顺便说一下,崩溃发生在socket()调用的早期。我必须将INTERNET权限设置到清单文件中。

我创建了一个application.application contains.so文件。现在我想创建一个jar文件,其中包含我的应用程序代码+.so文件。是否可以在android sdk上使用。我不使用ndk。请告诉我。我想你只能使用ndk来实现这一点。看:怎么办