2012-02-10 40 views
3

MPMoviePlayerController存在輕微問題。我正在播放電影,如果用戶從音頻插孔拔下耳機,它會暫停電影(標準的iOS功能)。MPMoviePlayerController - 插入耳機時自動恢復

但是,當用戶將耳機插回插孔時。該電影不會自動恢復。

有沒有我缺少的東西?

謝謝。

回答

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

什麼時候你將耳機放回插孔,你的視頻或音樂不會繼續播放。 iOS的這一功能。

您需要以編程方式確定用戶何時連接耳機,然後以編程方式繼續播放。 要確定耳機的狀態,我使用示例aurioTouch(來自Apple)的函數「propListener」。 https://developer.apple.com/library/ios/samplecode/aurioTouch/aurioTouch.zip

+0

你能更清楚了嗎?我不明白你的回覆! – Asheh 2012-02-10 11:21:01