当我的应用程序长时间(即数小时)暂停时,我得到零星的,难以重现的UnsatisfiedLinkErrors。这些错误发生在正常工作的JNI调用上。间歇性Android NDK UnsatisfiedLinkError
Android是否有时在没有完全关闭应用程序的情况下卸载库?我在一个活动中加载我的本地库,但也在另一个活动中使用它。 Android可以销毁加载库并卸载它的活动,然后在使用它的其他活动恢复时无法重新加载库?
当我的应用程序长时间(即数小时)暂停时,我得到零星的,难以重现的UnsatisfiedLinkErrors。这些错误发生在正常工作的JNI调用上。间歇性Android NDK UnsatisfiedLinkError
Android是否有时在没有完全关闭应用程序的情况下卸载库?我在一个活动中加载我的本地库,但也在另一个活动中使用它。 Android可以销毁加载库并卸载它的活动,然后在使用它的其他活动恢复时无法重新加载库?
你可以通过检查进程ID来确定活动的“简历”是否发生在最初加载库的同一个进程中?我的怀疑是,简历是在一个从未加载的新过程中发生的。 –
假设情况如此,无论哪个活动在新进程中首先启动,确保只加载一次库的正确方法是什么? – pbsurf
如何简单地将它加载到需要它的每个活动中? http://java.sun.com/docs/books/jni/html/design.html建议“如果之前对System.loadLibrary的调用已经加载了相同的本地库,System.loadLibrary将自动完成。” –