AVAudioPlayer
(not )を使用してオーディオ プレーヤーを実装しましたAVPlayer
。次の方法でリモート コントロール イベントを処理できます。これまでのところ問題なく動作しますがsubtypes
、これらのイベントにはさらに 2 つのイベントがあります:UIEventSubtypeRemoteControlEndSeekingForward
とUIEventSubtypeRemoteControlEndSeekingBackward
.
- (void)remoteControlReceivedWithEvent:(UIEvent *)event {
//if it is a remote control event handle it correctly
if (event.type == UIEventTypeRemoteControl)
{
if (event.subtype == UIEventSubtypeRemoteControlPlay)
{
[self playAudio];
}
else if (event.subtype == UIEventSubtypeRemoteControlPause)
{
[self pauseAudio];
}
else if (event.subtype == UIEventSubtypeRemoteControlTogglePlayPause)
{
[self togglePlayPause];
}
else if (event.subtype == UIEventSubtypeRemoteControlBeginSeekingBackward)
{
[self rewindTheAudio]; //this method rewinds the audio by 15 seconds.
}
else if (event.subtype == UIEventSubtypeRemoteControlBeginSeekingForward)
{
[self fastForwardTheAudio]; //this method fast-forwards the audio by 15 seconds.
}
}
だから質問:
正しく動作させるために、これら 2 つのサブタイプも実装する必要がありますか?
この方法では、ロック画面で
rewind
、play/pause
、およびボタンのみが有効になりますが、ファイルのタイトル、アートワーク、および期間は表示されません。fast forward
またはを使用してその情報を表示するにはどうすればよいですAVAudioPlayer
かAVAudioSession
(これを実装するためにもう 1 つのライブラリ/API は必要ありません)。2-a。検索中に発見
MPNowPlayingInfoCenter
したのですが、よくわかりません。上記のものを実装するためにそれを使用する必要がありますか? :-[