我正在将我的网站上的小电影 (1-3MB) 流式传输到我的 iPhone 应用程序中。我有一个 slicehost 网络服务器,我认为它是一个“500MB 切片”。我不确定这如何转化为带宽,但我稍后会弄清楚。
我对 MPMoviePlayerLoadStateDidChangeNotification 的体验不是很好。我使用旧的 MPMoviePlayerContentPreloadDidFinishNotification 获得了更可靠的结果
如果我得到一个 MPMoviePlayerContentPreloadDidFinishNotification,电影将播放而不会卡顿,但如果我使用 MPMoviePlayerLoadStateDidChangeNotification,电影经常会停顿。
我不确定要检查哪种负载状态:
枚举 { MPMovieLoadStateUnknown = 0, MPMovieLoadStatePlayable = 1 << 0, MPMovieLoadStatePlaythroughOK = 1 << 1, MPMovieLoadStateStalled = 1 << 2, };
MPMovieLoadStatePlaythroughOK 似乎是我想要的(基于文档中的描述):
MPMovieLoadStatePlaythroughOK
Enough data has been buffered for playback to continue uninterrupted.
Available in iOS 3.2 and later.
但在我的应用程序中,加载状态永远不会设置为此。
我错过了什么吗?有一个更好的方法吗?