Eclipse 編譯 jni 工程相關(guān)問(wèn)題

1、Build 提示 JNIEnv could not be resolved,可能是由于 jni.h 頭文件沒(méi)有被找到,也就是說(shuō)工程的 include 路徑設(shè)置不全,因此要加上 include 路徑。

在 Project Properties -> C/C++ General -> Path and Symbols 中的 include 標(biāo)簽,添加對(duì)應(yīng) API 版本的路徑,例如:

/home/android-ndk-r13b/platforms/android-23/arch-arm64/usr/include

最好選一下 all languages,不用每種語(yǔ)言都添加一次。

2、Build 提示 ’NewStringUTF‘ could not be resolved

參考:http://blog.csdn.net/brokge/article/details/39929525

3、Build 提示 ’android‘ could not be resolved

沒(méi)有導(dǎo)入 android 的 API 包,在 Project Properties -> Android 中選中 Build target

4、Build 提示 R cannot be resolved to a variable

可能是你工程設(shè)置的 Target sdk version 和你自己的 sdk version 不匹配,檢查 AndroidManifest.xml 中的配置,一般就可以解決問(wèn)題。

5、Build 提示 NULL、UINT32等一些類型找不到,這時(shí)候就要看下是不是包含了頭文件和lib 庫(kù)的路徑。

/home/android-ndk-r13b/platforms/android-23/arch-arm64/usr/lib

6、出現(xiàn) the file dx.jar was not loaded from the SDK folder! 的問(wèn)題

這個(gè)問(wèn)題搞了一會(huì),應(yīng)該是 Tools 的版本問(wèn)題,最后這樣解決的:

關(guān)閉 eclipse,然后將SDK安裝目錄下 build_tools/26.0.0 文件夾備份后移走,接著用 sdk 安裝目錄下的 sdk manager 安裝 25.0.3 版本的 build_tools,再重新打開(kāi) eclipse。

7、工程編譯好之后,run 的時(shí)候出現(xiàn) Dx unsupported class file version 52.0

據(jù)說(shuō)是 JDK 版本的問(wèn)題,換成 1.6 版本,在 Windows -> Preferences -> Java -> complier 和 Installed JRE 中分別選中 1.6 版本。

重新編譯之后所有問(wèn)題解決,fastcv samples 可以正常在 SAMSUNG S7 上面跑起來(lái)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容