Przetestuj aplikację iOS na urządzeniu bez programu Apple Developer lub jailbreak

382

Jak mogę przetestować aplikację iOS na iPodzie Touch bez rejestracji w Programie Apple Developer lub jailbreaku iPoda?

W tej chwili nie jest to również realna opcja.

Chciałbym przetestować samo urządzenie zamiast symulatora ekranowego, aby zobaczyć, jak działa na prawdziwym iPodzie.

Cyklon
źródło
2
8 czerwca firma Apple ogłosiła, że ​​dzięki Xcode 7 możliwa jest instalacja aplikacji tworzonych na urządzeniach bez certyfikatu programu dla programistów Apple. Witryna Apple Developer mówi, że musimy zalogować się tylko za pomocą Apple ID.
skyvin
Sprawdź tę odpowiedź dotyczącą korzystania z bezpłatnego udostępniania w szczegółach stackoverflow.com/questions/30973799/…
Aditya Deshmane
Czy płatne konto programisty jest Twoim problemem? A może nie chcesz rejestrować swojego identyfikatora UDID w Apple? Nawet bezpłatne konto w zaakceptowanej odpowiedzi wymaga posiadania bezpłatnego, zarejestrowanego konta w programie programistycznym Apple oraz dodania identyfikatora UDID urządzenia do profilu udostępniania oprogramowania dla iOS.
wottle,
1
Oto kolejny przewodnik krok po kroku: stackoverflow.com/a/33928777
Suragch
@wottle: „płatne konto programisty” jest bezpiecznym zakładem, biorąc pod uwagę, że rejestracja UDID na bezpłatnym koncie nie była opcją, na przykład pięć lat temu (czas zadawania tego pytania). W tym czasie zaakceptowana odpowiedź (moja) po prostu powiedziała, że ​​nie ma innych opcji.
BoltClock

Odpowiedzi:

429

Siedem lat po otwarciu App Store (10 lipca 2008 r.) Firma Apple wreszcie wprowadziła nową funkcję w Xcode 7, która pozwala wdrażać i uruchamiać dowolną liczbę aplikacji na dowolnym urządzeniu, po prostu logując się za pomocą Apple ID. Nie będziesz już potrzebował płatnego członkostwa w Programie, aby wdrożyć aplikacje na swoim urządzeniu (a na pewno nie będziesz już musiał jailbreakować urządzenia, jeśli nie czujesz się komfortowo).

W każdym razie nie w większości przypadków użycia. Z oczywistych powodów niektóre możliwości i uprawnienia wymagające członkostwa w Programie, takie jak Game Center i zakupy w aplikacji, nie będą dostępne dla aplikacji wdrażanych przy użyciu tej metody. Z dokumentacji programisty Apple :

Uruchom aplikację na urządzeniach korzystających z bezpłatnej obsługi administracyjnej (iOS, watchOS)

Jeśli nie przystąpisz do programu Apple Developer Program, możesz nadal tworzyć i uruchamiać aplikację na urządzeniach, korzystając z bezpłatnego udostępniania . Jednak możliwości dostępne dla Twojej aplikacji, opisane w części Dodawanie możliwości , są ograniczone, gdy nie należysz do programu Apple Developer.

Dokładne kroki instalacji aplikacji na urządzeniu z iOS lub Apple Watch są natychmiast wykonywane (zrzuty ekranu zostały pominięte, aby ułatwić przeglądanie):

  1. W Xcode dodaj swój identyfikator Apple ID do preferencji Kont, opisanych w Dodawanie konta Apple ID w Xcode .

  2. W nawigatorze projektu wybierz projekt i cel, aby wyświetlić edytor projektów.

  3. Kliknij Ogólne i wybierz swoją nazwę z wyskakującego menu Zespół.

  4. Podłącz urządzenie do komputera Mac i wybierz urządzenie z menu paska narzędzi Schemat.

  5. Pod menu podręcznym Zespół kliknij opcję Napraw problem.

    Xcode tworzy dla ciebie darmowy profil informacyjny, a tekst ostrzegawczy w wyskakującym menu Zespół znika.

  6. Kliknij przycisk Uruchom.

    Xcode instaluje aplikację na urządzeniu przed uruchomieniem aplikacji.

Przed Xcode 7 członkostwo w Programie było rzeczywiście wymagane do podpisania certyfikatów udostępniania wymaganych do wdrażania aplikacji na urządzeniach. Jedyną alternatywą było łamanie więzienia. Dzięki Xcode 7 nie musisz już jailbreakować urządzenia, aby uruchamiać aplikacje dystrybuowane poza App Store lub testować aplikacje, jeśli nie stać Cię na przystąpienie do Programu, lub wdrażać i używać aplikacji, które opracowałeś na własny użytek jeśli nie zamierzasz rozpowszechniać ich za pośrednictwem App Store (w takim przypadku prawdopodobnie nie potrzebujesz uprawnień oferowanych przez członkostwo w Programie).

