应用更新后,AVPlayer无法播放缓存的歌曲。为什么?

时间:2013-05-06 08:46:22

标签: ios app-store avplayer

我的应用程序缓存音乐服务中的歌曲以进行离线播放。它们保存在NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)下的子目录中。我还在didFinishLaunchingWithOptions例程中有代码来验证缓存文件是否仍在那里并验证将跟踪ID映射到其本地路径的NSDictionary

我没有遇到任何问题,但是通过AppStore推出更新版本 - AVPlayer停止播放这些缓存的歌曲。我检查过后:

  • 已下载的歌曲仍在缓存文件夹
  • 日志中没有错误
  • 应用不会崩溃
  • 在UI上,我看到它们被标记为缓存,这意味着“清理”例程在设备上找到它们
  • 非缓存歌曲播放正常
  • 新缓存的歌曲也可以播放

这可能是什么问题?

1 个答案:

答案 0 :(得分:0)

我花了很长时间才弄清楚,但基本上:应用程序GUID会在iOS应用程序更新时发生变化,并且我的缓存歌曲字典中存储了完整路径!