0

そのため、私が見つけることができるSOに関する関連する質問のほとんどをすでに行ってきましたが、サイレント中にオーディオを再生することはできません。おそらく私が犯している小さなエラーだと思います。

小さな警告音を鳴らそうとしています。これは私のviewDidLoadメソッドのコードです:

AudioSessionInitialize (NULL, NULL, NULL, NULL);
AudioSessionSetActive(true);

そして、オーディオクリップを再生する必要があるときに呼び出すメソッドは次のとおりです

-(void)playAudioClip:(CFStringRef)clip{

CFBundleRef mainBundle = CFBundleGetMainBundle();
CFURLRef soundFile = CFBundleCopyResourceURL(mainBundle, clip, CFSTR("wav"), NULL);

//Supposed to make sound playable even when silent right?
UInt32 soundType = kAudioSessionCategory_MediaPlayback; 
UInt32 soundID;

AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(soundType), &soundType);
AudioServicesCreateSystemSoundID(soundFile, &soundID);
AudioServicesPlaySystmSound(soundID);
}

私はこれのほとんどを SO から取得し、Apple のプログラミング ガイドで確認しました。私はすでに両方の使用のために を組み合わせてみUint32ましたが、これも何もしませんでした.ロック/サイレントモードではまだ再生されません. 何か案は?

4

1 に答える 1

1

サイレント モードでは、システム サウンドは再生されません。(名前が示すように) サイレント中にオーディオを再生する必要がある場合は、メディア プレーヤーやその他のオーディオ メソッドなどの別の方法を使用する必要があります。Apple の音楽再生の例を見てください。

于 2012-05-24T17:52:38.430 に答える