4

サウンドを再生するために使用するアプリを作成していますAVAudioPlayersが、サウンドを絶対最大音量で再生する必要があります。はい、 の相対的な音量を設定できますがAVAudioPlayer、ユーザーがデバイスの音量を下げている場合でも、サウンドは静かに再生されます。

Apple がデバイスの音量を上書きできないと言っているのは知っていますが、目覚まし時計アプリは何とかこれを行うことができるので、方法があるに違いありません。

これは、次の呼び出しを使用して Audio Queues を使用して実行できると思います。

AudioQueueSetParameter(aq, kAudioQueueParam_Volume, 1.0);

しかし、私のコードAVAudioPlayerはサウンドを再生するために を使用する必要があるため、このアプローチは役に立たないと思います。

文書化されていない の関数を使用してMPVolumeViewこれを実現する方法もありますが、この方法を使用したアプリが既に拒否されているようです。

他のアイデアはありますか?

4

2 に答える 2

6

このサイトの匿名さんからのコメント:

float volume;
[[MPMusicPlayerController applicationMusicPlayer] setVolume:volume];

実際に動作します。

于 2011-02-02T01:14:43.837 に答える
0

私はこれに出くわしました:

 MPVolumeView *volumeView1 = [[MPVolumeView alloc] initWithFrame:CGRectMake(4, 316, sk.size.width, sk.size.height)]; 
[volumeView1 sizeToFit]; 
[self.view addSubview:volumeView1]; 
[volumeView1 release]; 

うまくいくかどうかは完全にはわかりませんが、うまくいくと信じています。高さと幅を変更する必要があるようです

于 2010-03-06T16:16:54.310 に答える