我创建了另一个问题,因为所有其他问题的答案都是相似但不相关的解决方案。我还确保这不是符号剥离问题。
我收到了可怕的错误:
D/AndroidRuntime(16487): Shutting down VM
W/dalvikvm(16487): threadid=1: thread exiting with uncaught exception (group=0x41b1b700)
E/AndroidRuntime(16487): FATAL EXCEPTION: main
E/AndroidRuntime(16487): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test.test/android.app.NativeActivity}: java.lang.IllegalArgumentException: Unable to load native library: /data/app-lib/com.test.test-1/libtest.so
E/AndroidRuntime(16487): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2211)
E/AndroidRuntime(16487): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
...
一切编译和链接都很好。
我也有 app_dummy() 并且当我使用 objdump 运行时它会正确生成它:
001186f4 g DF .text 000001a4 ANativeActivity_onCreate
如果重要的话,使用带有工具链 4.7.2 的 vs-android,针对 armv7-a 的 2.3.3 (android-10)。我有适当包含的库,并最终完全链接。
我仍然无法证明的一个理论是,我还需要将一些 .so 文件包含在 apk 中。我假设外部库(so)将与我自己的合并。如果不是这种情况,这可能会解释手头的问题。
我没有直接使用任何 makefile - vs-android 正在处理其中的大部分。我只能访问一些 .xml 和 .property 文件。