Chciałbym napisać aplikację na iPhone'a/iPada, która może komunikować się przez połączenie USB z komputerem Mac lub programem na komputerze PC (który również bym napisał). Czy ktoś wie, jak mógłbym to zrobić? (Zdaję sobie sprawę, że może muszę jailbreak mojego iPada)Komunikacja USB między iPadem a komputerem Mac lub PC
Odpowiedz
Czy to musi być połączenie USB?
Jeśli nie, to GDATAsyncSocket Robbie Hanson jest doskonały do podłączania wszelkiego rodzaju urządzeń Apple. Użyłem go w zeszłym roku, aby podłączyć kilka iPadów do jednej aplikacji uruchomionej na komputerze Mac mini.
Komunikacja gniazdem przez USB (USBMux) może zaspokoić Twoje potrzeby. Po podłączeniu iPada lub iPhone'a do komputera Mac, pojawi się opis urządzenia/var/run/usbmuxd. Możesz utworzyć gniazdo i podłączyć je do/var/run/usbmuxd i wysyłać/odbierać spakowane dane do/lub z urządzenia iOS. Dane powinny być opakowane. Jest to krótkie odniesienie z theiphonewiki http://theiphonewiki.com/wiki/index.php?title=Usbmux. Mogę podać przykładowy kod do połączenia z usbmuxd.
struct sockaddr_un endpoint;
size_t size;
_usbMuxSocket = socket(PF_LOCAL, SOCK_STREAM, 0);
endpoint.sun_family = AF_LOCAL;
strncpy(endpoint.sun_path, "/var/run/usbmuxd", 17);
size = (offsetof (struct sockaddr_un, sun_path)
+ strlen (endpoint.sun_path) + 1);
connect(_usbMuxSocket, (struct sockaddr *) &endpoint, size);
Następnie należy "podłączyć" do portu, którego aplikacja słucha na iPadzie. Proces "connect" omówiony na powyższej liście stron wiki w sekcji Sequence of Events. Po zakończeniu przygotowań możesz użyć gniazda do wysyłania i odczytu danych.
Czy istnieje powód, dla którego nie można po prostu zadzwonić "otwarte" i użyć wynikowego fd? – Dustin
Jeśli jest to w ogóle możliwe, zdecydowanie będziesz musiał rzucić jailbreak: wiem, że nie możesz tego zrobić przy użyciu zwykłego SDK. –
Pomysł polegałby na próbie użycia portu szeregowego (UART lub /dev/tty.iap). Nie jestem pewien, czy możesz to zrobić bez dodatkowego sprzętu, ale oto kilka linków na ten temat: http://devdot.wikispaces.com/Iphone+Serial+Port+Tutorial http://hcgilje.wordpress.com/2010/02/15/iphone-serial-communication/ – adig