¿Detectar el modo silencioso en iOS5?

He usado este método en el pasado para detectar si el interruptor silencioso está habilitado:

- (BOOL)silenced {
    #if TARGET_IPHONE_SIMULATOR
    // return NO in simulator. Code causes crashes for some reason.
    return NO;
    #endif

    CFStringRef state;
    UInt32 propertySize = sizeof(CFStringRef);
    AudioSessionInitialize(NULL, NULL, NULL, NULL);
    AudioSessionGetProperty(kAudioSessionProperty_AudioRoute, &propertySize, &state);

    if(CFStringGetLength(state) > 0)
        return NO;
    else
        return YES;
}

Esto ya no funciona en iOS5 en mi iPad o iPhone. ¿Es este un problema conocido? No he podido encontrar ninguna respuesta en el desbordamiento de pila o en los foros de desarrollo de Apple.

Espero que puedas ayudar ...

Respuestas a la pregunta(2)

Su respuesta a la pregunta