Pergunta

Estou perdendo algo claramente óbvio ou não há como depurar um aplicativo iOS que use um acessório externo que esteja conectado através do dock de 30 pinos sem usar uma carga de troncos etc. Quero poder usar coisas como pontos de interrupção e pontos de interrupção e Instrumentos.

Existe uma maneira de depurar remoto, talvez, sobre Wi-Fi, Bluetooth?

Observação: Sim, perguntei isso muito recentemente e a excluí porque pensei ter encontrado a resposta. Mas a resposta foi apenas instrumentos tem apoio sobre o Wi-Fi. Não é o Xcode depuração. Então a questão ainda permanece ...

E entao...: Dado que não tive sorte real para encontrar a resposta, e ninguém me deu uma resposta ainda - eu considero que é uma grande gordura NÃO. :(

Faz -me pensar que esperamos que adivinhem magicamente onde ocorrem bugs ou registram uma porcaria de tudo enquanto usamos nossos conectores de dock, movendo -o continuamente entre o dispositivo e o acessório?

Hora de registrar um relatório de bug, eu acho.

Foi útil?

Solução

Na CES hoje, conversei com um desenvolvedor da Wahoo Fitness que faz um acessório ANT+ para iPhone. Eles tiveram o mesmo problema, mas encontraram uma solução.

Eles encontraram um extensor de doca de repasse que possui uma porta mini-USB. Eles usaram a porta mini-USB para depuração enquanto o acessório estava conectado.

O produto que eles estavam usando é http://www.cablejive.com/products/dockstubz.html

Este blog fala sobre a depuração remota iOS com um acessório de dock em anexo

Outras dicas

Você pode conectar o acessório externo a outro dispositivo iOS (não o amarrado ao Mac executando o depurador Xcode). Em seguida, túnel todas as suas mensagens de estrutura da EA do dispositivo conectado ao acessório para o dispositivo executando o aplicativo que está sendo depurado por um par de soquetes WiFi. Veja o código para mensagens de acelerômetro de tunelamento de um dispositivo para o simulador iOS (um truque comum para depurar o código do jogo no simulador) para um exemplo de como isso poderia ser feito.

Depois de pesquisar mais, e tendo visto que as pessoas tiveram que enviar cordas sobre o Wi-Fi para contornar isso, estou concluindo que a resposta é não.

Eu arquivei uma solicitação de bug para isso.

Nesse meio tempo, parece que o registro Wi-Fi e o registro de texto no dispositivo será o caminho a seguir agora.

Aqui está o meu entendimento de por que apenas o protocolo USB funciona para alguns acessórios externos e não é para outros acessórios externos. Parece um problema fundamental, sem um árbitro, dois mestres não podem conversar com um único escravo sobre USB, um protocolo de mestre/escravo em série. Portanto, o Xcode é um mestre, o iPhone é o dispositivo escravo. Se o acessório externo também for um mestre, não será possível conectar o iPhone (escravo Xcode) ao segundo mestre (o acessório externo).

Provavelmente, a chave Wahoo para iPhone "é um dispositivo escravo e é por isso que a solução Dockstubz funciona para um acessório externo.

Eu testei o Dockstubz. Não funciona para o meu acessório externo. Como suspeito, o protocolo USB não pode ser usado para ter dois dispositivos mestre controlando um único dispositivo escravo. Tentar conectar um Mac (mestre) (via Mini USB) e um acessório externo (mestre) (via conector de 30 pinos) ao iPhone 4 (escravo) faz com que o iPhone entre no loop de Connect & Re-Conect.

A seguir parece promissora também, embora cara: digi.com/support/kbase/kbaseresultdetl.jsp?id=485.

Alguém já tentou usar os conectores USB para Ethernet e usar um roteador para rotear solicitações de dois mestres (Xcode e acessório externo) para o escravo (iPhone)? Estou indo para a Best Buy para comprar cabos USB para Ethernet e conectar todos os três ao meu roteador IP. Relatará se funcionar.

É isso que será necessário:http://www.bestbuy.com/site/iogear+-+usb+ethernet+extender/9614781.p?id=1218131339965&skuid=9614781&s

http://www.frys.com/product/6103339

  1. Portanto, conecte o Xcode Mac usando a extremidade masculina no slot USB do seu computador. . Use um cabo Ethernet para conectá -lo a um roteador.
  2. Conecte o iPhone à parte feminina do conector de engrenagem de IO. Conecte -o ao roteador via cabo Ethernet.
  3. Conecte o acessório externo ao conector masculino (SABRENT USB ao adaptador de rede Ethernet Fast.) Conecte -o ao roteador.

Ainda estou pesquisando se isso funcionar. Acabei de pedir as peças. Irá obtê -lo até sexta -feira e reportará naquela época.

ATUALIZAÇÃO: O End End Iogear atrai muita corrente quando conectado ao roteador. Além disso, a extremidade feminina não pode carregar o iPhone quando conectada ao roteador, mesmo quando a corrente USB de 5V fornecida.

Tentei conectar diretamente o iPhone ao slot USB do roteador (usado para impressoras). Ele cobra o iPhone. Também usou USB para acelerar o adaptador de rede Ethernet (a BestBuy tinha um para conectar o Wii via USB) para conectar o Mac ao roteador. Ele se conectou à Internet, mas não conseguiu encontrar o iPhone. Na lista de clientes do roteador, não vejo nenhum login inteiro para o iPhone. Portanto, esse experimento foi um fracasso, a menos que alguém tenha outras dicas.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top