iPad とそのヘッドフォン ジャックを使用しているときに、興味深いことに気付きました。
iPhone のイヤホン ヘッドホンを iPad に接続すると、ヘッドホンの音量を (iPad の音量ボタンを使用して) 変更できます。イヤフォンを取り外し、同じヘッドフォン ジャックを使用して外部スピーカーを接続すると、音量を別のレベルに調整できます。スピーカーのプラグを抜いたら、イヤフォンを再び差し込むことができます。音量は、イヤホンを最後に設定した音量に自動的に戻ります。ヘッドフォン ジャックに接続する 3 つ目のデバイスがある場合 (私の場合、ヘッドフォン ジャックに接続する UniMag クレジット カード スワイプ リーダーでテストしました)、iPad はさらに 3 つ目のボリュームを記憶します。iPhoneのジャックにどの機器が差し込まれているのかを把握し、適切な音量レベルに設定しているようです。
これは私の予想に反するものです。どのデバイスが接続されているかに関係なく、ヘッドフォン ジャックの音量レベルは 1 つであると予想していました。
iPad がどのデバイスがどれであるかを判断できる場合、これは私のネイティブ アプリでも利用できますか? ユーザーがヘッドホン、外部スピーカー、または UniMag クレジット カード スワイプ デバイスを Audio API を使用してヘッドホン ジャックに接続し、それに応じて動作するかどうかを確認できますか?
おまけに、どのデバイスがどれであるかを識別する iPad の機能の背後にある技術的メカニズムを知っていれば、それも興味深いでしょう。
iOS5を搭載したiPad2でテストしています。