use*_*404 5 ios avplayer swift2
我正在使用AVPlayer播放URL中的音频。一切正常,直到APP进入后台或iPhone进入睡眠模式。
我如何防止这种情况发生。
我已经添加到info.plist中:
这是我的代码。
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let playTrackID = tracks[indexPath.row].trackID
let urlString = url
let url = NSURL(string: urlString)!
avPlayer = AVPlayer(URL:url)
avPlayer.play()
}
Run Code Online (Sandbox Code Playgroud)
任何的想法?
更新:由@Danil Gontovnik 解决
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let playTrackID = tracks[indexPath.row].trackID
let urlString = url
let url = NSURL(string: urlString)!
do {
avPlayer = AVPlayer(URL:url)
try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
try AVAudioSession.sharedInstance().setActive(true)
}
catch {
print("Something bad happened. Try catching specific errors to narrow things down")
}
avPlayer.play()
Run Code Online (Sandbox Code Playgroud)
我认为您忘记将 AVAudioSession 设置为活动状态。尝试添加这段代码:
var categoryError: NSError?
AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, error: &categoryError)
if categoryError != nil {
// Handle error
}
var activeError: NSError?;
AVAudioSession.sharedInstance().setActive(true, error: &activeError)
if activeError != nil {
// Handle error
}
Run Code Online (Sandbox Code Playgroud)
有关AVAudioSession的更多信息可以在这里找到。
| 归档时间: |
|
| 查看次数: |
2244 次 |
| 最近记录: |