[英]Cannot resolve corresponding jni function
我讀了很多帖子,但還不能解決。
這是我的錯誤行和項目結構:
我從另一個項目中獲取的一些庫和配置...而且我不知道哪里出錯了。
如有需要,我將為您提供文件的源代碼
感謝您的任何幫助。
從Android Studio 2升級到3之后,我也一直收到此錯誤。代碼可以編譯,但是IDE無法識別本機功能。 (這可能是由於我創建的預處理器宏簡化了JNI函數名。)
我通過在類聲明之前添加@SuppressWarnings("JniMissingFunction")
抑制Java中的此錯誤。
好的,因此缺少“ JNI函數”沒什么大不了的。 我知道它以紅色突出顯示,但是該函數正在鏈接,只是沒有以IDE可以確定的方式進行鏈接。
首先,這里是相關的源代碼: https : //github.com/koreader/crengine/blob/master/android/jni/cr3engine.cpp#L770
CrEngine在運行時鏈接功能。 您的IDE不能選擇它們的原因是因為CrEngine函數以Java_org_
而不是Java_com_
。 如果您依賴引擎自動鏈接,這將是一個問題,但是如前所述,它們是在運行時使用jniRegisterNativeMethods
顯式鏈接的。
進行clean
並將gradle.build文件中的構建工具更新為25.0.3(或更高版本)。 更新您的SDK和NDK。 然后重建。 我看到的某些錯誤可能是由較早的構建工具引起的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.