MPMoviePlayerController有点问题。我正在播放电影,如果用户从音频插孔拔下耳机,它会暂停电影(标准的iOS功能)。
然而,当用户将耳机插回插孔时。电影不会自动恢复。
我有什么遗失的东西吗?
感谢。
答案 0 :(得分:1)
您何时将耳机重新插入插孔,您的视频或音乐无法继续播放。 iOS的这个功能。
您需要以编程方式确定用户何时连接耳机,然后以编程方式继续播放。 为了确定耳机的状态,我使用样本aurioTouch(来自Apple)的“propListener”功能。 https://developer.apple.com/library/ios/samplecode/aurioTouch/aurioTouch.zip
答案 1 :(得分:1)
MPMoviePlayerController - 自动暂停
听kAudioSessionProperty_AudioRouteChange属性
#import <AudioToolbox/AudioToolbox.h>
void callbackHeadphone_func ( void *inClientData, AudioSessionPropertyID inID, UInt32 inDataSize, const void *inData ) {
if ( inID == kAudioSessionProperty_AudioRouteChange ) {
}
}
- (void) isHeadsetPluggedIn {
UInt32 routeSize = sizeof (CFStringRef); CFStringRef route;
AudioSessionGetProperty (kAudioSessionProperty_AudioRoute, &routeSize, &route);
AudioSessionAddPropertyListener (kAudioSessionProperty_AudioRouteChange, callbackHeadphone_func, self);
/* Known values of route:
"Headset"
"Headphone"
"Speaker"
"SpeakerAndMicrophone"
"HeadphonesAndMicrophone"
"HeadsetInOut"
"ReceiverAndMicrophone"
"Lineout" */
NSString* routeStr = (NSString*)route;
NSLog(@"%@",routeStr);
}