Is there a standard way to invoke a custom in-call/double-height status bar? If not, where's the best place to start in building my own functionality. I know there are a few years-old questions regarding how to do this, but there aren't any satisfying answers. Is there any new way to do this? (Possibly in iOS 8)
-
Possible duplicate of [Showing in-call status bar (double height) for a custom VoIP app in iOS](http://stackoverflow.com/questions/37571066/showing-in-call-status-bar-double-height-for-a-custom-voip-app-in-ios) – Teepeemm Jun 02 '16 at 18:55
2 Answers
There's nothing new here, but I'm not finding good past answers to dupe to, so...
Are you looking to test your app's layout under double-height status bar conditions (e.g. during a call or navigation)? Use the Simulator and go to Hardware → Toggle In-Call Status Bar ⌘Y in the menu bar, just like it's always been.
Are you looking to do some background activity that causes a double-height status bar to appear? In that case, the status bar is provided by the system in response to you performing certain activities:
Recording: Set the
UIBackgroundModes
→audio
key in your app's Info.plist. Then, set theAVAudioSessionCategoryRecord
orAVAudioSessionCategoryPlayAndRecord
category on your audio session when you want to record audio.VoIP: Also et the
UIBackgroundModes
→voip
key in your app's Info.plist. Then, set theAVAudioSessionCategoryPlayAndRecord
category on your audio session when you want to make a call.
The system determines what gets displayed on the status bar, and the App Store generally doesn't accept apps that use the status-bar-displaying background modes for something other than their prescribed purpose.

- 124,678
- 26
- 272
- 326
-
@rickster is there any way to display green in-call statusbar when foreground on a device? – Sega-Zero Aug 01 '16 at 22:08
The red banner outside the app is created by iOS. To create the green in-call banner whilst inside the app, there is no inbuilt functionality for that, you will need to create your own.
I asked & answered a similar question here
Basically iOS has no inbuilt functionality to display an in-app status bar, you need to create your own. @cjensen's response led me to this article explaining this.
If you need an in-app call status bar, you need to create it yourself or use a library like KrauseFx's TSMessages to do it for you. Using a
UILocalNotification
as @cjensen suggested is simply one way to provide an entry point to decide when to create this banner.
-
It's better to flag this question as a duplicate of that one instead of reposting your answer. – Teepeemm Jun 02 '16 at 18:54
-