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;
}