сбой приложения при запуске Mediarecorder - PullRequest
0 голосов
/ 13 марта 2020

мое приложение вылетает при попытке запустить Mediarecorder. он падает только на уровне 19 уровня API. Я пытался поймать исключение, но оно не работает.

recorder = MediaRecorder().apply {
            setAudioSource(MediaRecorder.AudioSource.MIC)
            setOutputFormat(MediaRecorder.OutputFormat.MPEG_4)
            setOutputFile(fileName)
            setAudioEncoder(MediaRecorder.AudioEncoder.AAC)

            try {
                prepare()
            } catch (e: IOException) {
                Log.e(LOG_TAG, "prepare() failed")
            }
            try {
                start()
            } catch (e: IOException) {
                Log.e(LOG_TAG, "start() failed")
            }


        }

log надеюсь, что я не пропустил ничего другого:

03-13 01:51:03.352 3384-3384/com.example  E/MediaPlayer: Should have subtitle controller already set
03-13 01:51:04.212 1179-1303/? E/AudioRecord: Could not get audio input for record source 1
03-13 01:51:04.212 1179-1303/? E/StagefrightRecorder: audio source is not initialized
03-13 01:51:04.212 3384-3384/com.example E/MediaRecorder: start failed: -2147483648
03-13 01:51:04.212 3384-3384/com.example D/AndroidRuntime: Shutting down VM
03-13 01:51:04.212 3384-3384/com.example W/dalvikvm: threadid=1: thread exiting with uncaught exception (group=0x9cd04b20)
03-13 01:51:04.212 1176-1218/? D/gralloc_ranchu: gralloc_alloc: Creating ashmem region of size 1323008
03-13 01:51:04.212 3384-3384/com.example E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example , PID: 3384
    java.lang.RuntimeException: start failed.
        at android.media.MediaRecorder.start(Native Method)
        at com.example .main.sendAudio.SendAudioFragment.startRecording(SendAudioFragment.kt:358)
        at com.example .main.sendAudio.SendAudioFragment.access$startRecording(SendAudioFragment.kt:46)
        at com.example .main.sendAudio.SendAudioFragment$onCreateView$4.onFinish(SendAudioFragment.kt:194)
        at android.os.CountDownTimer$1.handleMessage(CountDownTimer.java:118)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:136)
        at android.app.ActivityThread.main(ActivityThread.java:5017)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:515)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
        at dalvik.system.NativeStart.main(Native Method)
...