Мы разрабатываем приложение RTP VoIP для UWP Desktop.Мы используем стороннюю библиотеку для аудио / видео связи.Аудиоподключение работает нормально, если приложение находится на переднем плане или не свернуто, но как только приложение отправлено на задний план путем минимизации аудиосоединения, оно приостанавливается.Когда снова на переднем плане связь возобновляется.
Возможны два различных случая:
- Fail : пользователь настольного приложения uwp инициирует вызов, а затем сворачивает приложение.Аудио отключено.
- Успех : настольное приложение uwp получает вызов (который сначала инициируется событием уведомления PushNotificationChannel).В этом случае, во время вызова, когда приложение свернуто, аудиоподключение остается активным ... что немного необъяснимо ...
Цель здесьзаставить фоновый звук вызова (для случая 1.) также работать, пока окно приложения свернуто.
Примечания. Исходя из различий между двумя случаями вызовов (нет push-уведомления для случая 1), мы предполагаем, что push-уведомление может получать некоторый тип отсрочки, о котором мы не знаем.Интересно то, что это частично работает.Вариант 1. также будет работать, если его попытаться выполнить после варианта 2. во время той же сессии приложения.
PS: мы уже приобрели ответчик для следующих событий жизненного цикла приложения:
this.Suspending += this.OnSuspending;
this.EnteredBackground += this.AppEnteredBackground;
this.LeavingBackground += this.AppLeavingBackground;
private void AppEnteredBackground(object sender, EnteredBackgroundEventArgs e)
{
var deferral = e.GetDeferral();
}
А также имеем возможность фонового носителя в манифесте:
<uap3:Capability Name="backgroundMediaPlayback" />
Всеи любые идеи приветствуются :)