0

私はavaudioplayerでアプリを開発していますが、それは完全に機能しますが、私の問題は、iPhoneのバイブレーションモードでアプリを開く場合、avaudioplayerが秒より少し短い時間でオーディオを再生する場合、バイブレーションモードでavaudioplayerサウンドを再生したくないことです。

これが私のコードです:

- (void)viewDidLoad
{
    audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL
                                                                fileURLWithPath:[[NSBundle mainBundle] 
                                                                                 pathForResource:@"audio" ofType:@"mp3"]] error:NULL]; 

    audioPlayer.numberOfLoops =-1;
    audioPlayer.delegate = self;
    audioPlayer.currentTime=0.0f;
    [audioPlayer prepareToPlay];
    [audioPlayer Play]; 

}

誰か助けてくれませんか..!

ありがとう..!

4

1 に答える 1

2

試す:

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryAmbient error: nil];

Apple Docs に記載されているように:

AVAudioSessionCategoryAmbient

サウンドの再生が主要でないアプリの場合、つまり、アプリはサウンドをオフにしても正常に使用できます。このカテゴリは、ユーザーが iPod オーディオで演奏する仮想ピアノなど、「一緒に演奏する」スタイルのアプリにも適しています。このカテゴリを使用すると、他のアプリからのオーディオがオーディオとミックスされます。音声は、画面ロックとサイレント スイッチ (iPhone ではリング/サイレント スイッチと呼ばれます) によって消音されます。

あなたが具体的に探しているものでなければなりません。

画面のロックとサイレント スイッチ (iPhone ではリング/サイレント スイッチと呼ばれます) によって音声がミュートされます。

于 2012-06-09T09:33:03.013 に答える