从一个月前开始开始接收公司的直播类app.到今天为止测试都已接近尾声,但是产品哥哥加了一个要求,就是在app进入后台后也实时保证录音并且推流.
刚听到这个的时候我也是懵逼的,可是冷静下来找资料,还是有所收获的,在此分享一下.
对于我们的app要求后台也实时录音并推流主要要注意两点:
保证app进入后台后实时录音 保证app进入后台后实时推流
1.设置应用为voip应用
打开-info.plist文件,加入如下的key
Required background modes,追加
//保证app进入后台后实时录音 App plays audio or streams audio/video using AirPlay //保证app进入后台后实时推流 App provides Voice over IP services
2.将socket设置成异步模式,并将socket设置成VOIP类的,以便系统能够托管它。
CFStreamCreatePairWithSocket(NULL, (CFSocketNativeHandle)(mosq->sock), &readStream, NULL); //保证不关闭原来的socket CFReadStreamSetProperty(readStream, kCFStreamPropertyShouldCloseNativeSocket, kCFBooleanFalse); //设置成voip socket CFReadStreamSetProperty(readStream, kCFStreamNetworkServiceType, kCFStreamNetworkServiceTypeVoIP);
3.安装keepAliveTimeout handler,让系统每隔一段时间重新建立连接
UIApplication *application = [UIApplication sharedApplication]; [application setKeepAliveTimeout:600 handler:^{ [self reconnect]; }];
到这里command + R 运行程序,开始直播然后将app切入后台会发现屏幕顶部会有一条红色条,然后用播放器播放会发现录音与推流成功.
(责任编辑:幽灵学院)
转自iOS 直播-实现后台录音并推流
iOS 直播-实现后台录音并推流
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 苹果官网地址 Background Execution (后台执行)当用于没有-启动应用,系统移到后台状态。对于很...
- “恩美!恩美!恩美!” 恩美刚从电梯出来,走到走廊,就听见对面老胡在喊自己。 “恩美,你终于来啦,我等你等的好辛苦...