Реагирование на многоканальные проводные наушники

Я провожу несколько экспериментов с двумя наушниками a-JAYS Four (с тремя кнопками на проводном пульте дистанционного управления/микрофоном), подключенными к Galaxy Nexus (ICS 4.0.2).

Моя проблема в том, что только тестовое приложение, которое я написал, только "средняя" распознается тестовым приложением, т.е. срабатывает обратный вызов Intent.ACTION_MEDIA_BUTTON и/или Activity.onKeyDown. с KeyCode 79 при нажатии.

Нажатие двух других кнопок не вызывает никаких предыдущих методов. Для информации эти наушники и три кнопки работают на Apple iPhone и Apple (по крайней мере MacBookPro 2011), как показано на упаковке...

Во-первых, я думал, что Android или мое устройство могут просто не обрабатывать более одной кнопки на удаленном проводном разъемом (даже если это звучит странно...), но потом я попробовал пару наушников от HTC (те, которые идут с одним из устройств Desire) с 3 кнопками. Средняя кнопка будет реагировать так же, как и мои a-JAYS, но две другие кнопки также распознаются с помощью KeyCodes 87 и 88, соответственно Воспроизвести предыдущий и Воспроизвести следующие медиафайлы.

Таким образом, кажется, что либо устройство, либо уровни низкого уровня Android просто не могут поймать некоторые сигналы кнопок наушников:/(по крайней мере те, которые не являются 87 и 88)

Кто-нибудь знает, как заставить Android распознавать другие кнопки/сигналы от таких наушников, как Apple, совместимые? Будет ли это означать, что драйверы низкого уровня пишут для ICS или я пропущу что-то действительно очевидное?

Любая помощь будет высоко оценена. При необходимости отправьте мой код тестового приложения.

Приветствия

Ответы

Ответ 1

Сигналы/сопротивление от кнопок регулировки громкости (1,525-1,495 В для уменьшения громкости и 1,619-1,587 В для увеличения громкости) в настоящее время не могут быть распознаны с помощью программного обеспечения для платформы Android. Я считаю, что это связано с тем, что Apple имеет патент на назначенные регуляторы громкости, и поэтому Google не будет выпускать разработчикам, как инфраструктура распознает конкретные сигналы через четвертый разъем на разъеме для наушников. Кнопки центра/микрофона/действия на гарнитурах обычно работают, он замыкает путь от ~ 2 В до ~ 0 В, и Apple не владеет патентом на это. Если бы кто-то мог понять, как взаимодействовать с исходными данными сам по себе, это будет огромным. У меня возникает соблазн изучить разработку приложений и найти обходное решение.

Ответ 3

Я должен подчеркнуть, что я не эксперт по этой теме, но из того, что я прочитал и пробовал до сих пор, я пришел к выводу, что не исключено, что телефон Android реагирует на кнопки громкости наушников iPhone, но по какой-то причине производительность низкая/отстает.

Есть несколько приложений, пытающихся сделать магию, но они слишком ненадежны для повседневного использования. Я полагаю, проблема заключается в том, что запуск сигнала может быть реализован на более низком уровне ОС, чем у большинства обычных приложений также есть доступ.

Возможно, решение может быть своего рода ROM-мод...

Если вы можете реализовать это, я уверен, что это будет большой интерес для сообщества Android, и, может быть, это хороший бизнес.

С уважением, ваш товарищеский венгерский Gergő

Ответ 4

Вы должны нажать и удерживать среднюю кнопку при подключении наушников к гнезду. Это заставит микрофон работать на Android. Он работает на моем HTC Thunderbolt.

Ответ 5

Я считаю, что это аппаратная проблема (по крайней мере, в отношении наушников Apple). Если вы посмотрите на штекер, то у них есть четыре контакта вместо обычных трех. Я готов поспорить, что они запускают сигналы своих кнопок через этот дополнительный контакт. AFAIK, для этого не существует никаких устройств wth для Android.

Итак, в конечном счете, я не верю, что вы можете сделать яблочные наушники с кнопками для работы с Android (насколько работают кнопки).

Ответ 6

Вы должны удерживать середину все время, чтобы она работала. Если вы отпустите, а не играете в музыку, это говорит, что accsessary не поддерживается, но если вы играете музыку и отпускаете ее, это просто останавливает музыку, пока вы не удерживаете ее снова. Может быть, лента средняя кнопка закрыта очень туго?

Ответ 7

Если вы посмотрите на четыре контакта, наконечник кольцевого кольца (TRRS) и узнайте, что наборы наушников MOST:

  • tip: left
  • ring 1: right
  • кольцо 2: земля
  • рукав: микрофон

(1/4-дюймовые стерео аудио разъемы известны как TRS - наконечник с кольцом)

хотя некоторые реверсируют контакты заземления и микрофона, что вам нужно знать, насколько устройство распознает различные кнопки, которые у вас есть, заключается в том, что эти кнопки замыкаются между контактами заземления и микрофона. (до IR, старые школьные WIRED-пульты для видеомагнитофонов использовали сопротивление для разных функций)

Теперь ваша домашняя работа, чтобы узнать, что происходит:

  • измерьте сопротивление между кольцом 2 и гильзой для каждой из кнопок
  • узнать, является ли он кратковременным или постоянным
  • если у вас есть другое устройство для наушников/микрофонов, которое работает правильно, также измерьте сопротивление (сопротивление).

Я не знаю, как это вы хотите получить, но вы можете купить резисторы с правильным сопротивлением, чтобы получить функции, которые вы хотите использовать на устройстве Android. Вопрос в том, знаете ли вы, какие функции устройства способны от, и что эти импедансы являются триггером этой функции.

[email protected]