4

寻找一些关于如何使用可能有些动态的媒体项目实施 CarPlay 的指导。

基本上,我想让用户点击层次结构中的顶级项目之一,然后从 CarPlay 获取一个事件,告诉我点击了哪个项目,并让我有机会为此选择提供子媒体项目。同步执行此操作很简单,但我想异步执行此操作,因为我需要下载媒体项目列表,并且我只想下载用户选择的父项下的那些。

beginLoadingChildItemsAtIndexPath看起来是个不错的候选人,但我无法弄清楚它是如何工作的。该文档说“调用此方法以开始异步批量加载媒体项目”。听起来他们说我们应该调用它,但很确定 CarPlay 应该调用它,因为它有一个完成处理程序,我们应该在完成时调用它,对吧?我认为这意味着如果你正在开发一个外部媒体播放器,你应该调用它。那么我们如何使用它(作为媒体资源的开发者)?

理想情况下,我还希望能够在用户收听时插入或添加新的媒体项目。这是一个电子邮件应用程序(Speaking Email),所以新的电子邮件会到达,我想把它们放在当前播放的项目之后。不确定这是可能的,因此任何有关其工作原理的指导或线索都值得赞赏。我注意到互联网上缺乏关于 CarPlay 开发的信息。

我刚刚发现哪种reloadData方法MPPlayableContentManager可能是最好的方法?设置所有项目,然后在收到新电子邮件时重新加载。唯一的问题是开始时未加载电子邮件。我可以在每个帐户下添加一个占位符“正在加载...”项,然后当 CarPlay 调用numberOfChildItemsAtIndexPath同步方法时,我会检查邮件,然后调用reloadData以替换该占位符。

4

0 回答 0