Доброе утро. Сегодня у меня есть одно требование и детали: у меня есть один защищенный URL-адрес песни в формате mp3 (например: http://abcd.com/sample.mp3) и я пытался воспроизвести песню с помощью AVPlayer. Перед публикацией этого вопроса я много искал, но не смог решить проблему . Ниже кода я пробовал и песня не играет. Любые предложения / идеи могут быть очень полезными. Заранее спасибо
Способ 1: ---- Не воспроизводится ни одна песня
let url = URL.init(string: "http://abcd.com/sample.mp3")
var audioplayer : AVPlayer?
let credential = URLCredential(
user: "username",
password: "password",
persistence: .forSession
)
let protectionSpace = URLProtectionSpace(
host: "abcd.com",
port: 443,
protocol: "http",
realm: nil,
authenticationMethod: NSURLAuthenticationMethodHTTPBasic
)
URLCredentialStorage.shared.setDefaultCredential(credential, for: protectionSpace)
let playerItem: AVPlayerItem = AVPlayerItem(url: url!)
audioplayer = AVPlayer(playerItem: playerItem)
audioplayer?.play()
Способ 2: Получение cra * sh на аудиоплеере ? .play () и показывает cra sh как нераспознанный селектор, отправленный на ....
let headers: HTTPHeaders = [
"Username": "username",
"Password": "password"
]
let asset = AVURLAsset(url: URL(string: "http://abcd.com/sample.mp3")!, options: ["AVURLAssetHTTPHeaderFieldsKey": headers])
let playerItem = AVPlayerItem(asset: asset)
audioplayer = AVPlayer(playerItem: playerItem)
audioplayer?.play()