是否有一种标准的方式来调用自定义的通话/双高状态栏?如果没有,那么开始构建我自己的功能的最佳位置。我知道有关于如何做到这一点有几年的问题,但没有任何令人满意的答案。有没有新的方法来做到这一点? (可能在iOS 8中)
答案 0 :(得分:3)
这里没什么新东西,但是我找不到好的过去的答案,所以...
您是否希望在双倍高度状态栏条件下测试应用的布局(例如在通话或导航期间)?使用模拟器并转到菜单栏中的硬件→切换呼叫状态栏⌘Y,就像它一直以来一样。
您是否希望进行一些导致双高状态栏出现的背景活动?在这种情况下,状态栏由系统提供,以响应您执行某些活动:
录制:在应用的Info.plist中设置UIBackgroundModes
→audio
键。然后,当您要录制音频时,请在音频会话中设置AVAudioSessionCategoryRecord
或AVAudioSessionCategoryPlayAndRecord
类别。
VoIP:还有您应用的Info.plist中的UIBackgroundModes
→voip
键。然后,当您要拨打电话时,在音频会话中设置AVAudioSessionCategoryPlayAndRecord
类别。
系统会确定状态栏上显示的内容,并且App Store通常不会接受使用状态栏显示背景模式的应用程序,而不是指定目的。
答案 1 :(得分:0)
应用程序外的红色横幅由iOS创建。要在应用内部创建绿色通话中横幅,没有内置功能,您需要创建自己的功能。
我问过&回答了类似的问题here
iOS基本上没有内置功能来显示应用内状态 吧,你需要创建自己的。 @ cjensen的回应引领我 this 文章解释了这个。
如果您需要应用内呼叫状态栏,则需要自行创建 或使用像KrauseFx这样的库 TSMessages为你做这件事。 使用
UILocalNotification
作为@cjensen建议只是一种方法 提供一个入口点来决定何时来创建这个横幅。