2020-11-12(JNI开发常见错误)
生活随笔
收集整理的這篇文章主要介紹了
2020-11-12(JNI开发常见错误)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
JNI開發常見錯誤
a.Native method not found:com.itheim.hello.Mainactivity.hello_InC:()Ljava/lang/String;
可能出現的原因 c函數名字寫錯了
解決方法 通過javah生成頭文件
如果jdk1.7以上,到項目的src目錄下運行javah,javah要生成c函數名字的java類的全路徑
jdk1.6以下,到項目的bin/class目錄下運行javah
可能的原因 2.
忘記寫System.loadLibrary,可以通過靜態代碼來加載.so文件
System.loadLibrary(“hello”);
b.找lib的時候(.so文件)返回null
Couldn’t load libhello from loader findLibrary returned null
可能的出現原因1…so文件名字寫錯 lib前綴去掉 .so后綴去掉 剩下的就是要加載的文件名字
2.當前的.so文件不被cpu平臺支持,需要通過在jni目錄下添加application.mk來指定編譯之后.so文件支持的cpu平臺
APP_ABI := armeabi x86
總結
以上是生活随笔為你收集整理的2020-11-12(JNI开发常见错误)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2020-11-11(C语言下JNI开发
- 下一篇: 2020-11-12(内容提供者,内容解