0

我有一个关于 android 应用程序编程的问题。

Q1。我可以用 *.so 文件制作游戏吗?让android部分加载so文件?

Q2。当我在android应用程序中加载so文件时系统会发生什么?

System.loadLibrary("mylib");

windows中是否有像DLLMain这样的初始化函数?或者只是加载了库并且在 android 部分调用它之前什么都没有发生?

先感谢您

4

1 回答 1

0

1) 是的,使用适当的工具链。请参阅 NDK 文档和示例。

2) 运行时链接器将库映射到内存中,并采取措施使文件中的函数对请求加载文件的进程可用。

有几种可能的自动运行初始化程序,在一般情况下将由 Android 运行时链接器调用(不确定其源代码以外的引用),以及如果您将由 DVM 调用的附加初始化程序正在专门加载一个 JNI 库:

jint JNI_OnLoad(JavaVM* vm, void* reserved)

有关更多信息,请参阅 NDK 的此页面:

http://developer.android.com/training/articles/perf-jni.html

于 2013-05-23T20:17:13.583 回答