Я ищу приложение для iPhone, которое сможет управлять радио и CD-плеером в автомобиле. Радио и плеер имеют Bluetooth-соединение.Управление аудиоустройством Bluetooth с iPhone
Я начал этот вопрос, чтобы получить всю информацию, необходимую мне для этого одного места. У меня мало вопросов, но если вы найдете что-нибудь, что я не просил, чтобы я начал разрабатывать это приложение, пожалуйста, дайте мне знать.
Я прочитал про профиль AVRCP и устройство Bluetooth в автомобиле поддерживает AVRCP 1.3, что достаточно хорошо для меня, имея в виду элементы управления, которые могут быть выполнены в этой версии протокола.
Я много читаю о людях, говорящих: «Устройство Apple может взаимодействовать только друг с другом», «Устройство Apple не может быть подключено через Bluetooth к устройству, отличному от Apple», «Программа MFi обязательна, если вы хотите сделать это «,« MFI не нужен »и т. Д. Мой первый вопрос:
1) Возможно ли даже соединение iPhone (4, 4S) с радио и CD-плеером в автомобиле через Bluetooth и управление радиостанциями и музыкой с любой версией iPhone? Если да, то каковы ограничения для такого успешного соединения Bluetooth?
Существует также очень мало информации о ролях, в которых iPhone может работать. Для AVRCP существуют два вида ролей: контроллер и целевая роль. Читая эту статью: https://developer.apple.com/hardwaredrivers/BluetoothDesignGuidelines.pdf Я не нашел ответ на свой второй вопрос:
2) Может ли iPhone действовать как контроллер и выдавать все доступные команды, указанные в AVRCP 1.3, целевому устройству (радио и CD-плееру)?
Я также хотел бы узнать о доступных фреймворках для этой конкретной проблемы. Я знаю, что есть несколько из них, но если кто-то узнает правильный для моей проблемы, я бы хотел знать:
3) Какую структуру для взаимодействия с целевым устройством следует использовать?
С точки зрения разработчика, меня также интересуют доступные API-интерфейсы для взаимодействия с подключенным устройством Bluetooth. Поскольку я делаю свое приложение и назначая действия кнопкам, внутри методов, назначенных кнопкам, мне нужно выполнить отправку сообщения на целевое устройство. Так что мой следующий вопрос:
4) Кто-нибудь знает, как можно отправить команды на целевое устройство (запуск/остановка/пауза/вперед/назад и т. Д.) Как часть некоторого API, предоставленного в XCode, или каждое сообщение, которое я посещаю, отправляет по Bluetooth на целевое устройство, которое мне нужно сделать в соответствии с протокольной документацией (сделайте все сообщение (заголовок, тело, часть команды и т. д.))?
AVRCP была моей мыслью о выполнении этого приложения. Если я ошибаюсь, сообщите мне. Bluetooth имеет разные профили и когда сообщение отправляется с одного устройства, насколько я понимаю, сам профиль обрабатывает сообщение и интерпретирует его и доставляет на целевое устройство, поэтому целевое устройство может его понять. Я не понимаю, как сообщение, отправленное с iPhone на целевое устройство Bluetooth, обрабатывается с момента отправки его с моего кода Objective-C (или C). Это главное сомнение, которое у меня есть, и это связано с вопросом 4 - Мне нужно сделать необработанные сообщения в правильном формате, чтобы отправлять команды AVRCP на устройство, или я могу использовать некоторый API, который распознает эти сообщения как AVRCP (или любой другой другой вид) и доставить его на целевое устройство?
Этот последний вопрос (если я полагаю, что есть какой-либо положительный ответ на все предыдущие), касается меня больше всего с точки зрения разработчика. Поэтому, если бы кто-нибудь мог испытать эту конкретную проблему, я был бы признателен за любой ответ или совет.
Я с нетерпением жду ваших ответов. Надеюсь, что конструктивная и полезная дискуссия начнется по этой теме и что будет написано много полезной информации.
С уважением.
# 1: @javieralog - Спасибо за разъяснение материала о устройствах MFi и BT4.0 LE. – uerceg