您好,登录后才能下订单哦!
下文主要给大家带来swift下如何实现网络音乐下载与播放,希望这些文字能够带给大家实际用处,这也是我编辑swift下如何实现网络音乐下载与播放这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。
import UIKit
import AVFoundation
class ViewController:UIViewController {
var player=AVAudioPlayer() //========================创建音乐播放器
override func viewDidLoad() {
super.viewDidLoad()
self.onSearch("http://www.douban.com/j/app/radio/channels")//======================================================================================加载豆瓣的频道例子
self.downloadsong("http://music.baidu.com/data/music/file?link=http://yinyueshiting.baidu.com/data2/music/122112390/1201250291408075261128.mp3?xcode=709b8be58036f8a3bd0759b78c6d19683f8882ee658cd7de&song_id=120125029")//====================================================================可以通过字符串拼接得到不同的的id播放不同的歌
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
func playsong(data:NSData)//音乐播放器播放
{
player=AVAudioPlayer(data: data, error:nil)
player.prepareToPlay()
print("xiaziawanle")
player.play()
}
func downloadsong(url:String)//==========================下载歌曲的方法
{
var nsUrl:NSURL=NSURL(string:url)
var request:NSURLRequest=NSURLRequest(URL:nsUrl)
//后面是一个闭包方法
NSURLConnection.sendAsynchronousRequest(request, queue:NSOperationQueue.mainQueue(), completionHandler:
{(response:NSURLResponse!,data:NSData!,error:NSError!)->Voidin
var httpResponse=response as NSHTTPURLResponse
if (true)
{
self.playsong(data)
}
})
}
func onSearch(url:String)//=======================加载频道信息的方法
{
var nsUrl:NSURL=NSURL(string:url)
var request:NSURLRequest=NSURLRequest(URL:nsUrl)
NSURLConnection.sendAsynchronousRequest(request, queue:NSOperationQueue.mainQueue(), completionHandler:
{(response:NSURLResponse!,data:NSData!,error:NSError!)->Voidin
var jsonResult:NSDictionary =NSJSONSerialization.JSONObjectWithData(data, options:NSJSONReadingOptions.MutableContainers, error:nil) as NSDictionary
//========================我的小实验==============================================用于观察字典结构
print(jsonResult["channels"].objectAtIndex(1) )//=============可以用这个观察不同字典的guil
var obj:AnyObject=jsonResult["channels"].objectAtIndex(1)as AnyObject //
print(obj.objectForKey("name"))
var airports: Dictionary<String,String> = ["TYO":"Tokyo", "DUB":"Du,blin"]
print(airports)
//=====================================================
对于以上关于swift下如何实现网络音乐下载与播放,大家是不是觉得非常有帮助。如果需要了解更多内容,请继续关注我们的行业资讯,相信你会喜欢上这些内容的。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。