2012-02-20 14 views

答えて

0

これらは私が文書で見つかったすべてのアクセシビリティブール値です:

UIAccessibilityPostNotification 
UIAccessibilityIsVoiceOverRunning 
UIAccessibilityIsMonoAudioEnabled 
UIAccessibilityIsClosedCaptioningEnabled 
UIAccessibilityRegisterGestureConflictWithZoom 

私はあなたが話している何をすべきかいずれかのブール値があるとは思いません。

+0

現在リリースされているiOS(iOS 5.xなど)では、VoiceOverの通話が停止すると通知されません。 –

0

オーディオセッションの "OtherAudioIsPlaying"プロパティを使用して、別のシステムプロセスが現在オーディオハードウェアを使用しているかどうかを確認できます。 VoiceOverが話している場合は「true」、そうでない場合は「false」になります。

実際には、ユーザーがバックグラウンドで音楽を再生している場合、正しく動作しないことがあります。 VoiceOverを実行しているほとんどのユーザーは、VoiceOverが何を言っているのかを理解することが難しくなるため、他のオーディオは永久に有効になりません。ここで

は、使用方法の例です:

UInt32 otherAudioIsPlaying; 
UInt32 propertySize = sizeof(otherAudioIsPlaying); 

AudioSessionGetProperty(kAudioSessionProperty_OtherAudioIsPlaying,&propertySize, &otherAudioIsPlaying); 

if(otherAudioIsPlaying) { 
    // other application is generating sound output (including VoiceOver) 
    // but might also be any other app (like iPod App) 
} 
1

我々はotherAudioIsPlayingを使用し、問題がなど、いくつかの歩数計のモニターのような背景の中、いくつかのアプリの実行は、それが思わオーディオをオンにしていてもそれを解放することはありません何も実際に話されているか再生されていませんotherAudioIsPlayingは、バックグラウンドから他のアプリケーションを削除するまで常に1を返します。今では音楽を演奏できないだけでなく、バ​​ックグラウンドの別のアプリケーションがこのテストを台無しにすることは考えられません。ボイスオーバーが現在話しているかどうかを判断するために、Appleは実際にAPIを導入する必要があります。

関連する問題