2013-07-22 10 views
5

私はアンドロイドの開発を開始し、このチュートリアルを使用したシンプルなカメラアプリを書いた: http://developer.android.com/guide/topics/media/camera.html#custom-cameraCamera.lock、unlock()はAndroid 4.0以降自動的に管理されますか?

私が読んで:「注:アンドロイド4.0以降(APIレベル14)、Camera.lock()とCamera.unlockを()コールは自動的に管理されます。

しかし、これはどういう意味ですか?私のカメラアプリはAndroid 16(4.1.2)と17(4.2.2)をサポートしていますが、ロックを破棄して呼び出しを解除すると、mediarecorder(-19)からエラーが発生します。どのようにハンドルアンドロイドをすることができますか?それとも「自動的に管理する」という意味ですか?

+0

私は同じ問題に直面し、最後にロック/ロック解除のコールを残して、私はそれがこのエラーなしで動作させることができなかった原因。しかし、これは4.2.2でのテスト(そしてエラー-19)にもかかわらず、API 15(4.0.3)であった私の最小SDKと関連することができます。 – Ewoks

答えて

1

As android documentation stateslock()は、MediaRecorder.start()で自動的に呼び出されます。 start()メソッドがカメラのlock()メソッド(デフォルトではロックされている)を呼び出すと、カメラロックセットが見つかるため、RuntimeExceptionが発生するため、unlock()コールを削除できないと思います。

APIレベル14以降、カメラは自動的に start()のアプリケーションでロックされます。 の記録後、アプリケーションはカメラを使用することができます(ex:zoom)。録音の開始または停止後にこれを呼び出す必要はありません。

関連する問題