IPhoneシミュレーターでサウンドをオフにするオプションはありますか?または音量を調整するには?
IPhone Simulatorは、起動時に現在選択されている出力を選択します。 Soundflowerプラグインを使用してオーディオをどこにも送信しないで、iPhoneシミュレーターを起動しました。その後、別の動作中の出力に切り替えると、シミュレーターを再起動するまで、シミュレーターは「ミュート」されたままになります。したがって、一般的に、シミュレータをだまして行き止まり出力に出力するように試みることができます。
私はこの問題の解決に取り組んでおり、最初のステップとしてデモンストレーションビデオプレーヤーアプリを作成しました。独自の実験のためにGitHubから VideoPlayer をダウンロードできます。
Rogue Amoebaの Audio Hijack Pro を使用して、オーディオストリームをハイジャックしてミュートしてみました。これは機能せず、シミュレーターをクラッシュさせます。サポートに連絡し、彼らはiPhoneシミュレーターがオーディオの乗っ取りを防ぐいくつかのことをしていると報告しました。 Soundflower と Jack も調べました。
私は多分あなたがアプリとシミュレータのサウンドがミュートされるデバッグオプションを作ることができると思っていました。ただし、アプリ内では、プライベートAPIのみがデバイスの音量をミュートまたは削減することができます。本の中で iPhone Open Application Development 第6章、例「What's My Volume」では、AVSystemControllerを介してシステム全体のサウンドを操作するためのサンプルコードを示しています。このルートを探索するのは楽しいかもしれませんが、兵器化されたツールは、プライベートヘッダーに対してコンパイルする必要があるため、多くのトラブルを必要とします。
サウンドをミュートするSpringboardまたはiPhoneシミュレーターに渡すコマンドラインオプションを見つけるか、シミュレーター内でボリュームコントロールを再度有効にします。もちろん、デバッガーを起動することもできます。
私は Apple Bug Report iPhone Simulatorボリュームコントロール、リクエスト13428429、およびMac OS Xのアプリケーションごとのボリュームコントロールの両方の機能強化リクエストを提出しました。これらの機能が必要な場合は、独自のバグを報告してください。
IOSシミュレーターを開き、ミュートされるまで[ハードウェア]> [音量を下げる](ted↓)を押します。 Xcode 9.2で追加されたと思います。iOS11以降でsimを実行している場合にのみ使用できます。
私はこれに遭遇しました-私の(動作している)音楽オーディオが私のヘッドフォンに到達する前にiOSシミュレーターを介してルーティングされていたため、音楽は小さくて低品質になりました。これはシムでの開発を本当に煩わしくしました。幸いなことに、簡単な修正があります。
次のようなものを使用できます...
#if DEBUG
[ myAudioController setVolume: .1 ];
#endif
この方法でテストすると、アプリの音量が小さくなります。
1) Loopback アプリをダウンロードします
2)ループバックで、新しい仮想オーディオデバイスを作成します(New virtual device
をクリックします)。必要に応じて名前を変更します(私はBlackhole
と名付けました)。
3)SimulatorでHardware > Audio output
をクリックし、作成した仮想オーディオデバイスの名前を選択します。
参照元: iOSシミュレータサウンド
システムサウンド設定では、入力デバイスと出力デバイスの両方がほぼ一致しています。多くの場合、それらは異なるデバイスに設定されています。それらが一致しない場合、シミュレータはデフォルトで、入力デバイスと出力デバイスの中で選択された最後に接続されたオーディオデバイスを選択するようです。
それが何らかの形で役に立てば幸いです。
私の場合、音声出力をミュートされている場所に設定しました。私の外部画面のように:)
[[MPMusicPlayerController applicationMusicPlayer] setVolume:0.0];
これはデバイスで機能します。シミュレータを試してみてください。 iPhoneアプリでハードウェアの音量をどのように設定しますか?
このスレッドの逆を試してみることもできます。 iPhoneシミュレータでサウンドが機能しない?