From 5bea651e81abd1c676fe8b704bda7f9cc6ce88ba Mon Sep 17 00:00:00 2001 From: Andrey Pavlenko Date: Fri, 24 Feb 2012 08:43:11 +0000 Subject: [PATCH] Java samples updated to be compatible with both old (2.2+) and new (3.0+) Android versions --- modules/java/android_test/.classpath | 1 - modules/java/android_test/.project | 73 ++++++++++------------ .../tutorial-0-androidcamera/AndroidManifest.xml | 11 ++-- .../tutorial-0-androidcamera/project.properties | 2 +- .../opencv/samples/tutorial0/SampleViewBase.java | 16 +++-- .../tutorial-1-addopencv/project.properties | 2 +- .../opencv/samples/tutorial1/SampleViewBase.java | 16 +++-- .../android/tutorial-3-native/project.properties | 2 +- .../opencv/samples/tutorial3/SampleViewBase.java | 16 +++-- .../android/tutorial-4-mixed/project.properties | 2 +- .../opencv/samples/tutorial4/SampleViewBase.java | 16 +++-- 11 files changed, 87 insertions(+), 70 deletions(-) diff --git a/modules/java/android_test/.classpath b/modules/java/android_test/.classpath index 90f44c9..b1dcdef 100644 --- a/modules/java/android_test/.classpath +++ b/modules/java/android_test/.classpath @@ -4,7 +4,6 @@ - diff --git a/modules/java/android_test/.project b/modules/java/android_test/.project index e47735c..67148f8 100644 --- a/modules/java/android_test/.project +++ b/modules/java/android_test/.project @@ -1,40 +1,33 @@ - - - OpenCV_JavaAPI_Tests - - - - - - com.android.ide.eclipse.adt.ResourceManagerBuilder - - - - - com.android.ide.eclipse.adt.PreCompilerBuilder - - - - - org.eclipse.jdt.core.javabuilder - - - - - com.android.ide.eclipse.adt.ApkBuilder - - - - - - com.android.ide.eclipse.adt.AndroidNature - org.eclipse.jdt.core.javanature - - - - OpenCV_src - 2 - _android_OpenCV_8d28b05d/src - - - + + + OpenCV_JavaAPI_Tests + + + + + + com.android.ide.eclipse.adt.ResourceManagerBuilder + + + + + com.android.ide.eclipse.adt.PreCompilerBuilder + + + + + org.eclipse.jdt.core.javabuilder + + + + + com.android.ide.eclipse.adt.ApkBuilder + + + + + + com.android.ide.eclipse.adt.AndroidNature + org.eclipse.jdt.core.javanature + + diff --git a/samples/android/tutorial-0-androidcamera/AndroidManifest.xml b/samples/android/tutorial-0-androidcamera/AndroidManifest.xml index ddfcd5a..51aa236 100644 --- a/samples/android/tutorial-0-androidcamera/AndroidManifest.xml +++ b/samples/android/tutorial-0-androidcamera/AndroidManifest.xml @@ -10,6 +10,12 @@ android:largeScreens="true" android:anyDensity="true" /> + + + + + + - - - - - diff --git a/samples/android/tutorial-0-androidcamera/project.properties b/samples/android/tutorial-0-androidcamera/project.properties index 32299c2..65d68fd 100644 --- a/samples/android/tutorial-0-androidcamera/project.properties +++ b/samples/android/tutorial-0-androidcamera/project.properties @@ -1,2 +1,2 @@ # Project target. -target=android-8 +target=android-11 diff --git a/samples/android/tutorial-0-androidcamera/src/org/opencv/samples/tutorial0/SampleViewBase.java b/samples/android/tutorial-0-androidcamera/src/org/opencv/samples/tutorial0/SampleViewBase.java index 05800ba..aab549a 100644 --- a/samples/android/tutorial-0-androidcamera/src/org/opencv/samples/tutorial0/SampleViewBase.java +++ b/samples/android/tutorial-0-androidcamera/src/org/opencv/samples/tutorial0/SampleViewBase.java @@ -6,8 +6,10 @@ import java.util.List; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; +import android.graphics.SurfaceTexture; import android.hardware.Camera; import android.hardware.Camera.PreviewCallback; +import android.os.Build; import android.util.Log; import android.view.SurfaceHolder; import android.view.SurfaceView; @@ -59,11 +61,15 @@ public abstract class SampleViewBase extends SurfaceView implements SurfaceHolde params.setPreviewSize(getFrameWidth(), getFrameHeight()); mCamera.setParameters(params); - try { - mCamera.setPreviewDisplay(null); - } catch (IOException e) { - Log.e(TAG, "mCamera.setPreviewDisplay fails: " + e); - } + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { + mCamera.setPreviewTexture( new SurfaceTexture(10) ); + } else { + try { + mCamera.setPreviewDisplay(null); + } catch (IOException e) { + Log.e(TAG, "mCamera.setPreviewDisplay fails: " + e); + } + } mCamera.startPreview(); } } diff --git a/samples/android/tutorial-1-addopencv/project.properties b/samples/android/tutorial-1-addopencv/project.properties index fb3ea1f..25192ad 100644 --- a/samples/android/tutorial-1-addopencv/project.properties +++ b/samples/android/tutorial-1-addopencv/project.properties @@ -1,3 +1,3 @@ android.library.reference.1=../../../android/build # Project target. -target=android-8 +target=android-11 diff --git a/samples/android/tutorial-1-addopencv/src/org/opencv/samples/tutorial1/SampleViewBase.java b/samples/android/tutorial-1-addopencv/src/org/opencv/samples/tutorial1/SampleViewBase.java index 45f39d0..8e53383 100644 --- a/samples/android/tutorial-1-addopencv/src/org/opencv/samples/tutorial1/SampleViewBase.java +++ b/samples/android/tutorial-1-addopencv/src/org/opencv/samples/tutorial1/SampleViewBase.java @@ -6,8 +6,10 @@ import java.util.List; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; +import android.graphics.SurfaceTexture; import android.hardware.Camera; import android.hardware.Camera.PreviewCallback; +import android.os.Build; import android.util.Log; import android.view.SurfaceHolder; import android.view.SurfaceView; @@ -59,11 +61,15 @@ public abstract class SampleViewBase extends SurfaceView implements SurfaceHolde params.setPreviewSize(getFrameWidth(), getFrameHeight()); mCamera.setParameters(params); - try { - mCamera.setPreviewDisplay(null); - } catch (IOException e) { - Log.e(TAG, "mCamera.setPreviewDisplay fails: " + e); - } + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { + mCamera.setPreviewTexture( new SurfaceTexture(10) ); + } else { + try { + mCamera.setPreviewDisplay(null); + } catch (IOException e) { + Log.e(TAG, "mCamera.setPreviewDisplay fails: " + e); + } + } mCamera.startPreview(); } } diff --git a/samples/android/tutorial-3-native/project.properties b/samples/android/tutorial-3-native/project.properties index 32299c2..65d68fd 100644 --- a/samples/android/tutorial-3-native/project.properties +++ b/samples/android/tutorial-3-native/project.properties @@ -1,2 +1,2 @@ # Project target. -target=android-8 +target=android-11 diff --git a/samples/android/tutorial-3-native/src/org/opencv/samples/tutorial3/SampleViewBase.java b/samples/android/tutorial-3-native/src/org/opencv/samples/tutorial3/SampleViewBase.java index 83af4ca..81e192a 100644 --- a/samples/android/tutorial-3-native/src/org/opencv/samples/tutorial3/SampleViewBase.java +++ b/samples/android/tutorial-3-native/src/org/opencv/samples/tutorial3/SampleViewBase.java @@ -6,8 +6,10 @@ import java.util.List; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; +import android.graphics.SurfaceTexture; import android.hardware.Camera; import android.hardware.Camera.PreviewCallback; +import android.os.Build; import android.util.Log; import android.view.SurfaceHolder; import android.view.SurfaceView; @@ -59,11 +61,15 @@ public abstract class SampleViewBase extends SurfaceView implements SurfaceHolde params.setPreviewSize(getFrameWidth(), getFrameHeight()); mCamera.setParameters(params); - try { - mCamera.setPreviewDisplay(null); - } catch (IOException e) { - Log.e(TAG, "mCamera.setPreviewDisplay fails: " + e); - } + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { + mCamera.setPreviewTexture( new SurfaceTexture(10) ); + } else { + try { + mCamera.setPreviewDisplay(null); + } catch (IOException e) { + Log.e(TAG, "mCamera.setPreviewDisplay fails: " + e); + } + } mCamera.startPreview(); } } diff --git a/samples/android/tutorial-4-mixed/project.properties b/samples/android/tutorial-4-mixed/project.properties index fb3ea1f..25192ad 100644 --- a/samples/android/tutorial-4-mixed/project.properties +++ b/samples/android/tutorial-4-mixed/project.properties @@ -1,3 +1,3 @@ android.library.reference.1=../../../android/build # Project target. -target=android-8 +target=android-11 diff --git a/samples/android/tutorial-4-mixed/src/org/opencv/samples/tutorial4/SampleViewBase.java b/samples/android/tutorial-4-mixed/src/org/opencv/samples/tutorial4/SampleViewBase.java index a0d474c..634ef25 100644 --- a/samples/android/tutorial-4-mixed/src/org/opencv/samples/tutorial4/SampleViewBase.java +++ b/samples/android/tutorial-4-mixed/src/org/opencv/samples/tutorial4/SampleViewBase.java @@ -6,8 +6,10 @@ import java.util.List; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; +import android.graphics.SurfaceTexture; import android.hardware.Camera; import android.hardware.Camera.PreviewCallback; +import android.os.Build; import android.util.Log; import android.view.SurfaceHolder; import android.view.SurfaceView; @@ -59,11 +61,15 @@ public abstract class SampleViewBase extends SurfaceView implements SurfaceHolde params.setPreviewSize(getFrameWidth(), getFrameHeight()); mCamera.setParameters(params); - try { - mCamera.setPreviewDisplay(null); - } catch (IOException e) { - Log.e(TAG, "mCamera.setPreviewDisplay fails: " + e); - } + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { + mCamera.setPreviewTexture( new SurfaceTexture(10) ); + } else { + try { + mCamera.setPreviewDisplay(null); + } catch (IOException e) { + Log.e(TAG, "mCamera.setPreviewDisplay fails: " + e); + } + } mCamera.startPreview(); } } -- 2.7.4