3

iPhone で VOIP アプリケーションを開発していますが、着信音の機能に問題があります。着信音をバックグラウンドと電話ロック状態の両方で再生できるようにしたい。また、呼び出し音は、ネイティブの電話の動作と同様に、iPhone のハードウェア ボタンで消すことができます。
1. ユーザーが画面ロックを押したときに呼び出し音をミュートする必要があります。 2. ミュート ボタンがオンの場合、呼び出し音をミュートする必要があります。

オーディオ セッション カテゴリを再生モードまたはアンビエントに変更しても解決できません。再生カテゴリは、画面ロックとミュート ボタンをサポートできません。アンビエント カテゴリはバックグラウンド オーディオをサポートできません。誰でも助けることができますか?

4

1 に答える 1

2

電話の音量ボタンの変更による音声を無音にするには、以下の通知に登録する必要があります。

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(volumeChangedDuringDisconnectionAlert:) name:@"AVSystemController_SystemVolumeDidChangeNotification" object:nil];

次に、セレクター関数で、アラートをミュートするか、アラートで好きなことを行います。

また、ユーザーが画面のロックを解除したときの音声のサイレンシングについては、ほとんどの場合、アプリ デリゲート内の- (void)applicationWillEnterForeground:(UIApplication *)applicationまたは関数でそれを拾う必要があります。- (void)applicationDidBecomeActive:(UIApplication *)application

ご不明な点がございましたら、お知らせください。

于 2013-01-10T03:06:34.710 に答える