[英]Testing CarPlay Audio using the simulator
我使用 Swift / UIKit 開發了一個 iOS 無線電音頻應用程序,一切正常。
我想與 CarPlay 集成並獲得所需的權利。
我相信我大部分都設置正確,因為我可以看到帶有我的 CPListItems 的 CPListTemplate 並且在點擊其中一個時,它會轉到 CPNowPlayingTemplate 並且音頻開始在模擬器中播放。
雖然一切似乎都運行良好,但是,有兩個問題:
添加此代碼后,我可以在設備的鎖定屏幕上和通過命令中心執行此操作:
func setupNowPlayingInfoCenter(){
UIApplication.shared.beginReceivingRemoteControlEvents()
MPRemoteCommandCenter.shared().playCommand.isEnabled = true
MPRemoteCommandCenter.shared().playCommand.addTarget { [weak self] event in
self?.reliableRadioPlayer?.play()
return .success
}
MPRemoteCommandCenter.shared().pauseCommand.isEnabled = true
MPRemoteCommandCenter.shared().pauseCommand.addTarget { [weak self] event in
self?.reliableRadioPlayer?.pause()
return .success
}
}
MPNowPlayingInfoCenter.default().nowPlayingInfo =
[MPMediaItemPropertyTitle: currentlyPlaying.getSongName(),
MPMediaItemPropertyArtist: currentlyPlaying.getSongArtist(),
MPMediaItemPropertyArtwork: artwork]
我是否需要進行其他設置,或者這些僅僅是 CarPlay 模擬器的限制?
謝謝
雖然我不認為這會是最佳答案,而且有人可能會想出更好的方法,但我認為這里有一些東西可以改進您測試 CarPlay 的方式並解釋您可能面臨的一些問題:
#if targetEnvironment(simulator)
UIApplication.shared.endReceivingRemoteControlEvents()
UIApplication.shared.beginReceivingRemoteControlEvents()
#endif
當您在 CarPlay 模擬器上啟動應用程序並顯示正在播放的模板時,很可能您的音頻正在播放,但播放器的狀態將顯示,如果您有一個,這將不會在您的 CPListTemplate 中准確顯示 isPlaying 狀態
這里沒有什么可擔心的,因為它在汽車上運行良好,但是,我建議只需單擊播放按鈕,這樣您就可以在 NowPlayingTemplate 和 CPListTemplate 屏幕中看到活動狀態以及動畫條
雖然我認為我們大多數人不能僅僅為了測試 CarPlay 而購買汽車,但您可以考慮購買支持 CarPlay 的汽車音響,例如 Sony XAV-AX5500、Sony XAV-AX1005DB 或類似的低端產品
你不能用家里的插頭正常給汽車音響供電,所以我建議你在網上播放一些視頻來給它供電,但是, 這是我發現使用筆記本電腦充電器最簡單的一個——基本上我相信你需要 12V 或更高的電壓
祝你好運
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.