BoltClock
źródło
Po prostu FYI: Zainstalowałem Xcode 7 i próbowałem uruchomić na telefonie, ale nie mogłem poprawnie wyregulować wszystkich zależności kompilacji, więc wróciłem do Xcode 6 i wreszcie mogłem uruchomić na własnym urządzeniu! Xcode 7 musi dodać do twojego konta licencję, którą rozpozna Xcode 6 :)
Mister Mister,
1
Właśnie wdrożyłem niektóre przykładowe aplikacje, które budowałem w ciągu ostatnich kilku tygodni na moim iPAD Air przy użyciu Xcode7. Zapewnia znacznie lepsze wrażenia podczas testowania aplikacji bez konieczności płacenia za subskrypcję. Ten post był bardzo pomocny. Dzięki chłopaki.
learn_develop
1
@BoltClock Myślę również, że powinieneś wyraźniej określić, kiedy ta zmiana została wprowadzona przez Apple. „Siedem lat po otwarciu App Store” -> większość ludzi prawdopodobnie nie pamięta, kiedy powstał App Store i nie chce go sprawdzać ani wykonywać obliczeń.
Miscreant
5
Zamiast Schematu musiałem przejść do Product-> Destination. Tam musiałem wybrać swoje urządzenie. Potem zadziałało. Pamiętaj także, aby zezwolić na instalowanie takich aplikacji na iPhonie, przechodząc do Ustawienia -> Ogólne -> Profil Zobaczysz swoje konto deweloperskie. Dotknij tego. Powinieneś zobaczyć aplikację tam wymienioną. Stuknij w to. Stuknij „Zaufaj (tutaj nazwa)”
mutp
Swift 2 przyjmuje funkcjonalny paradygmat projektowania i wkrótce będzie dostępny na zasadach open source. Xcode 7 i iOS 9 zapewniają bezpłatne udostępnianie urządzeń nieprzyzwoitym i potencjalnie rewolucyjnym programistom. Naprawdę żyjemy w epoce ideologicznie zreformowanej i kiedy to jest żyć.
lol
82

Jest na to sposób.

Będziesz potrzebował dostępu do ROOT, aby edytować następujący plik.

Przejdź do /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdkpliku i otwórz go SDKSettings.plist.

W tym pliku rozwiń DefaultProperties i zmień CODE_SIGNING_REQUIRED na NO, podczas gdy tam jesteś, możesz również zmienić ENTITLEMENTS_REQUIRED na NOrównież.

Będziesz musiał ponownie uruchomić Xcode, aby zmiany odniosły skutek. Musisz to również zrobić dla każdego pliku .sdk, który chcesz uruchomić na urządzeniu.

Teraz w ustawieniach projektu możesz zmienić Code Signing Identityna Don't Code Sign.

Twoja aplikacja powinna się teraz poprawnie zainstalować i zainstalować na urządzeniu.

AKTUALIZACJA:

Istnieją pewne problemy z pakietem SDK dla systemu iOS 5.1, że ta metoda może nie działać dokładnie tak samo. Wszelkie inne aktualizacje zostaną wymienione tutaj, gdy będą dostępne.

AKTUALIZACJA:

Można znaleźć właściwą ścieżkę do SDKSettings.plistz xcrun.

xcrun --sdk iphoneos --show-sdk-path

Nowa lokalizacja SDKSettings.plist dla zestawu iOS 5.1 SDK:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS5.1.sdk/SDKSettings.plist

WrightsCS
źródło
9
Spowoduje to zbudowanie niepodpisanej aplikacji, ale jak zamierzasz zainstalować / uruchomić ją na urządzeniu, które nie zostało uszkodzone przez jailbreak?
David Gelhar,
4
Może się zainstalować, ale nigdy się nie otworzy.
Domness
4
Tak, od iOS5 jest to nadal możliwe. Nadal będziesz musiał ldidsfałszować kod, podpisując swój plik binarny. code.google.com/p/networkpx/downloads/detail?name=ldid
WrightsCS
7
OP poprosił o rozwiązanie inne niż jailbreak
malhal
8
Proszę rozważyć wyczyszczenie tej odpowiedzi. Sama odpowiedź nie wspomina nic o fałszywym podpisywaniu kodu ldid. W swoich komentarzach podajesz jeden komentarz stwierdzający, że podpisanie za pomocą ldidnie jest potrzebne, aw innym komentarzu mówisz, że jest to konieczne. Mówisz również, że ta odpowiedź nie ma nic wspólnego z łamaniem więzienia, ale jestem pewien, że tak. Jailbreaking pozwala na uruchamianie plików binarnych, które nie mają prawidłowych podpisów. Jeśli twoja aplikacja nie jest podpisana lub sfałszowana z ldid, nie będzie działać na standardowym urządzeniu z iOS ... chyba że robisz coś innego, czego tutaj nie opisałeś.
Nate
55

