如何在Android上创建本机C++库?

Unk*_*osu 8 c++ java java-native-interface android

我需要在C++中编写一个动态链接库,由Java在Android上使用.我得到它应该是.so库,但我不知道该怎么做.我试过Cygwin,但它崩溃了:

$ gcc 1.cpp

/usr/lib/gcc/i686-pc-cygwin/4.3.4/../../../../i686-pc-cygwin/bin/ld:找不到-luser32 collect2:ld返回1退出状态

1.cpp:
int main(int, char**)
{
   return 0;
}
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮助我吗?

PS我不擅长*nix,所以在Windows下应该做得更好

UPD:我已经安装了Android NDK和Cygwin,并将它们添加到PATH环境变量中

UPD2:感谢您的帮助.问题在于Cygwin本身.重新安装它和NDK解决了这个问题.

Goz*_*Goz 0

查看 NDK 附带的示例。您需要使用 JNI 绑定来允许它与 Java 进行通信。在这些绑定下,您可以做任何您喜欢的事情,但任何需要从 Java 访问的内容都需要通过 JNI 绑定。任何不需要可访问的内容都可以像平常一样编写。

是的,它在 Windows 下完全可行。