Controlar o dispositivo de áudio Bluetooth com o iPhone

Eu estou olhando para escrever aplicativo para iPhone, que será capaz de controlar rádio e CD player no carro. Rádio e leitor têm conexão Bluetooth disponível.

Eu comecei esta questão para obter todas as informações que eu preciso para este lugar. Tenho poucas perguntas, mas se você encontrar algo que eu não tenha pedido para começar a desenvolver este aplicativo, por favor, me avise.

Eu li sobre o perfil AVRCP e dispositivo Bluetooth no carro suporta AVRCP 1.3, o que é bom o suficiente para mim, tendo em mente os controles que podem ser executados nessa versão do protocolo.

Eu li muito sobre as pessoas dizendo: "dispositivo da Apple só pode interagir uns com os outros", "dispositivo da Apple não pode ser conectado via Bluetooth para dispositivo não-Apple", "programa MFi é obrigatório se você quiser fazer isso", "MFi não é necessário ", etc. Minha primeira pergunta é:

1) É possível emparelhar o iPhone (4, 4S) com rádio e CD player no carro via Bluetooth e controlar estações de rádio e música com qualquer versão do iPhone? Se sim, quais são as limitações para fazer esse tipo de conexão Bluetooth bem-sucedida?

Também há muito poucas informações sobre funções nas quais o iPhone pode funcionar. Para o AVRCP, existem dois tipos de funções: controlador e função de destino. Ao ler este artigo:https://developer.apple.com/hardwaredrivers/BluetoothDesignGuidelines.pdf Não encontrei resposta para minha segunda pergunta:

2) O iPhone pode atuar como controlador e emitir todos os comandos disponíveis no AVRCP 1.3 para o dispositivo alvo (rádio e CD player)?

Eu também gostaria de saber sobre os frameworks disponíveis para esse problema específico. Eu sei que existem vários deles, mas se alguém reconhecer o caminho certo para o meu problema, eu gostaria de saber:

3) Qual estrutura para interagir com o dispositivo de destino devo usar?

Do ponto de vista do desenvolvedor, também estou interessado em APIs disponíveis para interagir com o dispositivo Bluetooth conectado. Como estou fazendo meu próprio aplicativo e atribuindo ações aos botões, dentro dos métodos atribuídos aos botões, preciso executar o envio de mensagens para o dispositivo de destino. Então minha próxima pergunta é:

4) Alguém sabe como se há uma maneira de enviar comandos para o dispositivo alvo (iniciar / parar / pausar / avançar / retroceder, etc) como parte de alguma API fornecida no XCode, ou cada mensagem que eu atendo para enviar via Bluetooth para direcionar dispositivo que eu preciso fazer de acordo com a documentação do protocolo (fazer toda a mensagem (cabeçalho, corpo, parte de comando, etc) por mim)?

AVRCP foi o meu pensamento para realizar esta aplicação. Se eu estiver errado, por favor me avise. Bluetooth tem perfis diferentes e quando a mensagem é enviada de um dispositivo, tanto quanto eu entendo, perfil em si lida com mensagem e interpreta e entrega para o dispositivo de destino para que o dispositivo de destino possa compreendê-lo. Não entendo como uma mensagem enviada do iPhone para o dispositivo Bluetooth de destino é tratada a partir do momento em que eu a envio do código Objective-C (ou C). Essa é a principal dúvida que tenho e está relacionada com a questão 4 -Preciso criar mensagens brutas no formato correto para enviar comandos do AVRCP para o dispositivo ou usar uma API que reconheça essas mensagens como AVRCP (ou qualquer outro tipo) e as entregue no dispositivo de destino?

Esta última pergunta (se eu suponho que há algum tipo de resposta positiva para todas as anteriores) me preocupa mais do ponto de vista do desenvolvedor. Então, se alguém tivesse talvez experiência com este problema específico, eu apreciaria qualquer tipo de resposta ou conselho.

Estou realmente ansioso por suas respostas. Espero que uma discussão útil e construtiva comece neste tópico e que muitas informações úteis sejam escritas.

Cumprimentos.

questionAnswers(2)

yourAnswerToTheQuestion