バックグラウンドで赤い録音バーを表示することについては、ここで多くの質問があります。それは完全に私はAVAudioSession
カテゴリAVAudioSessionCategoryPlayAndRecord
を使用する必要があります明確です。私の質問は、アプリケーションでアクティブなVOIPコールを持っているときに、フォアグラウンドアプリに緑色のIn-Callバー(または少なくとも赤いバー)を表示するにはどうすればいいですか?そこで、WhatsappやSkypeのように、ステータスバー領域をタップするUIに戻ることができました。デバイス上のフォアグラウンドアプリで、高さが緑色のステータスバー(In-Call)を表示するにはどうすればよいですか?
voip
とaudio
モードのInfo.plist +setCategory:AVAudioSessionCategoryPlayAndRecord
+背景を行くときin this SO answer(私に赤いステータスバーを与えることを示唆としてsetActive
、何もでUIBackgroundModes
キーでフォアグラウンドでいる間:私はすでに試した何)
- 前+ +
setMode:AVAudioSessionModeVoiceChat
AVAudioSession
- 助けにはならなかった - - がPJSIP源にソケットに
kCFStreamNetworkServiceTypeVoIP
フラグを設定し、それを再コンパイル動作しませんでした。コールにPJSIPを使用
(hereからのサンプルコードを取った)[self.inputStream setProperty:NSStreamNetworkServiceTypeVoIP forKey:NSStreamNetworkServiceType]
:また、IOSの8
編集: 一切答えはローマン・ermolovの答え@受け入れ、それを行うための標準的な方法が見つかりませんので。私はそれを自分で行うにはいくつかのオプションを提案することができる答えを検索する人のために:
- Apple's iAdSuite with Storyboards exampleのように、容器内のルートのViewControllerを包みます。例えば、sample projectを見てください。おそらくそのバーを作る最善の方法。
- ハックUINavigationBarの高さ(thisアプローチを参照してください) - まだ景観のために動作しませんが、おそらく
- コントロールメインのUIWindowのフレームを解決することができる、自分自身、所望のコンテンツにステータスバーの下に別のUIWindowを置きます。
私の回答が役に立ちましたか、実装の詳細をお探しですか?もしそうなら、あなたの要件に関する追加情報を提供してもらえますか? –
非常に助かりました。ありがとうございました。私はまだインコールバーをオンにするシステム方法があれば、それが望む。誰もこれを見つけなければ、私はあなたの答えを受け入れるでしょう –