diff --git a/modules/java/android_test/src/org/opencv/test/OpenCVTestRunner.java b/modules/java/android_test/src/org/opencv/test/OpenCVTestRunner.java
index 9425e2644..22f122928 100644
--- a/modules/java/android_test/src/org/opencv/test/OpenCVTestRunner.java
+++ b/modules/java/android_test/src/org/opencv/test/OpenCVTestRunner.java
@@ -82,7 +82,7 @@ public class OpenCVTestRunner extends InstrumentationTestRunner {
// Using OpenCV Manager for initialization;
Log("Internal OpenCV library not found. Using OpenCV Manager for initialization");
- OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_3, getContext(), mLoaderCallback);
+ OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_0_0, getContext(), mLoaderCallback);
synchronized (this) {
try {
diff --git a/modules/java/generator/src/java/android+OpenCVLoader.java b/modules/java/generator/src/java/android+OpenCVLoader.java
index 13cd42849..339ea2d9d 100644
--- a/modules/java/generator/src/java/android+OpenCVLoader.java
+++ b/modules/java/generator/src/java/android+OpenCVLoader.java
@@ -47,6 +47,22 @@ public class OpenCVLoader
*/
public static final String OPENCV_VERSION_2_4_9 = "2.4.9";
+ /**
+ * OpenCV Library version 2.4.10.
+ */
+ public static final String OPENCV_VERSION_2_4_10 = "2.4.10";
+
+ /**
+ * OpenCV Library version 2.4.11.
+ */
+ public static final String OPENCV_VERSION_2_4_11 = "2.4.11";
+
+ /**
+ * OpenCV Library version 3.0.0.
+ */
+ public static final String OPENCV_VERSION_3_0_0 = "3.0.0";
+
+
/**
* Loads and initializes OpenCV library from current application package. Roughly, it's an analog of system.loadLibrary("opencv_java").
* @return Returns true is initialization of OpenCV was successful.
diff --git a/platforms/android/README.android b/platforms/android/README.android
index dd870b28e..564fc3a0f 100644
--- a/platforms/android/README.android
+++ b/platforms/android/README.android
@@ -1 +1 @@
-See http://opencv.org/android
+See http://opencv.org/platforms/android.html
diff --git a/platforms/android/libinfo/CMakeLists.txt b/platforms/android/libinfo/CMakeLists.txt
index 55dd27859..eea43621d 100644
--- a/platforms/android/libinfo/CMakeLists.txt
+++ b/platforms/android/libinfo/CMakeLists.txt
@@ -23,6 +23,9 @@ if(NOT ANDROID_PACKAGE_PLATFORM)
endif()
endif()
+string(REPLACE "-fvisibility=hidden" "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
+string(REPLACE "-fvisibility-inlines-hidden" "" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
+
add_definitions(-DANDROID_PACKAGE_RELEASE=${ANDROID_PACKAGE_RELEASE} -DANDROID_PACKAGE_PLATFORM="${ANDROID_PACKAGE_PLATFORM}")
include_directories(jni/BinderComponent jni/include "${OpenCV_SOURCE_DIR}/modules/core/include")
diff --git a/platforms/android/service/engine/AndroidManifest.xml b/platforms/android/service/engine/AndroidManifest.xml
index 3ada75d0a..4f78c314a 100644
--- a/platforms/android/service/engine/AndroidManifest.xml
+++ b/platforms/android/service/engine/AndroidManifest.xml
@@ -1,8 +1,8 @@
+ android:versionCode="300@ANDROID_PLATFORM_VERSION_CODE@"
+ android:versionName="3.00" >
@@ -27,4 +27,4 @@
-
\ No newline at end of file
+
diff --git a/platforms/android/service/engine/CMakeLists.txt b/platforms/android/service/engine/CMakeLists.txt
index b1cac9383..b09e1fa05 100644
--- a/platforms/android/service/engine/CMakeLists.txt
+++ b/platforms/android/service/engine/CMakeLists.txt
@@ -12,14 +12,16 @@ if(ARMEABI_V7A)
else()
set(ANDROID_PLATFORM_VERSION_CODE "3")
endif()
+elseif(ARM64_V8A)
+ set(ANDROID_PLATFORM_VERSION_CODE "4")
elseif(ARMEABI_V6)
set(ANDROID_PLATFORM_VERSION_CODE "1")
elseif(ARMEABI)
set(ANDROID_PLATFORM_VERSION_CODE "1")
elseif(X86)
- set(ANDROID_PLATFORM_VERSION_CODE "4")
-elseif(MIPS)
set(ANDROID_PLATFORM_VERSION_CODE "5")
+elseif(MIPS)
+ set(ANDROID_PLATFORM_VERSION_CODE "6")
else()
message(WARNING "Can not automatically determine the value for ANDROID_PLATFORM_VERSION_CODE")
endif()
@@ -47,6 +49,8 @@ endif()
add_definitions(-DPLATFORM_ANDROID -D__SUPPORT_ARMEABI_V7A_FEATURES -D__SUPPORT_TEGRA3 -D__SUPPORT_MIPS)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-rtti -fno-exceptions")
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-allow-shlib-undefined")
+string(REPLACE "-fvisibility=hidden" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
+string(REPLACE "-fvisibility-inlines-hidden" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
include_directories("jni/BinderComponent" "jni/include")
include_directories(SYSTEM "${ANDROID_SOURCE_TREE}/frameworks/base/include" "${ANDROID_SOURCE_TREE}/system/core/include")
diff --git a/platforms/android/service/engine/jni/BinderComponent/HardwareDetector.cpp b/platforms/android/service/engine/jni/BinderComponent/HardwareDetector.cpp
index bb0a34cca..458584034 100644
--- a/platforms/android/service/engine/jni/BinderComponent/HardwareDetector.cpp
+++ b/platforms/android/service/engine/jni/BinderComponent/HardwareDetector.cpp
@@ -39,44 +39,63 @@ int GetCpuID()
#else
result = ARCH_UNKNOWN;
#endif
+#elif defined(__aarch64__)
+#ifdef __SUPPORT_AARCH64
+ result |= ARCH_AARCH64;
#else
+ result = ARCH_UNKNOWN;
+#endif
+#elif defined(__arm__)
LOGD("Using ARM HW detector");
it = cpu_info.find("Processor");
if (cpu_info.end() != it)
{
- size_t proc_name_pos = it->second.find(CPU_INFO_ARCH_X86_STR);
+ size_t proc_name_pos = it->second.find(CPU_INFO_ARCH_ARMV7_STR);
if (string::npos != proc_name_pos)
{
+ result |= ARCH_ARMv7;
}
else
{
- proc_name_pos = it->second.find(CPU_INFO_ARCH_ARMV7_STR);
+ proc_name_pos = it->second.find(CPU_INFO_ARCH_ARMV6_STR);
if (string::npos != proc_name_pos)
{
- result |= ARCH_ARMv7;
+ result |= ARCH_ARMv6;
}
else
{
- proc_name_pos = it->second.find(CPU_INFO_ARCH_ARMV6_STR);
+ proc_name_pos = it->second.find(CPU_INFO_ARCH_ARMV5_STR);
if (string::npos != proc_name_pos)
{
- result |= ARCH_ARMv6;
+ result |= ARCH_ARMv5;
}
else
{
- proc_name_pos = it->second.find(CPU_INFO_ARCH_ARMV5_STR);
- if (string::npos != proc_name_pos)
- {
- result |= ARCH_ARMv5;
- }
+ // Treat the arch of current binary. Google Play checks
+ // device hardware before installation. Let's assume that
+ // if the binary works, it's compatible with current hardware
+#if defined __ARM_ARCH_7A__
+ result |= ARCH_ARMv7;
+ result |= FEATURES_HAS_VFPv3d16;
+#else
+ result |= ARCH_ARMv5;
+#endif
}
}
}
}
else
{
- return ARCH_UNKNOWN;
+ // Treat the arch of current binary. Google Play checks
+ // device hardware before installation. Let's assume that
+ // if the binary works, it's compatible with current hardware
+#if defined __ARM_ARCH_7A__
+ result |= ARCH_ARMv7;
+ result |= FEATURES_HAS_VFPv3;
+#else
+ result |= ARCH_ARMv5;
+#endif
}
it = cpu_info.find("Features");
@@ -107,7 +126,9 @@ int GetCpuID()
}
}
}
- #endif
+#else
+ result = ARCH_UNKNOWN;
+#endif
return result;
}
diff --git a/platforms/android/service/engine/jni/BinderComponent/HardwareDetector.h b/platforms/android/service/engine/jni/BinderComponent/HardwareDetector.h
index 1e14ba701..0b8b9aabe 100644
--- a/platforms/android/service/engine/jni/BinderComponent/HardwareDetector.h
+++ b/platforms/android/service/engine/jni/BinderComponent/HardwareDetector.h
@@ -9,7 +9,7 @@
#define ARCH_ARMv5 67108864L
#define ARCH_ARMv6 134217728L
#define ARCH_ARMv7 268435456L
-#define ARCH_ARMv8 536870912L
+#define ARCH_AARCH64 536870912L
#define ARCH_MIPS 1073741824L
#define FEATURES_HAS_VFPv3d16 1L
diff --git a/platforms/android/service/engine/jni/BinderComponent/OpenCVEngine.cpp b/platforms/android/service/engine/jni/BinderComponent/OpenCVEngine.cpp
index 2b113b4e2..c83f80548 100644
--- a/platforms/android/service/engine/jni/BinderComponent/OpenCVEngine.cpp
+++ b/platforms/android/service/engine/jni/BinderComponent/OpenCVEngine.cpp
@@ -15,7 +15,7 @@ using namespace android;
const int OpenCVEngine::Platform = DetectKnownPlatforms();
const int OpenCVEngine::CpuID = GetCpuID();
-const int OpenCVEngine::KnownVersions[] = {2040000, 2040100, 2040200, 2040300, 2040301, 2040302, 2040400, 2040500, 2040600, 2040700, 2040701, 2040800, 2040900};
+const int OpenCVEngine::KnownVersions[] = {2040000, 2040100, 2040200, 2040300, 2040301, 2040302, 2040400, 2040500, 2040600, 2040700, 2040701, 2040800, 2040900, 2041000, 2041100, 3000000};
bool OpenCVEngine::ValidateVersion(int version)
{
diff --git a/platforms/android/service/engine/jni/NativeService/CommonPackageManager.cpp b/platforms/android/service/engine/jni/NativeService/CommonPackageManager.cpp
index 5c5022ff4..69a36793b 100644
--- a/platforms/android/service/engine/jni/NativeService/CommonPackageManager.cpp
+++ b/platforms/android/service/engine/jni/NativeService/CommonPackageManager.cpp
@@ -208,6 +208,11 @@ std::vector > CommonPackageManager::InitArmRating()
result.push_back(std::pair(PLATFORM_TEGRA4, ARCH_ARMv7 | FEATURES_HAS_VFPv3 | FEATURES_HAS_VFPv4 | FEATURES_HAS_NEON));
result.push_back(std::pair(PLATFORM_TEGRA5, ARCH_ARMv7 | FEATURES_HAS_VFPv3 | FEATURES_HAS_VFPv4 | FEATURES_HAS_NEON));
+ result.push_back(std::pair(PLATFORM_UNKNOWN, ARCH_AARCH64));
+ result.push_back(std::pair(PLATFORM_UNKNOWN, ARCH_AARCH64 | FEATURES_HAS_VFPv3));
+ result.push_back(std::pair(PLATFORM_UNKNOWN, ARCH_AARCH64 | FEATURES_HAS_VFPv3 | FEATURES_HAS_VFPv4));
+ result.push_back(std::pair(PLATFORM_UNKNOWN, ARCH_AARCH64 | FEATURES_HAS_VFPv3 | FEATURES_HAS_VFPv3 | FEATURES_HAS_NEON));
+
return result;
}
diff --git a/platforms/android/service/engine/jni/NativeService/PackageInfo.cpp b/platforms/android/service/engine/jni/NativeService/PackageInfo.cpp
index ca364b444..d831bf7a5 100644
--- a/platforms/android/service/engine/jni/NativeService/PackageInfo.cpp
+++ b/platforms/android/service/engine/jni/NativeService/PackageInfo.cpp
@@ -302,20 +302,13 @@ PackageInfo::PackageInfo(int version, int platform, int cpu_id, std::string inst
}
#endif
}
- else if (ARCH_ARMv8 & CpuID)
+ #ifdef __SUPPORT_AARCH64
+ else if (ARCH_AARCH64 & CpuID)
{
- LOGD("PackageInfo::PackageInfo: package arch ARMv8");
- #ifdef __SUPPORT_ARMEABI_V8
- FullName += string("_") + ARCH_ARMv8_NAME;
- #else
- FullName += string("_") + ARCH_ARMv7_NAME;
- #endif
- //string features = JoinARMFeatures(CpuID);
- //if (!features.empty())
- //{
- // FullName += string("_") + features;
- //}
+ LOGD("PackageInfo::PackageInfo: package arch AARCH64");
+ FullName += string("_") + ARCH_AARCH64_NAME;
}
+ #endif
#ifdef __SUPPORT_MIPS
else if (ARCH_MIPS & CpuID)
{
@@ -460,14 +453,22 @@ InstallPath(install_path)
{
CpuID = ARCH_ARMv7 | SplitARMFeatures(features);
}
+ #ifdef __SUPPORT_AARCH64
+ else if (ARCH_AARCH64_NAME == features[2])
+ {
+ CpuID = ARCH_AARCH64 | SplitARMFeatures(features);
+ }
+ #endif
else if (ARCH_X86_NAME == features[2])
{
CpuID = ARCH_X86 | SplitIntelFeatures(features);
}
+ #ifdef __SUPPORT_INTEL_x64
else if (ARCH_X64_NAME == features[2])
{
CpuID = ARCH_X64 | SplitIntelFeatures(features);
}
+ #endif
#ifdef __SUPPORT_MIPS
else if (ARCH_MIPS_NAME == features[2])
{
diff --git a/platforms/android/service/engine/jni/NativeService/PackageInfo.h b/platforms/android/service/engine/jni/NativeService/PackageInfo.h
index f94f0f382..7e31e16a1 100644
--- a/platforms/android/service/engine/jni/NativeService/PackageInfo.h
+++ b/platforms/android/service/engine/jni/NativeService/PackageInfo.h
@@ -10,7 +10,7 @@
#define ARCH_ARMv5_NAME "armv5"
#define ARCH_ARMv6_NAME "armv6"
#define ARCH_ARMv7_NAME "armv7a"
-#define ARCH_ARMv8_NAME "armv8"
+#define ARCH_AARCH64_NAME "aarch64"
#define FEATURES_HAS_VFPv3d16_NAME "vfpv3d16"
#define FEATURES_HAS_VFPv3_NAME "vfpv3"
diff --git a/platforms/android/service/engine/jni/Tests/HardwareDetectionTest.cpp b/platforms/android/service/engine/jni/Tests/HardwareDetectionTest.cpp
index 8e7dfab00..fd276e9f9 100644
--- a/platforms/android/service/engine/jni/Tests/HardwareDetectionTest.cpp
+++ b/platforms/android/service/engine/jni/Tests/HardwareDetectionTest.cpp
@@ -146,11 +146,19 @@ TEST(CpuID, CheckMips)
EXPECT_TRUE(cpu_id & ARCH_MIPS);
}
#endif
+#elif defined(__aarch64__)
+TEST(CpuID, CheckAarch64)
+{
+ int cpu_id = GetCpuID();
+ EXPECT_TRUE(cpu_id & ARCH_AARCH64);
+}
#else
+# if defined(__arm__) && defined(USE_TEGRA_HW_DETECTOR)
TEST(TegraDetector, Detect)
{
EXPECT_TRUE(DetectTegra() != 0);
}
+# endif
TEST(CpuID, CheckArmV7)
{
diff --git a/platforms/android/service/engine/jni/Tests/PackageInfoTest.cpp b/platforms/android/service/engine/jni/Tests/PackageInfoTest.cpp
index de6b22453..253607ca8 100644
--- a/platforms/android/service/engine/jni/Tests/PackageInfoTest.cpp
+++ b/platforms/android/service/engine/jni/Tests/PackageInfoTest.cpp
@@ -52,6 +52,13 @@ TEST(PackageInfo, FullNameArmv7VFPv3Neon)
#endif
}
+TEST(PackageInfo, FullNameAarch64)
+{
+ PackageInfo info(2041000, PLATFORM_UNKNOWN, ARCH_AARCH64);
+ string name = info.GetFullName();
+ EXPECT_STREQ("org.opencv.lib_v24_aarch64", name.c_str());
+}
+
TEST(PackageInfo, FullNameArmv5)
{
PackageInfo info(2030000, PLATFORM_UNKNOWN, ARCH_ARMv5);
diff --git a/platforms/android/service/engine/jni/Tests/PackageManagmentTest.cpp b/platforms/android/service/engine/jni/Tests/PackageManagmentTest.cpp
index 14295ecbc..33af96156 100644
--- a/platforms/android/service/engine/jni/Tests/PackageManagmentTest.cpp
+++ b/platforms/android/service/engine/jni/Tests/PackageManagmentTest.cpp
@@ -54,6 +54,16 @@ TEST(PackageManager, GetPackagePathForArmv7)
EXPECT_STREQ("/data/data/org.opencv.lib_v23_armv7a/lib", path.c_str());
}
+#ifdef __SUPPORT_AARCH64
+TEST(PackageManager, GetPackagePathForAarch64)
+{
+ PackageManagerStub pm;
+ EXPECT_TRUE(pm.InstallVersion(2041100, PLATFORM_UNKNOWN, ARCH_AARCH64));
+ string path = pm.GetPackagePathByVersion(2041100, PLATFORM_UNKNOWN, ARCH_AARCH64);
+ EXPECT_STREQ("/data/data/org.opencv.lib_v24_aarch64/lib", path.c_str());
+}
+#endif
+
TEST(PackageManager, GetPackagePathForArmv7Neon)
{
PackageManagerStub pm;
diff --git a/platforms/android/service/engine/src/org/opencv/engine/HardwareDetector.java b/platforms/android/service/engine/src/org/opencv/engine/HardwareDetector.java
index 1d52f0cf0..f115070aa 100644
--- a/platforms/android/service/engine/src/org/opencv/engine/HardwareDetector.java
+++ b/platforms/android/service/engine/src/org/opencv/engine/HardwareDetector.java
@@ -10,7 +10,7 @@ public class HardwareDetector
public static final int ARCH_ARMv5 = 0x04000000;
public static final int ARCH_ARMv6 = 0x08000000;
public static final int ARCH_ARMv7 = 0x10000000;
- public static final int ARCH_ARMv8 = 0x20000000;
+ public static final int ARCH_AARCH64 = 0x20000000;
public static final int ARCH_MIPS = 0x40000000;
// Platform specific features
diff --git a/platforms/android/service/engine/src/org/opencv/engine/manager/ManagerActivity.java b/platforms/android/service/engine/src/org/opencv/engine/manager/ManagerActivity.java
index 0cd2fd58e..b4e0be5a9 100644
--- a/platforms/android/service/engine/src/org/opencv/engine/manager/ManagerActivity.java
+++ b/platforms/android/service/engine/src/org/opencv/engine/manager/ManagerActivity.java
@@ -7,6 +7,7 @@ import java.util.StringTokenizer;
import org.opencv.engine.HardwareDetector;
import org.opencv.engine.MarketConnector;
import org.opencv.engine.OpenCVEngineInterface;
+import org.opencv.engine.OpenCVEngineService;
import org.opencv.engine.OpenCVLibraryInfo;
import org.opencv.engine.R;
import android.annotation.TargetApi;
@@ -140,11 +141,11 @@ public class ManagerActivity extends Activity
}
else if ((CpuId & HardwareDetector.ARCH_ARMv7) == HardwareDetector.ARCH_ARMv7)
{
- HardwarePlatformView.setText("ARM v7 " + JoinArmFeatures(CpuId));
+ HardwarePlatformView.setText("ARM v7a " + JoinArmFeatures(CpuId));
}
- else if ((CpuId & HardwareDetector.ARCH_ARMv8) == HardwareDetector.ARCH_ARMv8)
+ else if ((CpuId & HardwareDetector.ARCH_AARCH64) == HardwareDetector.ARCH_AARCH64)
{
- HardwarePlatformView.setText("ARM v8 " + JoinArmFeatures(CpuId));
+ HardwarePlatformView.setText("AARCH64 (ARM64 v8a) " + JoinArmFeatures(CpuId));
}
else if ((CpuId & HardwareDetector.ARCH_MIPS) == HardwareDetector.ARCH_MIPS)
{
@@ -220,7 +221,8 @@ public class ManagerActivity extends Activity
public void onReceive(Context context, Intent intent) {
Log.d("OpenCVManager/Receiver", "Broadcast message " + intent.getAction() + " receiver");
Log.d("OpenCVManager/Receiver", "Filling package list on broadcast message");
- if (!bindService(new Intent("org.opencv.engine.BIND"), new OpenCVEngineServiceConnection(), Context.BIND_AUTO_CREATE))
+ if (!bindService(new Intent("org.opencv.engine.BIND"),
+ new OpenCVEngineServiceConnection(), Context.BIND_AUTO_CREATE))
{
TextView EngineVersionView = (TextView)findViewById(R.id.EngineVersionValue);
EngineVersionView.setText("not avaliable");
@@ -251,7 +253,7 @@ public class ManagerActivity extends Activity
if (HardwareDetector.mIsReady) {
Log.d(TAG, "Filling package list on resume");
OpenCVEngineServiceConnection connection = new OpenCVEngineServiceConnection();
- if (!bindService(new Intent("org.opencv.engine.BIND"), connection, Context.BIND_AUTO_CREATE)) {
+ if (!bindService(new Intent(this, OpenCVEngineService.class), connection, Context.BIND_AUTO_CREATE)) {
Log.e(TAG, "Cannot bind to OpenCV Manager service!");
TextView EngineVersionView = (TextView)findViewById(R.id.EngineVersionValue);
if (EngineVersionView != null)
@@ -304,6 +306,9 @@ public class ManagerActivity extends Activity
path = EngineService.getLibPathByVersion("2.5");
Log.d(TAG, "2.5 -> " + path);
mActivePackageMap.put("25", path);
+ path = EngineService.getLibPathByVersion("3.0");
+ Log.d(TAG, "3.0 -> " + path);
+ mActivePackageMap.put("30", path);
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
diff --git a/samples/android/15-puzzle/src/org/opencv/samples/puzzle15/Puzzle15Activity.java b/samples/android/15-puzzle/src/org/opencv/samples/puzzle15/Puzzle15Activity.java
index b59da5975..71f59fa13 100644
--- a/samples/android/15-puzzle/src/org/opencv/samples/puzzle15/Puzzle15Activity.java
+++ b/samples/android/15-puzzle/src/org/opencv/samples/puzzle15/Puzzle15Activity.java
@@ -78,7 +78,7 @@ public class Puzzle15Activity extends Activity implements CvCameraViewListener,
super.onResume();
if (!OpenCVLoader.initDebug()) {
Log.d(TAG, "Internal OpenCV library not found. Using OpenCV Manager for initialization");
- OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_3, this, mLoaderCallback);
+ OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_0_0, this, mLoaderCallback);
} else {
Log.d(TAG, "OpenCV library found inside package. Using it!");
mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS);
diff --git a/samples/android/camera-calibration/src/org/opencv/samples/cameracalibration/CameraCalibrationActivity.java b/samples/android/camera-calibration/src/org/opencv/samples/cameracalibration/CameraCalibrationActivity.java
index 058497303..aa9050405 100644
--- a/samples/android/camera-calibration/src/org/opencv/samples/cameracalibration/CameraCalibrationActivity.java
+++ b/samples/android/camera-calibration/src/org/opencv/samples/cameracalibration/CameraCalibrationActivity.java
@@ -94,7 +94,7 @@ public class CameraCalibrationActivity extends Activity implements CvCameraViewL
super.onResume();
if (!OpenCVLoader.initDebug()) {
Log.d(TAG, "Internal OpenCV library not found. Using OpenCV Manager for initialization");
- OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_2, this, mLoaderCallback);
+ OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_0_0, this, mLoaderCallback);
} else {
Log.d(TAG, "OpenCV library found inside package. Using it!");
mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS);
diff --git a/samples/android/color-blob-detection/src/org/opencv/samples/colorblobdetect/ColorBlobDetectionActivity.java b/samples/android/color-blob-detection/src/org/opencv/samples/colorblobdetect/ColorBlobDetectionActivity.java
index 82f6a68ac..97d348c9d 100644
--- a/samples/android/color-blob-detection/src/org/opencv/samples/colorblobdetect/ColorBlobDetectionActivity.java
+++ b/samples/android/color-blob-detection/src/org/opencv/samples/colorblobdetect/ColorBlobDetectionActivity.java
@@ -90,7 +90,7 @@ public class ColorBlobDetectionActivity extends Activity implements OnTouchListe
super.onResume();
if (!OpenCVLoader.initDebug()) {
Log.d(TAG, "Internal OpenCV library not found. Using OpenCV Manager for initialization");
- OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_3, this, mLoaderCallback);
+ OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_0_0, this, mLoaderCallback);
} else {
Log.d(TAG, "OpenCV library found inside package. Using it!");
mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS);
diff --git a/samples/android/face-detection/src/org/opencv/samples/facedetect/FdActivity.java b/samples/android/face-detection/src/org/opencv/samples/facedetect/FdActivity.java
index 7f641f7ae..48a89b0f8 100644
--- a/samples/android/face-detection/src/org/opencv/samples/facedetect/FdActivity.java
+++ b/samples/android/face-detection/src/org/opencv/samples/facedetect/FdActivity.java
@@ -142,7 +142,7 @@ public class FdActivity extends Activity implements CvCameraViewListener2 {
super.onResume();
if (!OpenCVLoader.initDebug()) {
Log.d(TAG, "Internal OpenCV library not found. Using OpenCV Manager for initialization");
- OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_3, this, mLoaderCallback);
+ OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_0_0, this, mLoaderCallback);
} else {
Log.d(TAG, "OpenCV library found inside package. Using it!");
mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS);
diff --git a/samples/android/image-manipulations/src/org/opencv/samples/imagemanipulations/ImageManipulationsActivity.java b/samples/android/image-manipulations/src/org/opencv/samples/imagemanipulations/ImageManipulationsActivity.java
index dee224a7e..382ce7503 100644
--- a/samples/android/image-manipulations/src/org/opencv/samples/imagemanipulations/ImageManipulationsActivity.java
+++ b/samples/android/image-manipulations/src/org/opencv/samples/imagemanipulations/ImageManipulationsActivity.java
@@ -113,7 +113,7 @@ public class ImageManipulationsActivity extends Activity implements CvCameraView
super.onResume();
if (!OpenCVLoader.initDebug()) {
Log.d(TAG, "Internal OpenCV library not found. Using OpenCV Manager for initialization");
- OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_3, this, mLoaderCallback);
+ OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_0_0, this, mLoaderCallback);
} else {
Log.d(TAG, "OpenCV library found inside package. Using it!");
mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS);
diff --git a/samples/android/native-activity/src/org/opencv/samples/NativeActivity/CvNativeActivity.java b/samples/android/native-activity/src/org/opencv/samples/NativeActivity/CvNativeActivity.java
index 7d4de93b2..0ffb84c3a 100644
--- a/samples/android/native-activity/src/org/opencv/samples/NativeActivity/CvNativeActivity.java
+++ b/samples/android/native-activity/src/org/opencv/samples/NativeActivity/CvNativeActivity.java
@@ -41,7 +41,7 @@ public class CvNativeActivity extends Activity {
super.onResume();
if (!OpenCVLoader.initDebug()) {
Log.d(TAG, "Internal OpenCV library not found. Using OpenCV Manager for initialization");
- OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_3, this, mLoaderCallback);
+ OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_0_0, this, mLoaderCallback);
} else {
Log.d(TAG, "OpenCV library found inside package. Using it!");
mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS);
diff --git a/samples/android/tutorial-1-camerapreview/src/org/opencv/samples/tutorial1/Tutorial1Activity.java b/samples/android/tutorial-1-camerapreview/src/org/opencv/samples/tutorial1/Tutorial1Activity.java
index 746eb4077..f0f2fb28c 100644
--- a/samples/android/tutorial-1-camerapreview/src/org/opencv/samples/tutorial1/Tutorial1Activity.java
+++ b/samples/android/tutorial-1-camerapreview/src/org/opencv/samples/tutorial1/Tutorial1Activity.java
@@ -78,7 +78,7 @@ public class Tutorial1Activity extends Activity implements CvCameraViewListener2
super.onResume();
if (!OpenCVLoader.initDebug()) {
Log.d(TAG, "Internal OpenCV library not found. Using OpenCV Manager for initialization");
- OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_3, this, mLoaderCallback);
+ OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_0_0, this, mLoaderCallback);
} else {
Log.d(TAG, "OpenCV library found inside package. Using it!");
mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS);
diff --git a/samples/android/tutorial-2-mixedprocessing/src/org/opencv/samples/tutorial2/Tutorial2Activity.java b/samples/android/tutorial-2-mixedprocessing/src/org/opencv/samples/tutorial2/Tutorial2Activity.java
index 1dbcff2ca..d8bb28a7e 100644
--- a/samples/android/tutorial-2-mixedprocessing/src/org/opencv/samples/tutorial2/Tutorial2Activity.java
+++ b/samples/android/tutorial-2-mixedprocessing/src/org/opencv/samples/tutorial2/Tutorial2Activity.java
@@ -99,7 +99,7 @@ public class Tutorial2Activity extends Activity implements CvCameraViewListener2
super.onResume();
if (!OpenCVLoader.initDebug()) {
Log.d(TAG, "Internal OpenCV library not found. Using OpenCV Manager for initialization");
- OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_3, this, mLoaderCallback);
+ OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_0_0, this, mLoaderCallback);
} else {
Log.d(TAG, "OpenCV library found inside package. Using it!");
mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS);
diff --git a/samples/android/tutorial-3-cameracontrol/src/org/opencv/samples/tutorial3/Tutorial3Activity.java b/samples/android/tutorial-3-cameracontrol/src/org/opencv/samples/tutorial3/Tutorial3Activity.java
index 8e3e16259..1800bfe1d 100644
--- a/samples/android/tutorial-3-cameracontrol/src/org/opencv/samples/tutorial3/Tutorial3Activity.java
+++ b/samples/android/tutorial-3-cameracontrol/src/org/opencv/samples/tutorial3/Tutorial3Activity.java
@@ -90,7 +90,7 @@ public class Tutorial3Activity extends Activity implements CvCameraViewListener2
super.onResume();
if (!OpenCVLoader.initDebug()) {
Log.d(TAG, "Internal OpenCV library not found. Using OpenCV Manager for initialization");
- OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_2_4_3, this, mLoaderCallback);
+ OpenCVLoader.initAsync(OpenCVLoader.OPENCV_VERSION_3_0_0, this, mLoaderCallback);
} else {
Log.d(TAG, "OpenCV library found inside package. Using it!");
mLoaderCallback.onManagerConnected(LoaderCallbackInterface.SUCCESS);