Czy słuchawki są podłączone? iOS7

Opracowanie aplikacji na iPhone'a z plikami audio, które także trzeba słuchać przez słuchawki.

Jak sprawdzić, czy słuchawki nie są podłączone, więc mogę nakazać użytkownikowi podłączenie słuchawek.

Mam następujący kod z innego wątku, ale metoda audioSessionGetProperty jest przestarzała. Każdy wie, jak zmienić poniższy kod, aby to działało LUB mieć własny kod / rozwiązanie.

Dzięki.

- (BOOL)isHeadsetPluggedIn {
    UInt32 routeSize = sizeof (CFStringRef);
    CFStringRef route;


    //Maybe changing it to something like the following would work for iOS7?
    //AVAudioSession* session = [AVAudioSession sharedInstance];
    //OSStatus error = [session setCategory:kAudioSessionProperty_AudioRoute...?


    //the line below is whats giving me the warning
    OSStatus error = AudioSessionGetProperty (kAudioSessionProperty_AudioRoute,
                                              &routeSize,
                                              &route);

    /* Known values of route:
     * "Headset"
     * "Headphone"
     * "Speaker"
     * "SpeakerAndMicrophone"
     * "HeadphonesAndMicrophone"
     * "HeadsetInOut"
     * "ReceiverAndMicrophone"
     * "Lineout"
     */

    if (!error && (route != NULL)) {

        NSString* routeStr = (__bridge NSString*)route;

        NSRange headphoneRange = [routeStr rangeOfString : @"Head"];

        if (headphoneRange.location != NSNotFound) return YES;

    }

    return NO;
}

questionAnswers(7)

yourAnswerToTheQuestion