2017-09-16 28 views
3

我目前正在學習Swift,並且正在爲webradio創建一個應用程序。 [MediaRemote ]錯誤操作需要客戶端回調已被註冊。請求播放隊列

我調用此代碼時出現錯誤:

MPNowPlayingInfoCenter.default().nowPlayingInfo = [ 
    MPMediaItemPropertyArtist: currentTrack.artist, 
    MPMediaItemPropertyTitle: currentTrack.title, 
    MPMediaItemPropertyArtwork: albumArtwork, 
    MPNowPlayingInfoPropertyIsLiveStream: 1.0, 
    MPNowPlayingInfoPropertyMediaType: 1.0, 
    MPNowPlayingInfoPropertyPlaybackQueueIndex: 0, 
    MPNowPlayingInfoPropertyPlaybackQueueCount: 0 
] 

這裏的錯誤:

[MediaRemote]錯誤操作需要客戶端回調一直 註冊。請求播放隊列

有誰知道爲什麼?我是法國人,所以我沒有正確理解這個錯誤,但是我能理解的是,有些東西可能會丟失?如果是,什麼?

感謝大家的幫助!

+0

同樣在這裏。不知道是什麼 –

+0

發生在我身上。當我第一次開始使用我的應用程序播放音樂並將其發送到後臺並鎖定設備時,鎖屏元數據不存在。但是,如果我開始流式傳輸並簡單地鎖定屏幕(而不是將應用放置在後臺),那麼鎖屏元數據確實存在,並且即使將應用放在後臺中也將繼續更新。 – Ken

+0

我想我知道發生了什麼。我在音頻開始播放前使用MPNowPlayingInfoCenter設置元數據。我的應用程序從流本身獲取元數據(Icecast),所以我知道數據已經開始離開網絡,但是應用程序嘗試在第一個緩衝區填滿之前用此數據更新MPNowPlayingInfoCenter(即在音樂開始之前播放)。因此,我認爲音頻播放器尚未完全初始化(即客戶端回調尚未完全註冊)。因此錯誤。 – Ken

回答

8

我開了一個技術支持事件,與蘋果公司的開發團隊,他們回答我說:

你好迪迪埃,

工程團隊回來說,事實 您所看到的日誌信息實際上是系統 框架中的一個錯誤,並不意味着您錯誤地使用了MPNowPlayingInfoCenter API中的 。在將應用程序更新爲 時,應該使用MPRemoteCommandSample sample code project作爲參考,它強調了在使用MPNowPlayingInfoCenter API使用 時的工程建議最佳實踐。

最好的問候,

開發人員技術支持 蘋果全球開發者關係

相關問題