問題タブ [carplay]
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 - CarPlay - iOS 13 で [再生中] 画面を表示する
私のアプリは、電話で既に現在の「現在再生中のアプリ」であり (つまり、必要なすべての情報が に提供されてMPNowPlayingInfoCenter
います)、アーティスト名、トラック タイトル、アートワーク イメージなどとともに、ロック画面に正しく表示されます。
ドキュメントによるとMPNowPlayingInfoCenter.default().nowPlayingInfo
、適切なターゲット/アクションを設定して追加するだけで、ユーザーがアイコンをタップしたときにアプリが CarPlay で呼び出されるようにするのMPRemoteCommandCenter
に十分なはずです。Now Playing
iOS 14 では、この記事でCPNowPlayingTemplate
見つけたいくつかの巧妙なトリックのおかげで、スタックにプッシュすることで上記を達成することができました。
ただし、iOS 13 では、すべてが恐ろしいMPPlayableContentManager
APIに基づいており、オーディオ ベースのアプリに対してメソッドが呼び出されないCPTemplateApplicationSceneDelegate
ため、再生中の画面が表示されるかどうか、いつ表示されるかを検出する方法が見つかりません。
MPNowPlayingInfoCenter
MPRemoteCommandCenter
上記のように正しく構成されていますが、iOS 13 の CarPlay で Now Playing アイコンをタップすると、アプリが選択されません。
この APIが役立つと思ったのですが、方法がわかりませんでした (常に空の配列を返します)。
Now Playing は正しく表示されますが、すぐに再生が開始されます。これは私が望んでいるものではありません<key>UIBrowsableContentSupportsImmediatePlayback</key><true/>
。Info.plist
誰でも実用的なソリューションを提供できますか?