2013-09-26 13 views
5

Chcę uruchomić programowo zdarzenie sterowania zdalnego, takie jak UIEventSubtypeRemoteControlTogglePlayPause. Aplikacja, którą mam na myśli, to aplikacja do zdalnego sterowania głosowego (nawet jeśli już istnieje), która otrzymuje polecenie "Play" i po prostu generuje zdarzenie UIEventSubtypeRemoteControlTogglePlayPause. Każda aplikacja zarejestrowana jako pierwsza osoba odpowiadająca za to wydarzenie otrzyma ją. To znaczy. moja aplikacja po prostu tłumaczy głos na polecenia zdalnego sterowania.Programowo wyślij zdarzenie sterowania zdalnego w iOS

Pomysły?

+0

Nie można wysyłać zdarzeń zdalnego sterowania do innych aplikacji przy użyciu publicznego interfejsu API systemu iOS. Prawdopodobnie nie jest to możliwe z prywatnymi API, chyba że korzystasz z jailbreak. Jeśli potrzebujesz odpowiedzi wymagającej jailbreakingu, powinieneś o tym wspomnieć w swoim pytaniu. –

+0

Nie, to nie powinno wymagać jailbreakingu. Jeśli nie mogę wysłać zdarzenia zdalnego sterowania - jakieś wskazówki na temat tego, jak została zbudowana "zdalna" aplikacja do Apple TV? Jak mam zbudować identyczną aplikację? –

+0

Aplikacja Remote nie musi wysyłać zdarzeń zdalnego sterowania do innych aplikacji na lokalnym urządzeniu. Wysyła wiadomości do AppleTV przez WiFi. Możesz również wysyłać wiadomości do innych urządzeń w sieci WiFi za pomocą Bonjour i normalnych gniazd UDP i TCP. –

Odpowiedz

2

Nie można wygenerować programowo UIEvent s. Można to zrobić za pomocą prywatnego interfejsu API (google synthesize UIEvent). Niektóre ramy testowe to robią. Ponadto do testowania można wstrzyknąć strukturę aplikacji Apple Automation UI do aplikacji i użyć jej metody do generowania zdarzeń (głównie zdarzeń dotyku, nagłówków dostępnych w github).

Jednak syntezowanie zdarzeń jest czymś, czego nie można zrobić w aplikacji Appstore. Jeśli musisz to zrobić, jest to zły projekt.

Powiązane problemy