Dzięki Xcode 7 nie musisz już mieć konta programisty, aby przetestować swoje aplikacje na swoim urządzeniu :

wprowadź opis zdjęcia tutaj

Sprawdź to tutaj .

Zauważ, że jest to oficjalnie obsługiwane przez Apple, więc nie potrzebujesz urządzeń z jailbreakiem ani testowania na symulatorze, ale będziesz musiał użyć Xcode 7 (obecnie w fazie beta do czasu tego postu) lub później.

Pomyślnie wdrożyłem aplikację na moim iPhonie bez konta programisty. Będziesz musiał użyć swojego konta iCloud, aby rozwiązać problemy z profilem administracyjnym. Wystarczy dodać konto iCloud i przypisać je w menu rozwijanym Zespół (w menu Tożsamość ), a przycisk Napraw problem powinien zrobić resztę.


AKTUALIZACJA:

Niektóre osoby mają problemy z iOS 8.4 , oto jak to naprawić .

Roberto
źródło
Jest to oficjalne, ale wciąż w trybie beta
Fadi Obaji
Czy ktoś zdołał skorzystać z tej nowej funkcji? Nie działa dla mnie
Daniil
Pracował dla mnie. Czy używasz XCode 7?
Roberto,
Jakieś tutoriale? Kompilowanie aplikacji pythonista na mojego iPada
Luke Taylor
Jaki musi być identyfikator pakietu?
Luke Taylor,
12

Nigdy nie próbowałem, ale podczas wyszukiwania w Google Jailcoder wygląda jak rozwiązanie. Problem polega na tym, że urządzenie musi zostać złamane przez jailbreak. Jeśli ktoś tego spróbuje, prosimy o komentarz i poinformowanie nas, jak to działa.

Firula
źródło
2
Działa idealnie dla mnie. Jedyną irytującą częścią jest to, że chcą, abyś zatwierdził dodanie niektórych certyfikatów do pęku kluczy, nie informując Cię dokładnie, co robią. Wyglądają jednak tak, jakbyś próbował to zrobić jako proces ręczny. Jest dość płynny. Przeszedłem z czystej instalacji Xcode do jednej z moich aplikacji działających na moim iPhonie w mniej niż 5 minut. Używam Jailbroken Xcode 4 i iOS 5.0.1.
Stone Mason
Świetny! dzięki za odpowiedź z powrotem @ cool_me5000. Twoje doświadczenie z nim pomoże innym ludziom, którzy chcą spróbować. Kiedyś to przetestuję.
Firula
Jest to nieaktualne i nie odnosi się do wymogu określonego w pytaniu, aby zrobić to bez łamania więzienia.
dgeske
8

Przejdź do Ustawień kompilacji , w obszarze Podpisywanie kodu , ustaw Tożsamość podpisywania kodu jako Profil programisty i administrowania iOS jako Automatyczny .

Wybierz urządzenie (teraz widoczne) z rozwijanej listy i uruchom aplikację.

wprowadź opis zdjęcia tutaj

Atul Kaushik
źródło
6

Odwołania do JailCoder powyżej wskazują na stronę, która już nie istnieje. Wygląda na to, że powinieneś użyć http://oneiros.altervista.org/jailcoder/ lub https://www.facebook.com/jailcoder

MatthewPearson
źródło
jailcoder to bardzo ładne i proste narzędzie do fałszywego podpisywania kodu i pobierania aplikacji na prawdziwe urządzenie. Musisz utworzyć certyfikaty iPhone Developer i iPhone Distribution.
user914425
2

właśnie przetestowałem JailCoder www.jailcoder.com i jestem w stanie uruchomić i debugować na urządzeniach z jailbreakiem. Potrzebujesz tylko świeżej, nietkniętej instalacji xCode, jeśli nie, po prostu odinstaluj i zainstaluj ponownie xCode i uruchom JailCoder

razor7
źródło
1

Warto zainwestować w program dla Apple. Będziesz mógł korzystać z obsługi administracyjnej ad-hoc, aby rozpowszechniać swoją aplikację wśród testerów i urządzeń testowych. Możesz dodać 100 urządzeń do obsługi administracyjnej ad-hoc do swojego programu dla programistów.

Rob Vermeulen
źródło
17
Na pewno byłoby warte złotówki. Ale 99 dolców? Ostatnim razem, gdy zapłaciłem komuś 99 dolców za pozwolenie na zainstalowanie programu napisanego na mojej maszynie, był ... nigdy. Napisałem wiele programów i posiadałem wiele maszyn.
Sean Worle
-1

Wykonaj następujące kroki:

1. Otwórz Xcode-> Wybierz projekt-> wybierz cele-> Zaznacz automatycznie zarządzaj podpisywaniem-> następnie dodaj swoje konto programisty Apple-> wyczyść projekt-> zbuduj projekt-> uruchom, wszystko działa dobrze.

Preeta
źródło