4

enter image description hereAusgabe in Anrufaufzeichnung und nicht in Android 7.0 unterstützt?

Ausgabe ist Gesprächsaufzeichnung funktioniert gut bis Android-Version 6.0.1 aber es funktioniert nicht ordnungsgemäß über dieser Android-Version.

Problem: - der Anruf ist für 1 Minute an, aber die Aufnahme ist in 2 bis 3 Sekunden zu stoppen.

Hier EditText von Kontakt:

edt_attempt_contact.setOnTouchListener(new View.OnTouchListener() { 
     @Override 
     public boolean onTouch(View v, MotionEvent event) { 
      final int DRAWABLE_RIGHT = 2; 

      if (event.getAction() == MotionEvent.ACTION_UP) { 
       if (event.getX() >= (edt_attempt_contact.getRight() - edt_attempt_contact.getCompoundDrawables()[DRAWABLE_RIGHT].getBounds().width())) { 
        if (!edt_attempt_contact.getText().toString().isEmpty()) { 

         Intent i = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + edt_attempt_contact.getText().toString())); 
         try { 
          startActivity(i); 
         }catch (SecurityException s){ 
          s.printStackTrace(); 
         } 

         try { 
          audioRecord(); 
         } catch (IOException e) { 
          e.printStackTrace(); 
         } 
        } else { 
         Toast.makeText(MainActivity.this, "Attempt Contact Number is required to call", Toast.LENGTH_SHORT).show(); 
        } 

        return true; 
       } 
      } 
      return false; 
     } 
    }); 
} 

Hier ist der Hauptcode für Anrufaufzeichnung.

private void audioRecord() throws IOException { 

    MediaRecorder recorder = new MediaRecorder(); 

    recorder.setAudioSource(MediaRecorder.AudioSource.MIC); 
    recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); 
    recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 
    recorder.setOutputFile(root + "/" 
      .concat("_") 
      .concat(generateUniqueFileName()) 
      .concat(".amr")); 


    try { 
     recorder.prepare(); 
    } catch (IllegalStateException e) { 
     e.printStackTrace(); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 
    recorder.start(); 
} 

ich genommen hatte alle müssen die Berechtigungen für Android Aufzeichnung noch nicht über Android 6.0.1 versions.Thank Sie im Voraus für die Lösungen arbeiten in ...

+0

Bitte fügen Sie eine detailliertere Problembeschreibung als _ "nicht ordnungsgemäß" _ hinzu. – Michael

+0

Anruf ist für 1 Minute, aber die Aufnahme ist sofort in wenigen Sekunden, d. H. 3 Sekunden in den oben genannten Versionen ... –

+0

ist etwas in diesem Code für die Version über 6.0.1 hinzufügen? @Michael –

Antwort

0

Sie die Anrufaufzeichnung Code verwenden in Service oder Aktivität?

Der Aktivitätsfüllstopp, sobald die Anrufaufzeichnung gestartet wurde. Wenn der Code aktiv ist, wird die Anrufaufzeichnung gestoppt.

+0

yaa Anrufaufzeichnung ist aktiv, warum funktioniert die Aufnahme in Lollypop-Versionen gut? –

Verwandte Themen