将扬声器中的音频切换到耳机扬声器,将耳机扬声器切换到扬声器

问题描述 投票:0回答:1

我们在Xamarin.Forms.Android项目中使用第三方音频/视频SDK。现在的问题是默认情况下音频是扬声器模式,而不是耳机。我试图在互联网上搜索解决方案,并找到下面的代码来设置耳机和扬声器的音频。在扬声器实现下面的代码音频关闭但不能通过耳机收听,如果我设置SpeakerphoneOn = true然后我可以通过扬声器听,但如果我设置SpeakerphoneOn = false然后我不能通过耳机列出。

附加点,即使在更改为InCall或任何其他模式后,模式值始终为“InCommunication”。

我在Xamarin项目中也设置了以下权限。允许:

var audioManager = (Android.Media.AudioManager)Android.App.Application.Context.GetSystemService(Android.Content.Context.AudioService);

audioManager.SpeakerphoneOn = !audioManager.SpeakerphoneOn;
xamarin.forms xamarin.android
1个回答
0
投票

检查何时模式为耳机,音量值是否为0。两种模式的音量分别控制。

var audioManager = (Android.Media.AudioManager)Android.App.Application.Context.GetSystemService(Android.Content.Context.AudioService);
audioManager.Mode = Mode.InCommunication;
audioManager.SpeakerphoneOn = false;
audioManager.SetStreamVolume(Stream.Music, audioManager.GetStreamMaxVolume(Stream.Music), VolumeNotificationFlags.ShowUi);
© www.soinside.com 2019 - 2024. All rights reserved.