Eclipse中通过JNI调用opencv的DetectionBasedTracker时会报"Type 'DetectionBasedTracker' could not be resolved"的错误, 搜索opencv的sdk时, 可以找到DetectionBasedTracker.hpp头文件,include此头文件也不能解决, 打开头文件, 可以看到以下代码:

#if defined(__linux__) || defined(LINUX) || defined(__APPLE__) || defined(__ANDROID__) || \
  (defined(__cplusplus) &&  __cplusplus > 201103L) || (defined(_MSC_VER) && _MSC_VER >= 1700)

由以上尝试在Properties-->C/C++ General-->Paths and Symbols-->Symbols-->GNU C++-->Add添加__ANDROID__变量,值为1,问题解决.