swift下实现网络音乐下载与播放(最通俗易懂源代码)

//

//  ViewController.swift

//  网络歌曲播放

//

//  Created by xx良 on 14-8-16.

//  Copyright (c) 2014年 xx良. All rights reserved.

//这是我两天学习网络播放器项目的时候,总结和整理出来的代码,以后想要实现类似的功能,可以拿来就用

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)

//=====================================================

})

}

}

时间: 2024-10-07 05:50:24

swift下实现网络音乐下载与播放(最通俗易懂源代码)的相关文章

Android开发本地及网络Mp3音乐播放器(十四)网络音乐下载功能实现

实现功能: 实现网络音乐搜索功能 实现网络音乐下载功能 下载好的音乐目前不在播放器内,可以通过文件浏览器查看. 后续将博文,将实现歌词和下载音乐扫描功能. 经过将近4天,才发布这一篇博客,明显更新博客速度变慢了,因为没有自己的音乐服务器,网络上的音乐网站在这边博客发表的2016年5月已经很难找到免费且在线下载的了,就算找到解析也是一个难题.如果你在练习同样功能的Demo,请尽快下载练习,因为博主也无法保证我Demo下载功能时效性,因为我解析的音乐网站可能分分钟修改网页源码!!! 截止到目前的源码

Android开发本地及网络Mp3音乐播放器(十五)网络音乐及歌词下载功能实现

实现功能: 实现网络音乐歌词下载功能(下载音乐的同时,下载对应歌词) 下载好的歌词目前不在播放器内,可以通过文件浏览器查看. 后续将博文,将实现本地音乐歌词下载和已下载音乐扫描功能. 因为,没有自己的服务器,所以网络音乐所有相关功能(包含搜索音乐.下载音乐.下载歌词)均无法保证时效性,建议,尽快下载和练习:如果你下载时候,已经因为我采集的服务器更改规则,请给我留言,如果可以解决,我将在有空的时候献上新的源码. 截止到目前的源码下载: http://download.csdn.net/album/

不做播放器改玩社交 网络音乐又捞到救命稻草了?

网络音乐10余年,一直难以盈利的问题,以及每年总要爆出一两次免费下载音乐将被终结的传闻,都说明了业界对盈利的渴望和迷惑.而现在,玩社交似乎成了他们新的救命稻草. 文/张书乐 刊载于<中国文化报>网络文化版8月7日,原标题<网络音乐:从做播放器向社交突围> 7月中旬,网易云音乐对外宣布用户数突破一亿,距离其2013年4月23日首次发布,历时约两年三个月.在这个云音乐清单里,还包含有超过1200位入驻明星,500万首收录音乐.但这并不是网易最引以为傲的,云音乐的真正卖点,其实是其超过6

AVPlayer播放网络音乐

AVPlayer播放网络音乐 作者 Wy_chris 关注 2016.09.23 17:23* 字数 411 阅读 355评论 6喜欢 6 下载地址:AVPlayer播放网络音乐 音乐播放并展示到界面上需要我们实现的功能如下: 1.(核心)播放器通过一个网络链接播放音乐2.(基本)播放器的常用操作:暂停.播放.上一首.下一首等等3.(基本)监听该音乐的播放进度.获取音乐的总时间.当前播放时间4.(基本)监听改播放器状态:?????(1)媒体加载状态?????(2)数据缓冲状态?????(3)播放

Android开发本地及网络Mp3音乐播放器(十二)创建NetMusicListAdapter、SearchResult显示网络音乐列表

实现功能: 实现NetMusicListAdapter(网络音乐列表适配器) 实现SearchResult(搜索音乐对象) 使用Jsoup组件请求网络,并解析音乐数据,并,音乐数据加载到列表中 实现FooterView 截止到目前的源码下载: http://download.csdn.net/detail/iwanghang/9507635 Jsoup组件导入: AndroidStudio简单快速导入GitHub中的第三方组件 : http://blog.csdn.net/iwanghang/a

Android开发本地及网络Mp3音乐播放器(十三)网络音乐搜索功能实现,歌名歌手专辑名搜索

实现功能: 实现网络音乐搜索功能 使用观察者设计模式 使用URLEncoder.encode转码 SearchMusicUtils是重点 截止到目前的源码下载: http://download.csdn.net/detail/iwanghang/9507635 欢迎移动开发爱好者交流:我的微信是iwanghang 另外,我打算开始找工作,如果沈阳或周边城市公司有意,也请与我联系. 实现效果如图: 实现代码如下: NetMusicListFragment如下: package com.iwangh

iOS音频篇:使用AVPlayer播放网络音乐

引言 假如你现在打算做一个类似百度音乐.豆瓣电台的在线音乐类APP,你会怎样做? 首先了解一下音频播放的实现级别:(1) 离线播放:这里并不是指应用不联网,而是指播放本地音频文件,包括先下完完成音频文件再进行播放的情况,这种使用AVFoundation里的AVAudioPlayer可以满足(2) 在线播放:使用AVFoundation的AVPlayer可以满足(3) 在线播放同时存储文件:使用AudioFileStreamer + AudioQueue 可以满足(4) 在线播放且带有音效处理:使

网络音乐播放

1.权限 <uses-permission android:name="android.permission.INTERNET"/> 2.代码 播放: new Thread(){ public void run(){ mediaPlayer=MediaPlayer.create(MainActivity.this, Uri.parse(wangZhi)); try{ URL myURL=new URL(wangZhi); URLConnection conn=myURL.o

SongTaste闭站谢客 网络音乐731大限已至

7月20日,知名音乐分享网站SongTaste在页面上贴出了关闭告示--"在这里,我们很遗憾地宣布:SongTaste为尊重音乐版权,会在一个星期后关闭音乐板块",同时提醒用户转移重要数据.8月2日,虾米音乐在酷狗声称拥有版权的作品中,显示"所属专辑下架,暂时不能试听",而张惠妹的<趁早>.<听海>则依然可以试听和下载. 7月8日,国家版权局下发了<关于责令网络音乐服务商停止未经授权传播音乐作品的通知>,要求各音乐网站.APP于7