Android studio中在用opencv時不使用opencv manager
週末一時興起打算用opencv開發一個在安卓平板上的跑的影象處理程式,前期寫程式碼都很順利,編譯成功後安裝,一執行就彈出讓安裝opencv manager,安裝後執行,竟然提示OpenCV was not initialised correctly. Application will be shut down,網上查了半天也沒找到解決方案,然後嘗試在模擬器上執行(安卓版本2.2),竟然沒有問題呀。我的平板電腦的安卓版本是7.0,用的opencv版本是2.4.9,懷疑是下的opencv manager版本與安卓版本不相容,就從opencv自帶的開發工具包中找到了對應於2.4.9版本的opencv manager,在平板上安裝後直接崩潰。這條路暫時走不通只好換一個思路,是不是可以不呼叫opencv manager,經過嘗試是可以的,方法如下:
1.把OpenCV sdk for Android檔案下F:\OpenCV-android-sdk\sdk\native下的libs資料夾拷貝到你的安卓專案下,即自己的專案\src\main下面,並且將libs改名為 jniLibs;
2、修改onResume方法,將其改為:標黃部分為新新增程式碼
@Override
protected void onResume() {
super.onResume();
if (!OpenCVLoader.initDebug()) {
Log.d(TAG, "Internal OpenCVlibrary not found. Using OpenCV Manager for initialization");
OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_9, this,mOpenCVCallBack);
} else {
Log.d(TAG, "OpenCV libraryfound inside package. Using it!");
mOpenCVCallBack.onManagerConnected(LoaderCallbackInterface.SUCCESS);
}
}
}
3、重新編譯安裝執行就可以了。