1

SPSessionPlaybackDelegate を含め、次のメソッドを含めました。

-(void)sessionDidEndPlayback:(SPSession *)aSession {
NSLog(@"song ended");

}

ただし、これは、曲の再生が自然に終了したときに呼び出されるわけではありません。このデリゲートを実装するために何か追加する必要があることはありますか? 他のそのようなメソッドは、適切なタイミングで呼び出されています:

-(void)sessionDidLoginSuccessfully:(SPSession *)aSession; {

}
4

1 に答える 1

3

sessionDidEndPlayback:SPSessionPlaybackDelegateではなく、プロトコルの一部ですSPSessionDelegateplaybackDelegateセッションオブジェクトのとして設定されているオブジェクトで呼び出されます。

ただし、オーディオの再生に使用SPPlaybackManagerしている場合、そのクラスはplaybackDelegate作成時にセッションのクラスとして設定され、そのままにしておく必要があります。

現在、SPPlaybackManagerトラック終了のデリゲート メソッドは提供されていないため、CocoaLibSpotify の現在のリリースでこれを行う方法は、SPPlaybackManagercurrentTrackプロパティを観察することnilです。

devCocoaLibSpotifyのブランチは、メソッドplaybackManagerIsFinishingPlayback:SPPlaybackManagerのデリゲート プロトコルに追加しました。

于 2013-01-03T10:06:58.337 に答える