2016-11-03 57 views
0

我正在嘗試編寫一個用於播放音樂的基於Xamarin.Forms的應用程序。我使用標準的Xamarin Forms Dependency Service模式爲iOS創建了一個特定於平臺的播放器,該播放器使用MPMusicPlayerController,如Xamarin所述。當我編寫代碼時,MPMusicPlayerController.NowPlayItem屬性是可訪問的;Xamarin.iOS:MPMusicPlayerController.NowPlayingItem屬性消失

NowPlayingItem is accessible

,當我第一次測試它的一切工作確定。然後我開始嘗試收聽來自MPMusicPlayerController的通知,並且它'消失';當我調試時,該屬性丟失,當我嘗試訪問它,我得到一個深單聲道SIGSEGV異常;

Property has disappeared

常常調試器試圖引用屬性和也崩潰。所以;我拿出通知,它仍然發生!

+0

順便說一句;它不只是零;那很好;它與其他屬性完全消失,而一些仍然可用! –

回答

1

我重新創建了導致Xcode和Objective C中的問題的代碼部分。儘管從Xamarin運行並崩潰後查看Xcode中的設備日誌也會顯示問題。

爲訪問媒體庫的任何內容提供的更新版本的iOS expect an Info.plist entry; Privacy - Apple Music Usage Description。有趣的是,似乎回放是允許的,它感覺像NowPlayingItem屬性不應該被允許,但不知何故,有時是。

最後,我發現我必須把plist條目,並且還必須檢查並且有時要求授權,如this post

一旦我完成了這兩個,NowPlayingItem屬性工作,我收到通知。