Seg*_*ero 8 voip pjsip ios uistatusbar in-call
这里有很多问题要求在后台显示红色记录条.很明显我应该使用AVAudioSession类别AVAudioSessionCategoryPlayAndRecord.我的问题是,在我的应用程序中进行有效的VOIP呼叫时,如何在前台应用程序中显示绿色的通话栏(或至少红色条)?所以我可以回到调用UI点击状态栏区域,就像Whatsapp或Skype一样.
我已经尝试过的:
voip在这个SO答案中建议的Info.plist + + audio中的UIBackgroundModes键和模式(在进行背景时给我一个红色状态栏,但在前景时没有任何内容)setCategory:AVAudioSessionCategoryPlayAndRecordsetActiveAVAudioSession+ setMode:AVAudioSessionModeVoiceChat- 没有用kCFStreamNetworkServiceTypeVoIP在pjsip源中将标志设置为套接字并重新编译它 - 没有帮助.此外,自iOS 8以来已弃用.[self.inputStream setProperty:NSStreamNetworkServiceTypeVoIP forKey:NSStreamNetworkServiceType]从这里获取示例代码)使用pjsip进行通话.还有什么可以尝试增加状态栏高度,将所有UI移动?有没有任何标准方法可以做到这一点,或者我应该通过调整根UIWindow并在状态栏下设置另一个绿色UIWindow来自行破解它?
编辑:由于没有找到标准方法的答案,接受@ roman-ermolov答案.对于那些会寻找答案的人,我可以建议您自己做几个选择:
我已经对这两个应用程序(WhatsApp和Skype)进行了调查,并了解到他们使用自己的UIView来实现这一功能.
这是WhatsApp(Reveal无法获得真正的快照,但它传输基本的想法):

在这两个应用程序中,它是一个UIView,它从屏幕顶部开始,有几种格式输出文本/处理触摸的方法.
在iOS 10中,Apple推出了CallKit.framework,但似乎它没有那种功能,所以唯一的方法就是这样做 - 自己动手做.
| 归档时间: |
|
| 查看次数: |
1227 次 |
| 最近记录: |