問題タブ [fairplay]
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.
ios11 - アプリを閉じたときのオフライン HLS Fairplay 再生エラー、コード 16227
AVContentSessionKey を使用する FairPlay Streaming Server SDK v4.0.1 のデモに従って、HLS Fairplay で Offline Playback を実装しています。3 つのコンテンツをダウンロードします。各コンテンツはダウンロードされ、ドキュメント ディレクトリの .movpkg とそのコンテンツ キーの両方が正しく保存されます。WIFI をオフにすると、ダウンロードされたこれらの 3 つのコンテンツは問題なく正しく再生され、次のコードを使用して再生されます。
ここまでは順調ですね。しかし、問題は、アプリケーションを閉じて (アプリケーションを閉じるためのホーム ボタン)、ダウンロードしたコンテンツを再生すると、最後にダウンロードされたコンテンツのみが正しく再生され、他のコンテンツ (1 番目と 2 番目) はこれらのエラーをコンソールに送信することです。
ドキュメントディレクトリのキーで .movpkg を再確認すると、正しく表示されます
エラーが発生する前に ContentKeyDelegate が呼び出され、キーが読み込まれてリクエストに正しく渡されます。
if persistableContentKeyExistsOnDisk(withContentKeyIdentifier: assetIDString) {
contentKeyRecipients を印刷すると、3 つのコンテンツが正しく表示されます
私のテストは iOS 11.1.2 と iOS 11.2 beta 2 にあります
何が起こっているのかわかりませんが、永続化されたキーに問題があるようです。各コンテンツを一度に 1 つの AVContentKeySession に関連付ける必要があるかどうかはわかりません。
誰かが同様の問題に直面した場合は、助けていただければ幸いです。
前もって感謝します