2017-08-12 2 views
1

Ich erhalte diese Störung, wenn ich versuche, den Code in Android 6.0 GerätAudioFlinger konnte nicht Aufzeichnungsspur erstellen, Status: -1 Fehler beim Erstellen AudioRecord Beispiel: Initialisierungsprüfung mit Status fehlgeschlagen -1

AudioFlinger konnte nicht laufen create record track, status: -1 Fehler beim Erstellen von AudioRecord Instanz: Initialisierungsprüfung fehlgeschlagen mit Status -1.

Ich habe diesen Code, die

private void startRecording auch auf niedrigere Version Gerät arbeitet() {

 bufferSize = AudioRecord.getMinBufferSize(11025, 
       AudioFormat.CHANNEL_CONFIGURATION_MONO, 
       AudioFormat.ENCODING_PCM_16BIT); 


    recorder = new AudioRecord(MediaRecorder.AudioSource.MIC, 
    11025, AudioFormat.CHANNEL_CONFIGURATION_MONO,RECORDER_AUDIO_ENCODING, 1024);//bufferSize); 

    int i = recorder.getState(); 

    if(i==1) 
    { 
    recorder.startRecording(); 
    ShowToast("Recording started successfully"); 
    } 

     isRecording = true; 

    recordingThread = new Thread(new Runnable() 
    { 

    @Override 
    public void run() 
    { 
    writeAudioDataToFile(); 
    } 
    },"AudioRecorder Thread"); 

    recordingThread.start(); 
    } 

Antwort

0

Ich nehme an, Sie bereits die <uses-permission android:name="android.permission.RECORD_AUDIO" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> Berechtigungen in manifest.xml

gesetzt haben

Bei Android-Versionen> 6.0 wird Audio als "gefährliche" Berechtigung betrachtet. Sie müssen also zur Laufzeit durch Hinzufügen von Code um Erlaubnis bitten. Anweisungen dazu sind hier:

https://developer.android.com/training/permissions/requesting.html

Verwandte Themen