2012-03-12 11 views
5

Próbuję rozpowszechniać niepodpisany protokół .ipa za pośrednictwem protokołu itms-services dla urządzenia z jailbreakiem BEZ ŻYCIA CYDIA. Przeszedłem przez przewodniki o tym, jak stworzyć niepodpisaną aplikację dla cydii od: http://www.alexwhittemore.com/developing-jailbroken-iphone-ios-401/ i udało mi się sprawić, by działała, z wyjątkiem opcji "Udostępnij" od Organizatora. Mówi: Błąd: Codesign check nie powiedzie się ... Ale może to nie jest problem tutaj.Rozłóż niepodpisaną aplikację iPhone na jailbreak iPhone'a bez Cydii

Przejście do folderu .app mojej aplikacji i skompresowanie go do rozszerzenia .ipa bez podpisu działa, ale kiedy prześlę aplikację na mój serwer i spróbuję pobrać ją za pomocą protokołu itms-services, pasek postępu na urządzeniu zbliża się do końca i nie można pobrać ....

Ktoś ma z tym doświadczenie?

Odpowiedz

1

Mam dokładnie to samo pytanie: Szukam sposobu na dystrybucję aplikacji iOS dla iPhone'a z jailbroken, bez przechodzenia przez Cydię.

itms-services działa, gdy dostarczę prawidłowy profil informacyjny. Bez profilu informacyjnego, nie działa.

Jedna uwaga dla ciebie Alexei: nie podpisana aplikacja nie będzie działać na iPhonie, nawet jeśli jest to jailbreak. Potrzebujesz co najmniej aplikacji z podpisem własnym. Jailbreak eliminuje potrzebę zatwierdzenia podpisu programistycznego Apple, w ogóle nie usuwa potrzeby podpisu. Możesz samodzielnie podpisać swój kod za pomocą "ldid-S" na urządzeniu po jailbreaku. Istnieje również wersja LDID dla systemu Mac OS X pod adresem http://dl.dropbox.com/u/3157793/ldid

Prosimy o aktualizowanie tego wątku wraz z postępem - zrobię to samo.

[edited]

Możliwe jest wygenerowanie certyfikatu z podpisem własnym i używać go z Xcode. Następnie aplikację można zainstalować przy użyciu polecenia scp -r.

Następnie ręcznie utworzyłem plik IPA i udostępniłem go za pośrednictwem serwera WWW z adresem URL usługi itms. Instalacja nie powiedzie się z „” APP „nie można zainstalować w tym czasie”

patrząc na konsoli, to mówi:

Mar 14 17:31:32 unknown installd[4276] <Error>: developer cert trust result = 5 Mar 14 17:31:32 unknown installd[4276] <Error>: 00485000 verify_signer_identity: Could not copy validate signature: -402620392 Mar 14 17:31:32 unknown installd[4276] <Error>: 00485000 preflight_application_install: Could not verify executable at /var/tmp/install_staging.AnmaAp/foo_extracted/Payload/App.app Mar 14 17:31:32 unknown com.apple.itunesstored[4272] <Notice>: MobileInstallationInstall: failed with -1 Mar 14 17:31:32 unknown installd[4276] <Error>: 00485000 install_application: Could not prefligh

Powód jest to, że /usr/libexec/installd Program sprawdza ważnego podpisu podczas instalowania aplikacji . To może być poprawione i wyłączone z narzędzi takich jak http://hackulo.us/wiki/AppSync lub http://jamesisbored.com/iphone/bootleg), ale nie pójdzie tamtędy z dwóch powodów:

  • najpierw otwiera drzwi do każdej instalacji na iPhone
  • drugie dlatego Twój użytkownik będzie musiał jeszcze raz po każdej aktualizacji iOS (a dostępność patch nie jest gwarantowana dla przyszłych wersjach)

Tak, to pozostawia mnie z dwóch opcji: a/zrezygnować z tego pomysł B/rozwijać własną MISValidateSignatureAndCopyInfo pomijanie kodu i używanie go tymczasowo na czas potrzebny do zainstalowania aplikacji.

+0

Przed próbą dystrybucji, czy testowałeś, czy aplikacja działa z ręcznej instalacji na urządzeniu (używając scp do przechowywania plików na urządzeniu)? –

+0

Dzięki! Uwaga pomaga! Tak, sprawdziłem aplikację z ręcznej instalacji i nawet z prawidłowym profilem udostępniania. I działa. Czy znasz sposób na zainstalowanie profilu zaopatrzenia bez kabla? –

+0

tak, po prostu wystaw go na stronie internetowej i pobierz go z Mobile Safari (http: //your_server/file.mobileprovision) –

3

Przepraszam przebudzenia się starzeje-stary wątek, ale tylko w przypadku gdy ktoś ma na to pytanie w przyszłość:

Protokół ITMS-usług sprawia, że ​​wnioski do dwóch serwerów: oscp.apple.com i inny serwer (który można znaleźć więcej informacji na temat witryny Apple). Serwery sprawdzają, czy Apple wygenerował klucze publiczne do podpisywania certyfikatów i czy zostały one unieważnione.

Zwykle nie można tego obejść, ale to, co sprawdza iPhone, to "zła" odpowiedź. Jeśli wykryje jeden, odrzuci aplikację. Jeśli w ogóle nie otrzyma odpowiedzi, nie odrzuca aplikacji.

To, co chcesz tutaj zrobić, to prawdopodobnie stworzyć niestandardowy serwer DNS, który wyświetli dwa serwery Apple jako dwa inne serwery. Następnie utwórz mobilny plik konfiguracyjny, który zmieni domyślny serwer DNS iPhone'a na twój serwer. Aplikacja powinna następnie poprawnie zainstalować.

Powiązane problemy