麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 系統(tǒng) > iOS > 正文

iOS實現(xiàn)鎖屏頁面控制音樂播放

2024-09-11 00:40:44
字體:
供稿:網(wǎng)友

本文實例為大家分享了iOS鎖屏頁面控制音樂播放的具體代碼,供大家參考,具體內(nèi)容如下

//1、調(diào)整音頻會話設(shè)置,確保應(yīng)用進(jìn)入后臺或靜音開關(guān)已開啟時音頻仍將繼續(xù)播放 //2、鎖屏狀態(tài)下顯示媒體信息 //3、鎖屏上的空間可以控制音頻播放#import "ViewController.h"#import <AVFoundation/AVFoundation.h>#import <MediaPlayer/MediaPlayer.h>@interface ViewController ()@property (nonatomic, strong) AVAudioPlayer *audioPlayer;@property (weak, nonatomic) UIButton *playButton;@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; UIButton * playButton = [UIButton buttonWithType:UIButtonTypeSystem]; playButton.frame = CGRectMake(0, 0, 200, 40); playButton.center = self.view.center; [playButton setTitle:@"在后臺播放音頻" forState:UIControlStateNormal]; [playButton addTarget:self action:@selector(playMusicInBackground:) forControlEvents:UIControlEventTouchUpInside]; [self.view addSubview:playButton]; NSError *playerInitError = nil; NSString *audioPath = [[NSBundle mainBundle] pathForResource:@"background_audio"         ofType:@"mp3"]; NSURL *audioURL = [NSURL fileURLWithPath:audioPath]; self.audioPlayer = [[AVAudioPlayer alloc]      initWithContentsOfURL:audioURL      error:&playerInitError]; AVAudioSession *session = [AVAudioSession sharedInstance]; NSError *activeError = nil; if (![session setActive:YES error:&activeError]) {  NSLog(@"Failed to set active audio session!"); } //No.1 //開始寫代碼,調(diào)整音頻會話設(shè)置,確保即便應(yīng)用進(jìn)入后臺或靜音開關(guān)已開啟,音頻仍將繼續(xù)播放 NSError *categoryError = nil; [session setCategory:AVAudioSessionCategoryPlayback error:&categoryError]; //end_code}- (void)playMusicInBackground:(id)sender { if ([self.audioPlayer isPlaying]) {  [self.audioPlayer stop];  [self.playButton setTitle:@"正在播放音樂"       forState:UIControlStateNormal]; } else {  UIImage *lockImage = [UIImage imageNamed:@"belongToMe.jpg"];  MPMediaItemArtwork *artwork =  [[MPMediaItemArtwork alloc] initWithImage:lockImage];  NSDictionary *mediaDict =  @{   MPMediaItemPropertyTitle: @"BackgroundTask Audio",   MPMediaItemPropertyMediaType: @(MPMediaTypeAnyAudio),   MPMediaItemPropertyPlaybackDuration:    @(self.audioPlayer.duration),   MPNowPlayingInfoPropertyPlaybackRate: @1.0,   MPNowPlayingInfoPropertyElapsedPlaybackTime:    @(self.audioPlayer.currentTime),   MPMediaItemPropertyAlbumArtist: @"Some User",   MPMediaItemPropertyArtist: @"Some User",   MPMediaItemPropertyArtwork: artwork };  [self.audioPlayer play];  [self.playButton setTitle:@"停止播放后臺音樂"       forState:UIControlStateNormal];  //No.2  //開始寫代碼,將媒體信息顯示在鎖定屏幕上,并使鎖屏上控件可以控制音頻播放  [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];  //end_code }}//No.3//開始寫代碼,響應(yīng)遠(yuǎn)程控制,使得進(jìn)入鎖屏狀態(tài)后可以控制音樂“播放”和“暫停”- (void) remoteControlReceivedWithEvent: (UIEvent *) receivedEvent { if (receivedEvent.type == UIEventTypeRemoteControl) {  switch (receivedEvent.subtype) {   case UIEventSubtypeRemoteControlPlay:    [self.audioPlayer play];    break;   case UIEventSubtypeRemoteControlPause:    [self.audioPlayer pause];    break;   default:    NSLog(@"沒有處理過這個事件------receivedEvent.subtype==%ld",(long)receivedEvent.subtype);    break;  } }}//end_code- (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning];}@end
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 91精品国产综合久久久动漫日韩 | 免费久久久 | 欧美综合在线观看 | 国产欧美亚洲精品 | 91福利社在线 | 国产一国产精品一级毛片 | 今井夏帆av一区二区 | 久久久久久久一区二区三区 | 日本视频网| 男女污视频在线观看 | 欧美精品一区二区性色 | 国产美女视频黄a视频免费 日韩黄色在线播放 | av影院在线播放 | 成人在线视频黄色 | 欧美精品欧美 | 亚洲一区二区 | 97视频一二区 | 国产午夜精品一区二区三区视频 | 免费看成人av | 国产精品视频一区二区噜噜 | 小视频免费在线观看 | 黄色7777| 久久影库 | 久久在线精品视频 | 成人性生活视频在线观看 | 草草视频免费观看 | 精品国产一区二区三区久久久蜜月 | 成人在线视频免费观看 | 久久久精品视 | 亚洲第一页中文字幕 | 亚洲欧美日韩一区二区三区在线观看 | 四季久久免费一区二区三区四区 | 日本娇小18xxxⅹhd | 成人在线97 | 日本免费不卡一区二区 | 91精品国产乱码久久桃 | 成人在线视频免费 | 欧美精品久久久久久久多人混战 | 理论片中文字幕 | 国产精品亚洲精品日韩已方 | 欧美特一级 |