TestFlight oferuje bezprzewodową dystrybucję beta aplikacji na iOS (na urządzeniach bez jailbreaku). Jak można to zrobić? Czy to funkcja iOS, czy luka w zabezpieczeniach?
TestFlight oferuje bezprzewodową dystrybucję beta aplikacji na iOS (na urządzeniach bez jailbreaku). Jak można to zrobić? Czy to funkcja iOS, czy luka w zabezpieczeniach?
Odpowiedzi:
Było to możliwe, zanim TestFlight wprowadził usługę. Technika ta wynikała z mechanizmu dystrybucji przedsiębiorstwa. Ponieważ urządzenia 4.0 obsługują instalację z Internetu.
Pamiętaj - nadal musisz podpisać wersję beta dla wybranego zestawu identyfikatorów UDID, których nie możesz po prostu zainstalować na żadnym urządzeniu. Wszystko, co robią, to usunięcie wiadomości e-mail z IPA.
Widzieć:
Aktualizacja: Chcę powiedzieć, że Lot testowy jest jednym z najbardziej pomocnych narzędzi, z których korzystałem podczas programowania. Samo usunięcie ze zdjęcia wiadomości e-mail IPA było niedopowiedzeniem - starałem się wywołać mechanizm techniczny. Wykonują fantastyczną robotę zarządzając całym procesem beta. Rejestracja nowych urządzeń. Powiadamianie użytkowników itp.
You still need to sign the beta distribution for a select set of UDIDs you can't just willy nilly install it on any device
. Za przedsiębiorstwo dystrybucji udostępniana określona profilu nie musisz określić urządzenia i może (przynajmniej technicznie) zainstalować binarnego na dowolnym urządzeniu. Jednak licencja ogranicza się do instalowania jej tylko w firmie, której profil dystrybucji został wydany.
W tym artykule pokazano, jak działa implementacja OTA firmy Apple i można jej również używać poza przedsiębiorstwami: dystrybucja aplikacji bezprzewodowych iOS
Cały proces jest udokumentowany przez Apple . Apple opublikowało również dokumentację i przykładowy kod do rejestrowania urządzeń i uzyskiwania identyfikatora UDID za pomocą profili, dzięki czemu witryna może wykryć, które urządzenie dzwoni.
Niektóre dodatkowe rozwiązania o różnych mocach:
iOS Beta Builder , aplikacja Mac do tworzenia witryny za pomocą kompilacji. Po prostu prześlij uzyskane pliki na swój serwer internetowy.
Diawi : Prosta usługa internetowa. Prześlij plik IPA, opcjonalnie ustaw hasło i wyślij link do testerów.
AppSendr : usługa sieci Web dla hostingu wersji beta, podobna do Testflight, ale nie obejmuje procesu rejestracji urządzenia. Ale zapewnia narzędzia do wdrażania umożliwiające automatyczne przesyłanie nowych wersji.
HockeyKit : projekt typu open source do hostowania wersji beta na własnym serwerze PHP5 z dodatkowymi funkcjami, takimi jak klient do aktualizacji w aplikacji, automatyczne strony internetowe specyficzne dla urządzenia i obsługa wielu aplikacji. Całkowicie oparty na plikach i katalogach.
HockeyApp : usługa sieci Web dla hostingu wersji beta, aktualizacji aplikacji, statystyk, w tym rejestracji urządzeń, zaproszeń i rekrutacji. Zapewnia także zbieranie raportów o awariach po stronie serwera, symbolizację (dla wszystkich wątków) i grupowanie awarii dla aplikacji w wersji beta i App Store (iOS + Mac). Zestawy SDK są oprogramowaniem typu open source, używają HockeyKit , QuincyKit i PLCrashReporter (które jest jedynym bezpiecznym rozwiązaniem dotyczącym sposobu zbierania raportów o awariach w systemie iOS, zobacz ten artykuł .
Uwaga: Jestem głównym programistą HockeyKit i QuincyKit oraz jednym z programistów HockeyApp .
Testflight w zasadzie używa normalnego Ad Hoc, jak już wspomniano.
Aby to zadziałało, potrzebujesz UDID
dla każdego urządzenia, aby dodać je do profilu Ad Hoc, ponownie skompiluj aplikację z nowym profilem i rozpowszechnij nową kompilację.
Możesz uzyskać UDID
pomoc przy pomocy żądania uwierzytelnienia OTA. W rzeczywistości jest to krok wykonywany w MDM przed wdrożeniem rzeczywistego profilu na urządzeniu. Zasadniczo prosi urządzenie o dodatkowe informacje o sobie i odsyła je z powrotem do samodzielnie określonego serwera.
Pierwszy krok jest udokumentowany tutaj: Konfiguracja Apple OTA
Wydaje mi się, że Testflight korzysta z tego zaraz po procesie rejestracji, aby zebrać UDID
...
Tak, jest to podstawowa funkcja iOS dla klientów korporacyjnych, którzy chcą rozpowszechniać OTA.
Przypuszczalnie przekażesz swój UDID razem z aplikacją TestFlight, a oni wykorzystają licencję Enterprise, aby wysłać Ci aplikację. Jestem pewien, że brakuje mi wielu szczegółów technicznych, ale jeśli chcesz dowiedzieć się więcej, Apple ma wideo na ten temat z WWDC 2010.
Zaloguj się do developer.apple.com, przejdź do filmów WWDC 2010 i użyj linku, aby dostać się do vidoes. Film, który chcesz, to „Sesja 108 - Zarządzanie urządzeniami mobilnymi”. Jest bardzo pouczający na temat tego, co jest możliwe z OTA i kroków, które należy podjąć, aby dokonać obsługi OTA.
Standardowe urządzenia z systemem iOS są „podatne” na działanie użytkownika ładującego aplikacje Ad Hoc od dowolnego programisty, który ma identyfikator UDID tego urządzenia, i rejestruje ten identyfikator UDID wśród swoich 100 dozwolonych urządzeń w portalu programistów Apple.
Dystrybucja OTA to tylko kolejny sposób na zainstalowanie dystrybucji testowej Ad Hoc od zarejestrowanego programisty.