問題タブ [mpnowplayinginfocenter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - MPNowPlayingInfoCenter と競合する Apple Music
音楽プレーヤー アプリがバックグラウンドで再生されているときの問題についてサポートが必要です。
どちらのサービスでも、アプリ内とバックグラウンドで音楽を再生できます。を設定することもできMPNowPlayingInfoCenter
、正しい情報が表示されますが、再生/一時停止、次のトラック、および前のトラックは、ユーザーが Spotify で認証されている場合にのみ機能します。
ユーザーが Spotify で認証されると、通知がアプリによって正しく受信されます
ただし、ユーザーが Apple Music で認証する場合は機能しません。この場合、Apple Music が通知を受け取っているようです。
Apple Music との同期時と Spotifyとの同期時AVPlayer
に音楽を再生するためにを使用しています。SPTAudioStreamingController
メディア センターのセットアップのコードは次のとおりです。
イベント処理のコードは次のとおりです。
この状況に対処する方法を教えてください。
swift - コントロール センターの進行状況ビューが一時停止しない
のコントロールセンターをセットアップしましたAVAudioPlayer
。コントロールセンターのプログレスバーを除いて、すべてがうまく機能します.これAVAudioPlayer
は、一時停止するたびにカウントアップを続けます. どうすればこれを修正できますか? これが私がこれまでに持っているものです:
およびviewDidLoadで:
Swift 3 と Xcode 8 を使用しています。
swift - MPNowPlayingInfoCenter が進行状況バーの更新を停止しました
音楽プレーヤーを含むアプリを作成しています。しばらく取り組んでいませんでしたが、最後に取り組んだときはうまくいきましたnowPlayingInfo
。今、Swift 3 に更新すると、進行状況バーを除いてすべてが機能します。
ここで、競合状態とそれが何かによってオーバーライドされていることについて話している同様の質問をいくつか見ましたが、何が原因かわかりません。私はAVQueuePlayer
それが役立つ場合を使用しています。
スキップと前のボタンは機能し、アルバム アート、タイトル、アーティストは完全に更新されますが、経過時間は更新されません。デバッグすると、MPNowPlayingInfoPropertyElapsedPlaybackTime
fromMPNowPlayingInfoCenter.default().nowPlayingInfo
には正しい数値が表示されますが、コントロール センターの実際の画面には表示されません。通常、進行状況は 0:01 でスタックし、動かないだけです。ただし、アプリでスライダーを使用してシークし、コントロール センターに戻ると、シークした時間が表示されますが、そのままです。
これが私のsetNowPlaying
コードです:
以前はメソッドに渡された変数に設定MPNowPlayingInfoPropertyElapsedPlaybackTime
していましたtimePlayed
が、機能していなかったので、player.currentTime()
他の質問で推奨されているように試してみましたが、とにかく使用していたものよりもおそらく優れた尺度です。
これが役立つ場合のシークのコードは次のとおりです。
何らかの理由で、コントロール センターの情報を更新する唯一のものです。