Управление аудиоустройством Bluetooth с iPhone

Я ищу приложение для iPhone, которое сможет управлять радио и проигрывателем компакт-дисков в автомобиле. Радио и плеер имеют Bluetooth-соединение.

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

Я читал о профиле AVRCP и устройстве Bluetooth в автомобиле, поддерживающем AVRCP 1.3, что достаточно для меня, имея в виду элементы управления, которые можно выполнять в этой версии протокола.

Я много читал о людях, которые говорили, что «устройство Apple может взаимодействовать только друг с другом», «устройство Apple не может быть подключено через Bluetooth к устройству не от Apple», «MFi-программа обязательна, если вы хотите сделать это». , "MFi не нужен" и т. д. Мой первый вопрос:

1)Is it even possible to pair iPhone (4, 4S) with radio and CD player in car via Bluetooth and control radio stations and music with any iPhone version? If yes, what are the limitations for making this kind of successful Bluetooth connection?

Также очень мало информации о ролях, в которых может работать iPhone. Для AVRCP есть два вида ролей: контроллер и целевая роль. Читая эту статью:https://developer.apple.com/hardwaredrivers/BluetoothDesignGuidelines.pdf Я не нашел ответа на свой второй вопрос:

2) Can iPhone act as a controller and issue all available commands stated in AVRCP 1.3 to target device (radio and CD player)?

Я также хотел бы знать о доступных рамках для этой конкретной проблемы. Я знаю, что их несколько, но если кто-то узнает, какой из них подходит для моей проблемы, я хотел бы знать:

3) Which framework for interacting with target device should I use?

С точки зрения разработчика, меня также интересуют доступные API для взаимодействия с подключенным устройством Bluetooth. Поскольку я делаю свое собственное приложение и назначаю действия кнопкам, внутри методов, назначенных кнопкам, мне нужно выполнить отправку сообщений на целевое устройство. Итак, мой следующий вопрос:

4) Does anyone know how if there's a way to send commands to target device (start/stop/pause/forward/backward, etc) as part of some API provided in XCode, or each message which I attend to send via Bluetooth to target device I need to make according to protocol documentation (make entire message (header, body, command part, etc) by myself)?

AVRCP была моя мысль для выполнения этого приложения. Если я ошибаюсь, пожалуйста, дайте мне знать. Bluetooth имеет разные профили, и когда сообщение отправляется с одного устройства, насколько я понимаю, сам профиль обрабатывает сообщение, интерпретирует его и доставляет на целевое устройство, чтобы целевое устройство могло его понять. Я не понимаю, как обрабатывается сообщение, отправленное с iPhone на целевое устройство Bluetooth, с момента отправки его из моего кода Objective-C (или C). Это главное сомнение, которое у меня есть, и оно связано с вопросом 4 -do I need to make raw messages in correct format in order to send AVRCP commands to device or I can use some API which will recognize those messages as AVRCP (or any other kind) and deliver it to target device?

Этот последний вопрос (если я предполагаю, что есть какой-либо положительный ответ на все предыдущие) касается меня больше всего с точки зрения разработчика. Поэтому, если у кого-то есть опыт решения этой конкретной проблемы, я буду признателен за любой ответ или совет.

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

С наилучшими пожеланиями.

Ответы на вопрос(2)

Ваш ответ на вопрос