·AVAudioPlayer·使用简单方便,但只能播放本地音频,不支持流媒体播放
·AVPlayer·iOS4.0以后,可以使用AVPlayer播放本地音频和支持流媒体播放,但提供接口较少,处理音频不够灵活·音频队列
·音频队列主要处理流媒体播放,提供了强大且灵活的API接口(C函数的接口),但处理起来也较为复杂
·播放系统声音·音频数据可分为压缩和非压缩的存储类型。压缩的音频文件虽然文件体积较小(相对于非压缩的),但需要耗费处理器的性能进行解压和解码。
·如果音频文件体积较小,压缩后的音频文件,也不会节省较大的磁盘空间。像这一类小型非压缩的文件可以注册成为系统声音·格式为:caf/wav/aiff格式,且时长小于30s
- (void)viewDidLoad {
[super viewDidLoad]
//1.plist文件Required background modes
//App plays audio or streams audio/video using AirPlay
//2.设置后台播放
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil]
//1取得本地音频文件路径
NSString*filePath = [[NSBundle mainBundle] pathForResource:@"安静" ofType:@"mp3"]
NSURL*url = [NSURLfileURLWithPath:filePath]
//创建全局播放器 AVAudioPlayer 只能播放本地音频文件
_audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil]
//2播放流媒体音乐,AVPlayer都支持
//获得网络链接
NSString *str = @"http://ra01.sycdn.kuwo.cn/resource/n3/32/56/3260586875.mp3"
NSURL*url1 = [NSURLURLWithString:str]
_player= [[AVPlayeralloc]initWithURL:url1]
}
//1播放本地音乐
- (IBAction)playLocalMusic:(id)sender {
if(_audioPlayer.isPlaying){
[_audioPlayerpause]
}else{
[_audioPlayerplay]
}
}
//2播放流媒体音乐
- (IBAction)playMusic:(id)sender {
if(_isPlay) {
[_playerpause]
}else{
[_playerplay]
}
_isPlay = !_isPlay
}
//3播放系统声音
- (IBAction)playSystemSound:(id)sender {
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"44th Street Medium.caf" ofType:nil]
NSURL*url = [NSURLfileURLWithPath:filePath]
UInt32 systemSoundID =10
//注册系统声音
AudioServicesCreateSystemSoundID((__bridge CFURLRef)(url), &systemSoundID)
//根据id播放系统声音
AudioServicesPlaySystemSound(systemSoundID)
//设置手机振动
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate)
}
//设置锁屏时界面显示的播放信息
-(void)_initUI{
/* MPMediaItemPropertyAlbumTitle
// MPMediaItemPropertyAlbumTrackCount
// MPMediaItemPropertyAlbumTrackNumber
// MPMediaItemPropertyArtist
// MPMediaItemPropertyArtwork
// MPMediaItemPropertyComposer
// MPMediaItemPropertyDiscCount
// MPMediaItemPropertyDiscNumber
// MPMediaItemPropertyGenre
// MPMediaItemPropertyPersistentID
// MPMediaItemPropertyPlaybackDuration
// MPMediaItemPropertyTitle*/
MPMediaItemArtwork *artWork = [[MPMediaItemArtwork alloc ] initWithImage:[UIImage imageNamed:@"mp3.jpg"]]
NSDictionary *dic = @{
MPMediaItemPropertyAlbumTitle:@"兄弟你变了",
MPMediaItemPropertyArtist:@"庞龙",
MPMediaItemPropertyArtwork: artWork
}
[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:dic]
}
-(BOOL )canBecomeFirstResponder{
return YES
}
-(void)viewWillAppear:(BOOL)animated{
[superviewWillAppear:animated]
[self becomeFirstResponder]
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents]
[self_initUI]
}
-(void)viewWillDisappear:(BOOL)animated{
[superviewWillDisappear:animated]
[self resignFirstResponder]
[[UIApplication sharedApplication] endReceivingRemoteControlEvents]
}
//设置远程监控
-(void)remoteControlReceivedWithEvent:(UIEvent *)event{
if (event.type == UIEventTypeRemoteControl) {
switch(event.subtype) {
case UIEventSubtypeRemoteControlPlay:
[_audioPlayerplay]
NSLog(@"播放")
break
case UIEventSubtypeRemoteControlPause:
[_audioPlayerpause]
NSLog(@"暂停")
break
case UIEventSubtypeRemoteControlNextTrack:
NSLog(@"下一首")
break
case UIEventSubtypeRemoteControlPreviousTrack:
NSLog(@"上一首")
break
default:
break
}
}
}
1.打开手机的文件管理,然后找到后缀为【.iso】的文件。2.点击该文件选择【重命名】。
3.然后我们将文件的后缀格式修改为【zip】。
4.此时我们接收到的源文件就会变成压缩文件类型。
5.那么在点击文件当中的【解压缩到目录下】功能。
6.当文件解压完成后就能够将其打开啦
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)