在iOS 8中创build通话/双高度状态栏?

有一个标准的方式来调用一个自定义的通话/双高度状态栏? 如果不是的话,build立我自己的function最好的地方在哪里。 我知道如何做到这一点有几年的问题,但没有任何令人满意的答案。 有没有新的方法来做到这一点? (可能在iOS 8中)

这里没有什么新东西,但我没有find好的过去答案,所以…

您是否想在双高度状态栏条件下(例如在通话或导航期间)testing应用的布局? 使用模拟器,并转到菜单栏中的Hardware→Toggle In-Call Status Bar⌘Y ,就像以前一样。

你正在寻找一些后台活动,导致一个双高度状态栏出现? 在这种情况下,系统为响应您执行某些活动而提供状态栏:

  • 录音:在应用程序的Info.plist中设置UIBackgroundModesaudio键。 然后,当您要录制audio时,在您的audio会话中设置AVAudioSessionCategoryRecordAVAudioSessionCategoryPlayAndRecord类别。

  • VoIP:也可以在应用程序的Info.plist中查看UIBackgroundModesvoip键。 然后,当您要拨打电话时,在您的audio会议上设置AVAudioSessionCategoryPlayAndRecord类别。

系统决定在状态栏上显示的内容,App Store通常不接受使用状态栏显示背景模式的应用程序,而不是用于指定的目的。

应用程序外部的红色横幅由iOS创build。 要在应用程序内部创build绿色通话横幅,没有内置的function,您将需要创build自己的。

我在这里问及回答了一个类似的问题

基本上iOS没有内置的function来显示一个应用程序内状态栏,你需要创build自己的。 @ cjensen的回应让我对这篇文章进行了解释。

如果你需要一个应用内通话状态栏,你需要自己创build它,或者使用像KrauseFx的TSMessages这样的库来为你做。 build议使用UILocalNotification提供的UILocalNotification只是提供决定何时创build此横幅的入口点的一种方法。