ユーザーのサイレント/ミュートスイッチがサイレント/バイブレーションに設定されていても、アプリケーションに音声を再生させる「正しい」方法とは何ですか?iOS:サイレントモードでオーディオを再生する
背景: 私は実際にデバッグ段階で動作していましたが、Appleにアプリケーションを提出してから、後でアプリケーションストアからダウンロードしたとき、音声はサイレントモードで無効になりました!ここで私はそれがデバッグ段階で働いて得た方法である:オーディオを使用して演奏された
UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory,
sizeof(sessionCategory), &sessionCategory);
:
NSString *path = [[NSBundle mainBundle] pathForResource:fileName ofType:@"mp3"];
AVAudioPlayer *theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
なぜ、ユーザーが聞きたくないときにアプリを再生したいのですか?あなたはこれがあなたのユーザーが望むものだと確信していますか? – Hyperbole
私は、「あなたはサイレントモードではオーディオを再生してはいけない」というルールがあることを知っていますが、私のアプリは例外的なものです。音を聞くことを期待し、何も得られず、静かなスイッチが無音に設定されていることを認識していないユーザーから実際に来るでしょう。 – user1221973
おそらく、ミュート状態を検出し、デバイスのミュートを解除するまで、音が聞こえないことをユーザーに知らせることができます。とにかくAppleのHIGと一線を画している。 – Hyperbole