2012-02-10 27 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

関連する問題