Я сделал свое приложение для воспроизведения музыки в фоновом режиме, я также успешно сделал его медиа-плеером, вызвав BeginReceivingRemoteControlEvents. однако метод RemoteControlReceived никогда не вызван. одна и та же логика в Objective C работает нормально. Любые образцы или рекомендации оценены.Использование BeginReceivingRemoteControlEvents в Monotouch
ответ
Вам необходимо убедиться, что оно размещено на представлении первого ответчика, а если нет, событие должно быть передано по цепочке ответчиков до тех пор, пока оно не достигнет ваших удаленных событий. Попробуйте представить события дистанционного управления так же, как нажатия клавиш на клавиатуре. Например, если приложение сосредоточено на кнопке, и вы нажимаете некоторые клавиши клавиатуры, ничего не произойдет, так как кнопка не прослушивает нажатия клавиш. Аналогичная ситуация наблюдается в вашем коде. Попробуйте создать базовый, один просматриваемый проект с помощью BeginReceivingRemoteControlEvents и переопределить метод для получения события (не помните, что это такое, RemoteEventReceived() или что-то подобное.) Это должно срабатывать при нажатии дистанционной кнопки.
(жаль, что я не могу дать пример код, а не перед макинтошем в минуте)
Вы могли бы хотеть попробовать использовать более поздний механизм для прослушивания событий пульта дистанционного управления. Например, если вы хотите слушать кнопки гарнитуры:
MPRemoteCommandCenter *commandCenter = [MPRemoteCommandCenter sharedCommandCenter];
[commandCenter.togglePlayPauseCommand addTargetWithHandler:^MPRemoteCommandHandlerStatus(MPRemoteCommandEvent * _Nonnull event) {
NSLog(@"toggle button pressed");
return MPRemoteCommandHandlerStatusSuccess;
}];
или, если вы предпочитаете использовать метод вместо блока:
[commandCenter.togglePlayPauseCommand addTarget:self action:@selector(toggleButtonAction)];
Для остановки:
[commandCenter.togglePlayPauseCommand removeTarget:self];
или:
[commandCenter.togglePlayPauseCommand removeTarget:self action:@selector(toggleButtonAction)];
Вы будете ред, чтобы добавить это к включает в себя область файла:
@import MediaPlayer;
Это работает в фоновом режиме, только если вы аудио приложения в фоновом режиме (т.е. вы должны установить этот фоновый режим в своих возможностях приложения).
- 1. Вызов beginReceivingRemoteControlEvents в фоновом режиме
- 2. Использование Crashlytics в MonoTouch
- 3. Использование sgen в MonoTouch
- 4. Использование Pickers в MonoTouch
- 5. Использование UIActivityViewController в monotouch
- 6. Использование NSArray с Monotouch
- 7. MonoTouch - повторное использование UIAlertVIew?
- 8. Использование SQLCipher с MonoTouch
- 9. MonoTouch Использование NSData.FromBytes
- 10. UIApplication -beginReceivingRemoteControlEvents заставляет музыкальное приложение захватывать аудио
- 11. beginReceivingRemoteControlEvents не вызывает события для Apple Music
- 12. Monotouch и WCF, использование памяти
- 13. Использование Sqlcipher с sqlite-net в MonoTouch
- 14. Использование PerformSelector с @selector в MonoTouch
- 15. Использование ViewControler непосредственно в файле XIB. (Monotouch)
- 16. Использование переменных окружения в Monodevelop с MonoTouch
- 17. Использование C DLL в MonoTouch и MonoDroid
- 18. Использование HTTPS с Monotouch и WCF
- 19. MonoTouch: Использование ServiceStack вызвало ошибку JIT?
- 20. Использование UiWebView и Monotouch с Azure ACS
- 21. Использование репозитория GIT для существующего проекта MonoTouch
- 22. Использование Shark с MonoTouch, без символов
- 23. Использование Monotouch с API Google .NET
- 24. Unescape System.Uri в MonoTouch
- 25. Monotouch AVAssetReader
- 26. MonoTouch: расположение папки tmp?
- 27. MonoTouch Замена RootViewController
- 28. PerformSelector Monotouch Threading
- 29. Использование существующих C++ библиотеки в MonoTouch и MonoDroid
Привет, Али, вы нашли ответ на свой вопрос? –
Nope :(Я все еще смотрю ... –