0

MediaRecorder では、再生時間とファイル サイズの両方を設定できますが、コールバック イベントを取得して処理する方法はまだわかりません。ここのドキュメントに厳密に従うことで、記録を開始して実行しています。

http://developer.android.com/guide/topics/media/camera.html

私はMediaRecorder.OnInfoListener、これらの 2 つのイベントをリッスンするものになると推測していた を実装しました。

public class CameraActivity extends Activity implements MediaRecorder.OnInfoListener {
    /* code here */
}

必要な期間を追加しましたmMediaRecorder.setMaxDuration(5000);

最後に、OnInfo リスナーに必要なコールバック メソッドを配置しましたが、起動しないようです。

@Override
public void onInfo(MediaRecorder arg0, int arg1, int arg2) {
    Log.i("CALLBACK", "Response Code: " + arg1);
}
4

2 に答える 2

0

recorder.setOnInfoListener(this);MediaRecorder.OnInfoListener インターフェイスを実装した後、MediaRecoder リスナーを設定します。

maxDuration および maxFileSize コールバックを取得するには、次のように onInfo コールバックを使用します。

@Override
public void onInfo(MediaRecorder mr, int what, int extra) {
     if (what == MediaRecorder.MEDIA_RECORDER_INFO_MAX_DURATION_REACHED) {

         Log.e("Maximum Duration Reached","Maximum Duration Reached"); 
      } 
     if (what == MediaRecorder.MEDIA_RECORDER_INFO_MAX_FILESIZE_REACHED) {

         Log.e("Maximum File size Reached","Maximum File size Reached"); 
      } 
于 2016-07-28T10:15:57.810 に答える