Biorąc pod uwagę, co się ostatnio wyprawia w świecie cyfrowym w kontekście przekazania prezydentury przez Donalda Trumpa (ban tegoż na Twitterze, Facebooku, YouTubie, skasowanie Parlera z serwerów Amazona, wywalenie aplikacji Parler z Apple AppStore i Google Play Store), warto wiedzieć o alternatywnych sposobach dogrywania aplikacji, bezpośrednio z pliku.
W przypadku Androida jest to proste. Ustawienia systemu zawierają opcję zezwalającą na instalację z "nieznanych źródeł" - wystarczy ją włączyć, i możemy spokojnie wgrywać, co chcemy. Istnieją już nawet alternatywne aplikacje-sklepy oraz repozytoria (np. F-Droid czy Obtainium).
W przypadku iOSa nie jest tak pięknie. Nie ma domyślnego sposobu na wgrywanie dowolnej aplikacji. Istnieje co prawda możliwość zbudowania aplikacji tak, aby dało się ją zainstalować z pliku, ale wymagają one aktywnej pracy twórcy takiej aplikacji. Może on albo skompilować ją w trybie Enterprise, co oznacza, że aplikację można zainstalować z pliku, ale taka licencja kosztuje tego programistę 200 dolarów rocznie i jest ograniczona do bodajże 10 tysięcy instalacji. Może też użyć kompilacji In-House, czyli na sztywno w aplikacji zaszyć identyfikator urządzenia, na którym uruchomimy aplikację, dzięki czemu będzie ona działać po instalacji z pliku - ale tylko na tych urządzeniach, których identyfikatory są zaszyte. A ich liczba jest ograniczona i wynosi 200 urządzeń.
Niektórzy próbują aplikacje wrzucać na TestFlight - to platforma Apple'a do publiwania aplikacji w wersji testowej - i dystrybuować w ten sposób. Istnieje nawet ich repozytorium, Departures. Założenie jest takie, że przegląd aplikacji w TestFlight jest mniej skrupulatny, niż w przypadku publikacji do AppStore, więc teoretycznie mogą się tam pojawić aplikacje, które w sklepie by się nie znalazły. Jednak we wspomnianym na początku przypadku Parlera, raczej wątpliwe jest, żeby Apple dopuściło aplikację do tego etapu.
Na szczęście pozostaje nam jeszcze jedna opcja - AltStore.
AltStore korzysta z uprzejmości, jaką Apple zrobiło programistom iOSa, którzy nie posiadają wykupionego programu developerskiego. Dzięki tej urzejmości, mają oni możliwość budowania, podpisywania oraz uruchamiania tworzonych przez siebie aplikacji na swoim urządzeniu z iOSem przez tydzień. Aplikacja, którą zbudują sobie bezpośrednio w Xcode na iPhone'ie podpiętym kablem do komputera, będzie działać przez 7 dni, a następnie jej podpis wygaśnie, i przestanie się ona uruchamiać.
Twórca AltStore sprytnie wykorzystał ten mechanizm. Stworzył aplikację, która pozwala na ponowne podpisywanie aplikacji, dzięki czemu będzie ona działać... w teorii wiecznie.
Szczegóły techniczne są dobrze opisane na stronie projektu, ale w skrócie działa to tak, że używając swojego Apple ID, udajemy programistę, który właśnie stworzył aplikację, i chce ją wgrać na telefon. Tyle że ta aplikacja wcale nie musi być stworzona przez nas, ani nie musi być stworzona "właśnie teraz". Co więcej, mechanizm wgrywania aplikacji na iOSie sprawia, że nie tracimy żadnych danych - po prostu plik wykonywalny podmieniany jest nową wersją ze zaktualizowanym certyfikatem.
Sam projekt ma swoje repozytorium aplikacji, ale w tym momencie są tam jedynie dwie: Delta - emulator starych konsol, oraz Clip - menadżer schowka. Na szczęście twórca dodał możliwość instalowania dowolnego innego programu. Wystarczy plik w formacie *.ipa
skopiować na dysk urządzenia (np. korzystając z synchronizacji iCloud Drive), a następnie dodać aplikację w AltStore. AltStore, we współpracy z AltServerem oraz klientem poczty Apple Mail, podpisze aplikację i zainstaluje ją na telefonie. Na liście aplikacji zobaczymy, ile czasu zostało do wygaśnięcia aplikacji, i jedyne co musimy zrobić, to kliknąć licznik dni zanim się wyzeruje, aby podpisać aplikację ponownie, i korzystać z niej dalej.
Rozwiązanie nie jest oczywiście idealne. Opiera się na możliwości podpisywania aplikacji przez de facto kogokolwiek na te 7 dni, i w związku z tym wymaga od nas ciągłej uwagi. Ale pomijając te niedogodności, rozwiązanie wydaje się nienajgorsze. W ten sposób możemy zainstalować na iOSa praktycznie dowolną aplikację.