iphone objective-c audio volume

iphone - AudioServicesPlaySystemSound Volume?



objective-c (1)

Tengo este codigo

-(void)createAndPlaySoundID: (NSString*)name { NSString *path = [NSString stringWithFormat: @"%@/%@", [[NSBundle mainBundle] resourcePath], name]; NSURL* filePath = [NSURL fileURLWithPath: path isDirectory: NO]; SystemSoundID soundID; AudioServicesCreateSystemSoundID((__bridge CFURLRef)filePath, &soundID); AudioServicesPlaySystemSound(soundID); }

A esto lo llamo así:

[self createAndPlaySoundID: @"mySound.caf"];

Esto funciona muy bien, sin embargo no tengo control sobre el volumen. Simplemente quiero que el usuario controle el volumen utilizando los botones de volumen físico estándar en su iPad.

Si pongo este volumen abajo para decir 1, se reproducirá, genial, pero luego si elevo el volumen del dispositivo al máximo, es el mismo volumen.

Cualquier ayuda sería apreciada, manejando esto, gracias.


También fui mordido por un problema similar en este tema.

Mi problema era que había una configuración global que desconocía.

En la aplicación Configuración, bajo

General> Sonidos> Timbre y Alertas

Si ''Cambiar con botones'' está Off , los sonidos que usen AudioServicesPlaySystemSound() siempre se reproducirán a todo volumen (sin embargo, otras API de sonido como AVAudioPlayer respetarán el volumen del dispositivo).