2016-04-08 63 views
0

我想將Android NDK與Halcon集成。將Halcon與Android集成

我嘗試使用libs(頭文件)來喚起Halcon方法。

例如:

#include <jni.h> 
#include "com_example_joseubuntu_integrationhalcon_MainActivity.h" 
# include "HALCONCpp/HalconCpp.h" 
# include "HALCONCpp/HDevThread.h" 

using namespace HalconCpp; 

JNIEXPORT void JNICALL Java_com_example_joseubuntu_integrationhalcon_MainActivity_testFunction(JNIEnv * env, jobject obj) 
{ 

    HTuple hv_BarCodeHandle; 

    HTuple hv_DecodedDataStrings; 

    HObject ho_Image,ho_SymbolRegions; 

    CreateBarCodeModel(HTuple(), HTuple(), &hv_BarCodeHandle); 

    SetBarCodeParam(hv_BarCodeHandle, "stop_after_result_num", 1); 

    ReadImage(&ho_Image, "/res/drawable/codebar"); 

    FindBarCode(ho_Image, &ho_SymbolRegions, hv_BarCodeHandle, "EAN-13", &hv_DecodedDataStrings); 

    WriteImage(ho_SymbolRegions, "png", "0xffff00", "Teste.png"); 

} 

是一個簡單的例子來讀取條碼,我不知道這工作,因爲我有這樣的錯誤:

Error:error: undefined reference to 'HalconCpp::HTuple::~HTuple()' 
Error:error: undefined reference to 'HalconCpp::HTuple::HTuple(char const*)' 
Error:error: undefined reference to 'HalconCpp::HTuple::HTuple()' 
Error:error: undefined reference to 'HalconCpp::HTuple::~HTuple()' 
Error:error: undefined reference to 'HalconCpp::HObjectBase::HObjectBase()' 
Error:error: undefined reference to 'HalconCpp::CreateBarCodeModel(HalconCpp::HTuple const&, HalconCpp::HTuple const&, HalconCpp::HTuple*)' 
Error:error: undefined reference to 'HalconCpp::HTuple::HTuple()' 
Error:error: undefined reference to 'HalconCpp::HTuple::~HTuple()' 
Error:error: undefined reference to 'HalconCpp::SetBarCodeParam(HalconCpp::HTuple const&, HalconCpp::HTuple const&, HalconCpp::HTuple const&)' 
Error:error: undefined reference to 'HalconCpp::HObjectBase::HObjectBase()' 
Error:error: undefined reference to 'HalconCpp::HTuple::HTuple(int)' 
Error:error: undefined reference to 'HalconCpp::HTuple::HTuple()' 
Error:error: undefined reference to 'HalconCpp::HTuple::HTuple()' 
Error:error: undefined reference to 'HalconCpp::HTuple::~HTuple()' 
Error:error: undefined reference to 'HalconCpp::HTuple::HTuple(char const*)' 
Error:error: undefined reference to 'HalconCpp::ReadImage(HalconCpp::HObject*, HalconCpp::HTuple const&)' 
Error:error: undefined reference to 'HalconCpp::HTuple::HTuple(char const*)' 
Error:error: undefined reference to 'HalconCpp::FindBarCode(HalconCpp::HObject const&, HalconCpp::HObject*, HalconCpp::HTuple const&, HalconCpp::HTuple const&, HalconCpp::HTuple*)' 
Error:error: undefined reference to 'HalconCpp::HTuple::HTuple(char const*)' 
Error:error: undefined reference to 'HalconCpp::WriteImage(HalconCpp::HObject const&, HalconCpp::HTuple const&, HalconCpp::HTuple const&, HalconCpp::HTuple const&)' 
Error:error: undefined reference to 'HalconCpp::HObjectBase::~HObjectBase()' 
Error:error: undefined reference to 'HalconCpp::HObjectBase::~HObjectBase()' 

謝謝!

回答

0

你有android的halcon庫嗎?

如果您使用的庫不適用於android,則無法工作。

如果您有Android的圖書​​館,你應該導入所以圖書館在Android.mk這樣的:

include $(CLEAR_VARS) 

LOCAL_MODULE := libhalcon 

LOCAL_SRC_FILES := lib/$(TARGET_ARCH_ABI)/libhalcon.so 

include $(PREBUILT_SHARED_LIBRARY) 

include $(CLEAR_VARS) 

LOCAL_MODULE := libhalconcpp 

LOCAL_SRC_FILES := lib/$(TARGET_ARCH_ABI)/libhalconcpp.so 

include $(PREBUILT_SHARED_LIBRARY)