2013-02-18 11 views
6

MediaRecorderのstop()をサムスンギャラクシーカメラで無期限にハングアップします。この呼び出しを別のスレッドに配置しても問題は解決しません。サムスンギャラクシーカメラでMediaRecorder.stop()がハングアップする

Logcatではエラーメッセージは表示されません。しかし、この同じアプリを実行しても、Samsung Galaxy Nexusに問題はありません。

これはstopに私の呼び出しを囲むコードです:私が見た

View.OnClickListener captureListener = new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     if (isRecording) { 
      // stop recording and release camera 
      mMediaRecorder.stop(); 
      releaseMediaRecorder(); // release the MediaRecorder object 
      mCamera.lock();   // take camera access back from MediaRecorder 
      // inform the user that recording has stopped 
      captureButton.setText("Capture"); 
      isRecording = false; 
     } else { 
      // initialize video camera 
      if (prepareVideoRecorder()) { 
       // Camera is available and unlocked, MediaRecorder is prepared, 
       // now you can start recording 
       mMediaRecorder.start(); 
       // inform the user that recording has started 
       captureButton.setText("Stop"); 
       isRecording = true; 
      } else { 
       // prepare didn't work, release the camera 
       releaseMediaRecorder(); 
       // inform user 
      } 
     } 
    } 
}; 

答えて

0

ことの一つは、添付何プレビューが存在しない場合、一部のデバイスのためにMediaRecorder.stopは、()(つまり、あなたがCamera.stopPreviewと呼ばれる(ハングということです)beforeまたはstartPreview()を呼び出したことがないかもしれません)。

関連する問題