Audio Session Interruption】的更多相关文章

近期处理了一个挂断电话后,莫名手机开始播放音乐的Bug. 所以顺便在这总结一下,对于IOS的AudioSession中断的几种处理情况. 一.通过C语言的init方法配置interruptionl回调.建议用这种方法,但有些细节需要注意,后续会谈到. AudioSessionInitialize ( NULL, NULL, interruptionListenerCallback, userData ); 然后在回调,实现如下逻辑代码: void interruptionListenerCall…
iOS实现长时间后台的两种方法:Audio session和VOIP socket 十二月 04 我们知道 iOS 开启后台任务后可以获得最多 600 秒的执行时间,而一些需要在后台下载或者与服务器保持连接的 App 是如何突破 600 秒的限制的呢?像网易公开课就可以在后台持续下载,优酷也可以在后台持续缓存,这是怎么做到的呢?一般来说,要实现 iOS 长时间后台运行,需要声明 VOIP.Audio 或 GPS. Audio session 实现方法很简单,就是在后台一直播放一个无声的音乐文件,…
本文转自:AVAudioSession(2):定义一个 Audio Session | www.samirchen.com 本文内容主要来源于 Defining an Audio Session. Audio Session 的默认行为 AVAudioSession 的默认行为如下: 音频播放能力是开启的,但是音频录制能力是关闭的. 当用户通过静音键切换到静音模式时,你的音频会被静音. 当用户通过锁屏键锁定屏幕或者自动锁屏定时触发时,你的音频会被静音. 当你的音频开始播放时,正在播放的其他 Ap…
#pragma mark - #pragma mark - audio session config - (void)setAudioSessionConfig { NSError *error; AVAudioSession *session = [AVAudioSession sharedInstance]; _originalAudioSessionCategory = session.category; if (![session setCategory:AVAudioSessionCa…
本文转自:AVAudioSession(3):定制 Audio Session 的 Category | www.samirchen.com 本文内容主要来源于 Working with Categories. 对于 Audio Session 来说,与之对应的 Category 是阐释其音频行为的关键信息.比如:你的 App 的声音是否应该受到手机的静音键的控制.你的 App 使不使用音频输入或输出.其他音乐能否和你的 Audio 共存播放等等. 每一种 Category 都指定了是否支持下列…
本文转自:AVAudioSession(1):iOS Audio Session 概览 | www.samirchen.com 本文内容主要来源于 Audio Session Programming Guide. Audio Session 概览 在 iOS 系统中,开发者可以通过 AVAudioSession 相关的 API 来处理 App 内部.App 之间以及设备级别的音频行为.比如:你的 App 的声音是否应该受到手机的静音键的控制:当你的 App 的音频开始播放时,其他音乐播放器的声音…
http://www.cocoachina.com/ios/20150615/12119.html…
今天记录一下AVAudioPlayer,这个播放器类苹果提供了一些代理方法,主要用来播放本地音频. 其实也可以用来播放网络音频,只不过是将整个网络文件下载下来而已,在实际开发中会比较耗费流量不做推荐. 下面是相关代码: #import "ViewController.h" //引入框架 #import <AVFoundation/AVFoundation.h> @interface ViewController () <AVAudioPlayerDelegate>…
一. AVAudioPlayer:                          声明音乐控件AVAudioPlayer,必须声明为全局属性变量,否则可能不会播放,AVAudioPlayer只能播放本地音乐 //获取音乐文件路径 NSURL *soundUrl = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:_fileName ofType:@"mp3"]]; if (!_BGMPlayer) { _a…
夜深时动笔 前面一篇文章写了视频播放的几种基本的方式,算是给这个系列开了一个头,这里面最想说和探究的就是AVFoundation框架,很想把这个框架不敢说是完全理解,但至少想把它弄明白它里面到底有什么,这个过程需要一些时间,既然是不明白的东西就得花时间来总结学习.白天工作的时候都要忙着项目的事,只能等晚上或者哪天上班没其他事打扰或者周末去花时间来做这些了,毕业这么些年,有时候还是会想起以前在学校时候,那时候只顾着长身体追求我的女神和电竞梦,其实就是什么都没做成.也真是浪费了太多的时间,要是再有学…