重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
下文主要给大家带来swift下如何实现网络音乐下载与播放,希望这些文字能够带给大家实际用处,这也是我编辑swift下如何实现网络音乐下载与播放这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。
成都服务器托管,创新互联公司提供包括服务器租用、联通服务器托管、带宽租用、云主机、机柜租用、主机租用托管、CDN网站加速、域名注册等业务的一体化完整服务。电话咨询:18982081108import 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
print(airports)
//=====================================================
对于以上关于swift下如何实现网络音乐下载与播放,大家是不是觉得非常有帮助。如果需要了解更多内容,请继续关注我们的行业资讯,相信你会喜欢上这些内容的。
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。