iOS 音乐 锁屏显示 控制
1 APPDelegate.m 文件中 设置接收外部控制
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {//锁屏控制*********/[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];}
2 设置可以第一响应者
-(BOOL)canBecomeFirstResponder{return YES;
}
//具体的事件接收逻辑控制,这里的<span style="font-family: Arial, Helvetica, sans-serif;">PlayerViewController是自定义的播放类</span>
-(void)remoteControlReceivedWithEvent:(UIEvent *)event{PlayerViewController *player = [PlayerViewController sharedManager];switch (event.subtype) {case UIEventSubtypeRemoteControlTogglePlayPause:if ([player.mMPayer isPlaying]) {[player.mMPayer pause];} else {[player.mMPayer start];}break;case UIEventSubtypeRemoteControlPlay:[player.mMPayer start];break;case UIEventSubtypeRemoteControlPause:[player.mMPayer pause];break;case UIEventSubtypeRemoteControlPreviousTrack:if ([player.mMPayer isPlaying]) {[player.mMPayer pause];}[player playNextMusicOrPre:YES];break;case UIEventSubtypeRemoteControlNextTrack:if ([player.mMPayer isPlaying]) {[player.mMPayer pause];}[player playNextMusicOrPre:NO];break;default:break;}}
3 在自定义的播放类 PlayerViewController中 播发某个音乐时对 调用自定义的 [self configNowPlayingInfoCenter]方法 对 锁屏的内容进行填充 首先导入 #import <MediaPlayer/MediaPlayer.h>
一般的第三方播放器 也是基于ios框架进行二次封装 所以使用 MediaPlayer类中方法什么的也是妥妥的
-(void)configNowPlayingInfoCenter{if (NSClassFromString(@"MPNowPlayingInfoCenter")) {NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];[dict setObject:@"story_name" forKey:MPMediaItemPropertyTitle]; //名字[dict setObject:@"catelog_name" forKey:MPMediaItemPropertyArtist]; //作者//[dict setObject:@"album" forKey:MPMediaItemPropertyAlbumTitle]; //专辑[dict setObject:[NSNumber numberWithInteger:mDuration/1000] forKey:MPMediaItemPropertyPlaybackDuration]; //传入总时间 就会自动刷新进度条 (单位 秒)MPMediaItemArtwork *artwork = [[MPMediaItemArtwork alloc] initWithImage:imageViewIcon.image]; //显示的图片[dict setObject:artwork forKey:MPMediaItemPropertyArtwork];[[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:dict]; //填充}
}
3步妥妥的
iOS 音乐 锁屏显示 控制相关推荐
- android 锁屏显示音乐播放器,Android锁屏界面控制音乐播放
目前,在锁屏界面控制音乐播放有两种常用方式. 第一种方式:原生Android系统及自带音乐播放器. 锁屏界面端: 原生Android中,锁屏界面相关的UI由KeyguardHostView提供,Key ...
- iOS 关于音乐锁屏控制音乐(锁屏信息设置)
appDelegate里面加入如下代码获取后台播放权限 - (void)setAudioBackstagePlay{AVAudioSession *audioSession = [AVAudioSes ...
- 网易云音乐等三方app如何在锁屏显示
这里我本来准备反编译一下网易云音乐,但是发现github上有一个仿照网易云音乐的开源项目,参考自 https://github.com/aa112901/remusic ,其他的应用在锁屏上显示的原理 ...
- iphone QQ音乐锁屏歌词实现思路
先用户之所想 亚德里安.斯莱沃斯基在<需求>一书提到,真正的需求并不是用户明确提出的,用语言表述的部分.这些部分你看得见,你的竞争对手也同样看得见,只抓住看得见的部分,你就已经陷入红海了. ...
- bugku 管理员系统 后台代码_不会吧,这也行?iOS后台锁屏监听摇一摇
[toc] 背景介绍 一般情况下,出于省电.权限.合理性等因素考虑,给人的感觉是很多奇怪的需求安卓可以实现,但是iOS就无法实现!今天要介绍的需求也有这种感觉,就是"当 APP 处于后台或锁 ...
- oppo关闭网易云音乐锁屏小窗口
oppo关闭网易云音乐锁屏小窗口 第一个 第二个 第三个(省流) 在设置中打开通知与状态栏,关闭媒体播放卡片 关闭网易云锁屏显示 在设置中关闭锁屏 好了,你锁屏试试. 这个困扰我多年的东西终于关掉了, ...
- 苹果手机输入屏保后锁屏_iPhone丢失后锁屏显示你的联系方式方法教程
IfFound:iPhone丢失后锁屏显示你的联系方式.在公司.校园等某个角落,你捡到了一台iPhone,可是锁屏着,不知道密码,如何才能找到失主呢?IfFound它可以帮助失主在iPhone锁屏界面 ...
- 苹果天气不显示_手机锁屏显示天气预报可不只安卓有,iPhone也能显示!太实用了吧...
可能很多朋友现在使用的是iPhone,以前却是安卓,那么可能就会有这样的一些抱怨,安卓手机上有的锁屏显示天气功能为什么苹果手机没有?在这里笔者想给大家解答一下,其实iPhone是有这个功能的,只不过因 ...
- android11锁屏显示天气,手机锁屏显示天气预报可不只安卓有,iPhone也能显示!太实用了吧...
原标题:手机锁屏显示天气预报可不只安卓有,iPhone也能显示!太实用了吧 可能很多朋友现在使用的是iPhone,以前却是安卓,那么可能就会有这样的一些抱怨,安卓手机上有的锁屏显示天气功能为什么苹果手 ...
最新文章
- win10计算机无法启动mfc7450,解决联想M7650,7600,M7450,7400驱动WIN10系统下不能用固件...
- 如何处理跨平台的自适应三
- 全国计算机一级wps网络,全国计算机一级《WPS》考试试题及答案
- 网易云信新增用户、IM、实时音视频多维度统计功能
- 探秘 | 平安人寿人工智能研发团队北京研发中心
- ObjectInputStream和ObejctOutputStream
- git 分支推送项目
- ssl1626-花店橱窗布置【日常dp】
- 取消文件与svn服务器的关联
- 浅谈算法和数据结构: 四 快速排序
- 编译原理 第三章 上下文无关文法与语法分析
- 七、项目沟通管理(输入/工具与技术/输出)
- sql server order by 的一些高级用法
- “绿多多”公益+冠军链盟+关羽斩醛:良设板与“空间优造”的无醛与环保之路
- 简单易懂的英语学习思维导图(学习篇)
- 【css实现3D旋转卡片】
- unity 3D物体添加 点击事件
- 大数据知识点总结笔记
- 二年级的女儿用计算机算算术,二年级数学 | 关于计算,学而思老师这样说...
- Flutter高仿微信-第46篇-群聊-表情