Ios tvOS与Siri搜索深度链接集成的问题

Ios tvOS与Siri搜索深度链接集成的问题,ios,avplayer,tvos,Ios,Avplayer,Tvos,我有一个问题,当用户正在播放视频时,当视频正在播放时,他使用siri搜索不同的电影,这将加载相应的电影详细信息页面,然后选择播放该电影,这将深入链接到正在播放电影的应用程序,当我播放新选定的电影并关闭avplayer和avplayercontroller时,上一个视频中的音频仍会继续播放。尽管我从窗口中清除了所有子视图并再次初始化了它的超级视图控制器类,但avplayer并没有被清除。我不知道该怎么做才能删除旧的avplayer实例。如果有人有任何建议或面临类似问题,请告诉我。一些建议: 您是否

我有一个问题,当用户正在播放视频时,当视频正在播放时,他使用siri搜索不同的电影,这将加载相应的电影详细信息页面,然后选择播放该电影,这将深入链接到正在播放电影的应用程序,当我播放新选定的电影并关闭avplayer和avplayercontroller时,上一个视频中的音频仍会继续播放。尽管我从窗口中清除了所有子视图并再次初始化了它的超级视图控制器类,但avplayer并没有被清除。我不知道该怎么做才能删除旧的avplayer实例。如果有人有任何建议或面临类似问题,请告诉我。

一些建议:

  • 您是否正在子类化AvPlayServiceController?如果是这样,那是个坏主意。API文档明确表示不要这样做
  • 添加一个
    deinit
    功能。如果在旧的
    AVPlayer
    被解除时没有调用它,您就知道存在保留问题。这通常是由注册通知或边界时间观察者引起的
  • 如果查看控制器有对
    AVPlayer
    对象的引用,则可以尝试重写
    viewdiddemouse
    函数来调用player.pause(),然后将player引用首先设置为
    AVPlayer()
    的新实例,然后设置为
    nil
    。不知道为什么这会有帮助,但有时确实如此
  • 明确执行上述第2条。如果Denit没有接到电话,你肯定有问题