Mi aplicación implica música (iPodMusic), y hay un UISwitch alternando reproducción/pausa. Mi objetivo es poder detectar si se está reproduciendo música, de modo que el interruptor reproducir/pausa puede decir 'reproducir' cuando la música está sonando y 'pausa' si no es así.¿Detectando si se está reproduciendo la música?
Respuesta
if ([[MPMusicPlayerController iPodMusicPlayer] playbackState] == MPMusicPlaybackStatePlaying) ...
Si la música es de su propia aplicación, marque AVAudioPlayer's playing
property.
Si la música es de iPod, consulte la propiedad MPMusicPlayerController's nowPlayingItem
o playbackState
.
MPMusicPlayerController solo está disponible en OS 3.0 o superior. Si está ejecutando 2.0, no tiene suerte. He aquí un fragmento de código que comprueba si se está ejecutando 3.0 o superior y sólo entonces los intentos de crear un MPMuiscPlayerController
bool playerDetectedAndPlaying = false;
NSString *reqSysVer = @"3.0";
NSString *currSysVer = [[UIDevice currentDevice] systemVersion];
if ([currSysVer compare:reqSysVer options:NSNumericSearch] != NSOrderedAscending){
Class MusicPlayerController = NSClassFromString(@"MPMusicPlayerController");
if (MusicPlayerController){
id myMusicPlayerController = [[MusicPlayerController alloc]init];
id MusicPlayer = [[myMusicPlayerController class] iPodMusicPlayer ];
if ([ MusicPlayer playbackState ] == MPMusicPlaybackStatePlaying) {
playerDetectedAndPlaying = true;
}
}
}
Usted tiene que compilar contra un SDK 3.0, pero si se establece el destino de despliegue a 2.0, este código todavía se ejecuta en dispositivos más antiguos.
va a "si" si su sonido de iTunes está activado, de lo contrario va a "no" si el sonido está desactivado. Reproductor de música de iTunes ... Puede comprobar fácilmente el sonido de MusicPlayer predeterminado está activado o desactivado. Necesita agregar el reproductor de medios. Solo pruébalo funcionará correctamente ... Thx ... :)
if ([[MPMusicPlayerController iPodMusicPlayer] playbackState] == MPMusicPlaybackStatePlaying)
{
NSLog(@"yes itune Player Sound is on");
}
else
{
NSLog(@"NO itune Player Sound is not on");
}
- 1. ¿Cómo se comprueba si se está reproduciendo música utilizando un receptor de difusión?
- 2. de verificación si la música se juega
- 3. En iPhone: descubra qué canción se está reproduciendo actualmente. (en el reproductor de música iPod)
- 4. ¿Cómo detectar si se está reproduciendo otro audio en el fondo? (Windows Phone 7)
- 5. Detecta si se está reproduciendo un efecto de sonido en SimpleAudioEngine
- 6. iOS - detectando si Game Center está deshabilitado
- 7. Detectando si el monitor está apagado
- 8. Detectando si la conexión a Internet está ocupada
- 9. Detectando si el disco está en la unidad de DVD
- 10. Detectando si se carga un HttpModule
- 11. Capture el sonido que se está reproduciendo actualmente
- 12. Android: compruebe si el audio se está reproduciendo actualmente y deténgalo
- 13. ¿Cómo saber si un elemento <video> se está reproduciendo actualmente?
- 14. ¿Es posible determinar mediante programación si se está reproduciendo un video?
- 15. Sonido de notificaciones personalizadas que no se está reproduciendo
- 16. Coldfusion: Detectando si está siendo ejecutado por el programador
- 17. iPhone: ¿Cómo detectar si iTunes está jugando?
- 18. Detectando si el caché de un navegador está lleno
- 19. Detectando si ya se está ejecutando otra instancia de la aplicación
- 20. Detectando si el diálogo de entrada de archivo está abierto
- 21. Detectando si un navegador está en modo de pantalla completa
- 22. Detectando si el navegador está navegando a otra página
- 23. ¿Cómo establecer un título del audio que se está reproduciendo actualmente en la pantalla de bloqueo del iPhone?
- 24. Detectando si se permite la pantalla completa en ActionScript 3.0?
- 25. Detectando si java está instalado y habilitado con javascript
- 26. Detectando si NSNumber está entre 0 y 255
- 27. Aplicación de Android para Pausar/Reanudar la música de otra aplicación de reproductor de música
- 28. Detectando si un programa ya está instalado con NSIS
- 29. Detectando si está instalada una base de datos Oracle
- 30. Detectando que la pila está llena
¡Funcionó impecablemente! – Flafla2
Esto también es útil si quieres que tu aplicación deje de hacer ruido si el usuario inicia la aplicación iPod. Por ejemplo, si estás escribiendo un juego y tu propia música en el juego choca con el usuario que intenta jugar el suyo. – Piku
Esto tiene que solucionarse debido a la desactivación de iOS 8.0 del método 'iPodMusicPlayer' de' MPMusicController': cambiarlo a 'systemMusicPlayer'. – DDPWNAGE