diff options
author | Uma Mehta <umamehta@codeaurora.org> | 2016-07-04 10:55:04 +0530 |
---|---|---|
committer | Steve Kondik <steve@cyngn.com> | 2016-08-21 18:46:32 -0700 |
commit | d114e8c75fe948144166fd6efb753bf9ae6f4e2a (patch) | |
tree | 2235a333c0ae5a291eb988d58c584db6dad4645f | |
parent | 4695e9e49e6b3b8239e31930643851f637902caf (diff) | |
download | android_packages_apps_Snap-d114e8c75fe948144166fd6efb753bf9ae6f4e2a.tar.gz android_packages_apps_Snap-d114e8c75fe948144166fd6efb753bf9ae6f4e2a.tar.bz2 android_packages_apps_Snap-d114e8c75fe948144166fd6efb753bf9ae6f4e2a.zip |
SnapdragonCamera: Use resume/start based on the SDK version
For camcorder to resume after pause use mediarecorder's resume()
API in N and later versions and for the rest of older versions
call start() API
Change-Id: I01e761215c31e03c87b98149f13cd5c3f2482d05
-rwxr-xr-x[-rw-r--r--] | src/com/android/camera/VideoModule.java | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/com/android/camera/VideoModule.java b/src/com/android/camera/VideoModule.java index bdfc78b79..71b45666b 100644..100755 --- a/src/com/android/camera/VideoModule.java +++ b/src/com/android/camera/VideoModule.java @@ -79,6 +79,7 @@ import java.util.Date; import java.util.Iterator; import java.util.List; import java.util.HashMap; +import java.lang.reflect.Method; public class VideoModule implements CameraModule, VideoController, @@ -106,6 +107,9 @@ public class VideoModule implements CameraModule, private static final long SHUTTER_BUTTON_TIMEOUT = 0L; // 0ms + public static final boolean HAS_RESUME_SUPPORTED = + Build.VERSION.SDK_INT > Build.VERSION_CODES.M; + /** * An unpublished intent flag requesting to start recording straight away * and return as soon as recording is stopped. @@ -2053,7 +2057,16 @@ public class VideoModule implements CameraModule, mMediaRecorderPausing = false; mRecordingStartTime = SystemClock.uptimeMillis(); updateRecordingTime(); - mMediaRecorder.start(); + if (!HAS_RESUME_SUPPORTED){ + mMediaRecorder.start(); + } else { + try { + Method resumeRec = Class.forName("android.media.MediaRecorder").getMethod("resume"); + resumeRec.invoke(mMediaRecorder); + } catch (Exception e) { + Log.v(TAG, "resume method not implemented"); + } + } } private boolean stopVideoRecording() { |