Lorsque j'essaie d'utiliser le microphone sur Android, je ne peux pas enregistrer si une autre application l'utilise déjà. Si vous ne pouvez tout simplement pas enregistrer, cela signifie que le son que vous avez l'intention d'enregistrer s'écoule vers l'application qui tient le microphone si vous ne faites pas attention. Si les applications VoIP fonctionnent en même temps, la pire situation peut être que la voix n'atteigne qu'une autre personne, pas la personne à qui vous parlez. .. ..
Détecte que votre application ne peut pas utiliser le microphone et arrête l'enregistrement.
Le déroulement est le suivant lors de l'enregistrement. AudioRecord
AudioRecord audioRecord = new AudioRecord(,,,,);
audioRecord.setRecordPositionupdateListener(new AudioRecord.OnRecordPositionupdateListener() {
//Traitement pour chaque image
@Override
public void onPeriodicNotification(AudioRecord recorder) {
audioRecord.read();
}
});
audioRecord.setPositionNotificationPeriod();
audioRecord.startRecording();
audioRecord.read();
・
・
・
audioRecord.stop();
Cependant, il semble qu'aucune des fonctions ne renvoie d'erreur, même si d'autres applications utilisent le microphone. .. ..
Cependant, il y avait une différence avec et sans concurrence pour l'utilisation du microphone. Si vous ne pouvez pas obtenir le micro, il ne semble pas appeler onPeriodicNotification, qui est le rappel pour le traitement image par image.
Par conséquent, si onPeriodicNotification n'est pas appelé après un certain laps de temps, il semble qu'il puisse être déterminé qu'une autre application a acquis le microphone.
** Contenu ** Assurez-vous que onPeriodicNotification n'est pas appelé lors d'un appel en ligne, Facebook Messenger environnement Nexus 6 (7.1.1) , Nexus 7 (6.0.1)
――Veuillez me faire savoir s'il existe un meilleur moyen! ――Veuillez me faire savoir si vous ne pouvez pas le détecter par cette méthode!
Recommended Posts