Jak mogę zainstalować plik .ipa w moim symulatorze iPhone'a


165

Mam symulator iPhone'a działający na moim Macu.

Mam plik .ipa, czy możesz mi powiedzieć, jak mogę go zainstalować na symulatorze?

Odpowiedzi:


137

Nie możesz. Jeśli został pobrany za pośrednictwem sklepu iTunes, został zbudowany dla innego procesora i nie będzie działać w symulatorze.


12
Dodam, że jedynym sposobem na uruchomienie aplikacji na iPhone'a w symulatorze jest samodzielne skompilowanie jej z XCode, przy czym aktywnym celem jest Symulator.
— Alex Wayne

1
możesz uruchomić plik aplikacji projektu w symulatorze.
— humblePilgrim

3
wygląda na to, że komuś poniżej udało się to zrobić. hackish, ale jeśli to działa, warto o tym wiedzieć.
— Randy L

13
Każdy, kto twierdzi, że uruchamia aplikacje na iPhone'a w symulatorze, ma urojenia. Symulator iPhone'a nie jest emulatorem - nie może uruchomić kodu ARM.
— duskwuff

16
Wyświetli ikonę w symulatorze przy użyciu poniższej techniki, jednak nasza aplikacja ulega awarii natychmiast po uruchomieniu.
— Matt Hudson,

104

Znalazłem plik .ipa, który chciałem, używając iTunes i skopiowałem go na mój pulpit.

Następnie zmieniłem rozszerzenie na .zipi rozpakowałem je.

Następnie znalazłem folder Payload i przeniosłem aplikację na mój pulpit.

Wreszcie przeniosłem tę aplikację do folderu aplikacji symulatorów iPhone'a znajdującego się pod adresem:

  • HD
  • > Aplikacje
  • > Xcode.app (kliknij prawym przyciskiem myszy - Pokaż zawartość pakietu)
  • > Spis treści
  • > Deweloper
  • > Platformy
  • > iPhoneSimulator.platform
  • > SDK
  • > iPhoneSimulator6.0.sdk
  • > Aplikacje

Mam nadzieję że to pomoże! (Uwaga: niektóre aplikacje ulegają awarii częściej niż inne).


28
@DataGreed: Przeniesiono do HD> Aplikacje> Xcode.app (kliknij prawym przyciskiem myszy - Pokaż zawartość pakietu)> Zawartość> Programista> Platformy> iPhoneSimulator.platform> SDK> iPhoneSimulator6.0.sdk> Aplikacje
— Richard Poole

7
Ścieżka do XCode 4.3 lub nowszego na OSX znajduje się w następującej lokalizacji (zwróć uwagę, że część 5.1 może być inna na twoim komputerze) /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5. 1.sdk / Applications
— Brad Parks,

14
aplikacja wyświetla się w symulatorze .. ale ulega awarii w iOS6 i iOS7
— Sri

1
@DataGreed: Podałeś poprawną lokalizację. Odpowiedź wspomniana przez Keetona pomogła mi w instalacji aplikacji LinkedIn, ale zawiesza się. Jakaś poprawka?
— Jayprakash Dubey

3
Potwierdzam, że ta metoda instalacji działa nawet w marcu 2016 r. (Chociaż rozbił się, ale został zainstalowany)
— jeet.chanchawat

66

W Xcode 6+ i iOS8 + możesz wykonać poniższe proste czynności

  1. Wklej plik .app na komputer.
  2. Otwórz terminal i wklej poniższe polecenia:

    cd desktop

    xcrun simctl install booted xyz.app

  3. Otwórz symulator iPhone'a, kliknij aplikację i użyj

W przypadku wersji poniżej iOS 8 wykonaj następujące proste kroki.

Uwaga: będziesz chciał się upewnić, że Twoja aplikacja jest zbudowana dla wszystkich architektur, symulator znajduje się x386w ustawieniach kompilacji i jest Build Active Architecture Onlyustawiony na No.

  1. Ścieżka: Library-> Application Support-> iPhone Simulator-> 7.1 (lub inna wersja, jeśli jej potrzebujesz) -> Applications
  2. Utwórz nowy folder z nazwą aplikacji
  3. Wejdź do folderu i umieść tutaj plik .app.

23
To polecenie zadziałało, ale aplikacja ulega awarii, ponieważ nie została skompilowana dla symulatora. :(
— JamesDeHart

5
Otrzymywanie komunikatu „Żadne urządzenia nie są uruchamiane”.
— Vijay Sharma

7
Jest to przydatne dla każdego, kto zbudował aplikację na symulatorze i chce ją uruchomić na innym symulatorze. Zwróć uwagę, że pierwotne pytanie dotyczyło pliku .ipa, chociaż nie .app
— ChrisH

5
Jeśli masz plik .ipa, po prostu zmień nazwę na .zip i wyodrębnij go, aby uzyskać .app
— delrox.

3
@Vijay Musiałem ręcznie uruchomić symulator iPhone'a przed krokiem 2, ale poza tym działa dobrze.
— Glorfindel

35

Dla Xcode 9.4.1 i najnowszych symulatorów:

Mam nadzieję, że moja odpowiedź jest tu widziana, ponieważ zajęło mi to trochę czasu, ale właśnie to działało.

Przede wszystkim musisz zbudować i uruchomić aplikację na swoim symulatorze. Następnie otwórz Monitor aktywności . Kliknij dwukrotnie nazwę swojej aplikacji, aby znaleźć jej zawartość.

wprowadź opis obrazu tutaj

Na następnym ekranie otwórz kartę Otwórz pliki i porty i znajdź wiersz z MyAppName.app/MyAppName.

wprowadź opis obrazu tutaj

Skopiuj link, ale pamiętaj, aby zatrzymać się na MyAppName.app . Nie kopiuj ścieżki po niej.

Control kliknij ikonę wyszukiwarki i wybierz Idź do folderu .

wprowadź opis obrazu tutaj]

Wklej ścieżkę i kliknij Enter. Zobaczysz plik MyAppName.app. Skopiuj go na pulpit i spakuj. Przenieś go do wybranego drugiego komputera i rozpakuj plik. Zbuduj losowy projekt, aby otworzyć symulator.

Wreszcie: dosłownie przeciągnij i upuść aplikację z pulpitu do swojego symulatora. Zobaczysz instalację, a aplikacja zostanie otwarta i nie ulegnie awarii.

wprowadź opis obrazu tutaj


7
Głosuj w dół bez komentarza, aby uzyskać odpowiedź, która działa: D awesome
— David Seek

Działa przy przenoszeniu kompilacji deweloperskich do innych symulatorów!
— Alex Pelletier

1
@AlexPelletier, czy nie o to tutaj chodzi? xD
— David Seek

33

Nie można uruchomić pliku ipa w symulatorze, ponieważ plik ipa jest kompilowany dla architektury ARM telefonu, a nie architektury x86 symulatora.

Możesz jednak wyodrębnić aplikację zainstalowaną w lokalnym symulatorze, wysłać ją do kogoś innego i poprosić o skopiowanie jej do symulatora na swoim komputerze.

W terminalu wpisz:

open ~/Library/Application\ Support/iPhone\ Simulator/*/Applications

Spowoduje to otwarcie wszystkich folderów aplikacji wszystkich zainstalowanych symulatorów. Każda z aplikacji będzie znajdować się w folderze o losowej nazwie szesnastkowej. Możesz sprawdzić, która aplikacja jest twoją, zaglądając do każdego z nich. Gdy już znajdziesz, który chcesz, kliknij go prawym przyciskiem myszy i wybierz „Kompresuj ...”, a utworzy plik zip, który możesz łatwo skopiować na inny komputer i rozpakować do podobnej lokalizacji.


2
W systemie iOS 8 został przeniesiony do aplikacji na urządzenie: ~ / Library / Developer / CoreSimulator / Devices / 594C6B4D-AB19-479B-A047-240361C51D95 / data / Applications / Soopen ~/Library/Developer/CoreSimulator/Devices/*/data/Applications
— CC.

Możesz też wyodrębnić go z jednego symulatora, uruchomić inny (zmienić wersję systemu operacyjnego), a następnie zainstalować go tam.
— Alex Zavatone

4
Od iOS 10 musisz skopiować oba szesnastkowe nazwane foldery aplikacji z następujących lokalizacji: ~/Library/Developer/CoreSimulator/Devices/*/data/Containers/Data/Application/ ~/Library/Developer/CoreSimulator/Devices/*/data/Containers/Bundle/Application/W przeciwnym razie aplikacja nie pojawi się w symulatorze.
— Macucula,

31

AKTUALIZACJA: W przypadku Xcode 8.0+ należy wykonać poniższe kroki:

  1. Pobierz aplikację z iTunes
  2. Wybierz pobraną aplikację, kliknij prawym przyciskiem myszy pokaż w wyszukiwarce
  3. Skopiuj .ipaplik na pulpit, zmień jego nazwę na .zipplik
  4. Wypakuj ten .zipplik, a otrzymasz katalog z nazwą aplikacji
  5. Sprawdź katalog, w którym znajdziesz appplik w folderze Payload , skopiuj ten appplik

  6. Iść do ~/Library/Developer/CoreSimulator/Devices

FYI: Libraryfolder jest domyślnie ukryty w systemie Mac, możesz zobaczyć ukryty plik za pomocą poniższego polecenia.

defaults write com.apple.finder AppleShowAllFiles YES;
killall Finder /System/Library/CoreServices/Finder.app

Teraz tutaj zobaczysz wiele katalogów z długimi nazwami szesnastkowymi, wszystkie to symulatory.

Aby znaleźć żądany symulator, posortuj te katalogi za pomocą opcji „Ułożone według> Data modyfikacji”.

Wybierz ten plik symulatora i przejdź do poniższej lokalizacji.

  1. <HEXADECIMAL-SIMULATOR-STRING>/data/Containers/Bundle/Application/
  2. Utwórz nową nazwę folderu za pomocą <download-app-name>i wklej appplik do tego folderu
  3. Otwórz Terminal i uruchom poniższe polecenie, aby zainstalować tę aplikację

    xcrun simctl install booted <APP_FILE_PATH>

Przykład <APP_FILE_PATH>będzie wyglądał jak poniżej:

~/Library/Developer/CoreSimulator/Devices/<HEXADECIMAL-SIMULATOR-STRING>/data/Containers/Bundle/Application/<APP_NAME>

2
Możesz użyć, xcrun simctl listaby znaleźć symulator i kody
— Paulo Amaral

3
Wydaje się, że to działa, ale ścieżka przykładowej aplikacji wymaga znaku / po znaku ~ na początku, a ścieżka musi prowadzić do pliku .app, a nie tylko do katalogu, który go zawiera.
— emery

1
Jeśli chcesz znaleźć aktualnie uruchomiony symulator, możesz użyćxcrun simctl list | grep Booted
— cjbarth

1
jak to może działać niezawodnie w przypadku każdej pobranej aplikacji? ponieważ wymagane są tylko pliki binarne arm, co jeszcze robiłby xcode, aby działał? chyba że chodziło Ci o aplikacje, w których i tak masz wszystkie oryginalne zasoby do ponownego kierowania?
— whitneyland

19

Po pierwsze, IPA zwykle mają tylko wycinki ARM, ponieważ App Store nie akceptuje obecnie plasterków symulatora podczas przesyłania.

Po drugie, od Xcode 8.3 możesz przeciągnąć i upuścić .apppakiet do okna Symulatora, a zostanie on zainstalowany. Możesz znaleźć aplikację w katalogu produktów do kompilacji, ~/Library/Developer/Xcode/DerivedData/projectname-xyzzyabcdefg/Build/Products/Debug-iphonesimulatorjeśli chcesz ją zapisać lub rozpowszechnić wśród innych osób.

Aby zainstalować z wiersza poleceń, użyj xcrun simctl install <device> <path>.

deviceMoże to być identyfikator UUID urządzenia, jego nazwa lub nazwa bootedaktualnie uruchomionego urządzenia.


2
Tak, możesz przeciągnąć i upuścić .appplik, ale to nie kopiuje wszystkiego, czego potrzebuje Symulator, aby go uruchomić. Aplikacja, z którą pracuję, natychmiast się zawiesza. Xcode wer. 8.3.3
— Matthew Poer

5
Z definicji zawiera wszystko, co potrzebne. Kiedy Xcode instaluje aplikację w symulatorze, przekazujemy ścieżkę do .apppliku i to jest instalowane. Twoja aplikacja ulega awarii z innego powodu.
— ruski biskup 13.07.17

6

Możesz uruchomić plik aplikacji projektu w symulatorze - nie plik .ipa.

Możesz go otrzymać od:

Libraries-->Applicationsupport-->iphone simulator-->4.3(its ur simulator version)-->applications-->wtedy możesz zobaczyć wiele plików, takich jak 0CD04F....znajdź plik aplikacji, otwierając go.

Możesz skopiować plik do lokalizacji swojego systemu (który symulator systemu potrzebujesz) Libraries-->Applicationsupport-->iphone simulator-->4.3(its your simulator version)-->applications-->

Następnie otwórz symulator 4.3 (jest to twoja wersja symulatora, w której wkleiłeś). Możesz zobaczyć zainstalowaną tam aplikację.


Otrzymywanie od innych osób:

Powiedz im, aby się dowiedzieli, Libraries-->Applicationsupport-->iphone simulator-->4.3(its ur simulator version)-->applications-->że możesz zobaczyć wiele plików, na przykład 0CD04F....z ich systemu, i otrzymać od nich ten plik.

Po otrzymaniu pliku skopiuj i wklej plik do swojego systemu `Libraries -> Applicationsupport -> iphone simulator -> 4.3 (to twoja wersja symulatora) -> applications -> (wklej plik tutaj ).

Następnie możesz zobaczyć, że aplikacja jest zainstalowana w symulatorze systemu i możesz ją uruchomić po kliknięciu pliku.


5

Kopiuj stąd:
- Uruchom aplikację w Xcode. - Wybierz Finder, przejdź do Idź i kliknij Wybierz Biblioteka / Obsługa aplikacji / Symulator iPhone'a / 7.0.3-64 / Aplikacje - Wybierz folder 32-bitowy Skopiuj swoją aplikację.

Wklej tutaj:
- /Applications/Xcode-Beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhone Simulator. SDK / Applications
- wklej tutaj i uruchom symulator.


4

Z Xcode 6:

Bardzo możliwe jest zbudowanie i zainstalowanie symulatora.

Zrobiłem to, kopiując konfigurację kompilacji debugowania (nazwałem ją SimRelease dla mojego przykładu poniżej) w ustawieniach projektu. Zmieniłem architektury na i386 i x86_64 (nie jestem pewien, jak to było konieczne), ale kluczową różnicą w zmianie między skopiowaną konfiguracją kompilacji jest kompilacja dla aktywnej architektury ustawiona na NIE. Następnie kilka prostych narzędzi wiersza poleceń zrobi resztę!

xcodebuild -scheme YOUR_SCHEME -configuration SimRelease -sdk iphonesimulator8.1

W zależności od tego, gdzie masz zestaw DerivedData, musisz znaleźć wyprowadzony folder .app. Po znalezieniu możesz go po prostu zainstalować na dowolnym urządzeniu symulującym. Aby znaleźć identyfikator UUID urządzenia, otwórz Xcode i przejdź do Okno-> Urządzenia, zobaczysz listę instancji urządzeń i możesz pobrać UUID. W przypadku trywialnego skryptu możesz pobrać je wszystkie z: ~ / Library / Developer / CoreSimulator / Devices / i zainstalować na każdym urządzeniu.

Stamtąd proste polecenie do zainstalowania na urządzeniu to:

xcrun simctl zainstaluj DEVICE_ID APP_FOLDER_LOCATION

Oto prosty skrypt powłoki, aby pobrać aplikację i zainstalować ją na każdym urządzeniu:

app_dir=$1
current_dir=$(pwd)
cd ~/Library/Developer/CoreSimulator/Devices/
devices=$(ls -d */)
cd "$current_dir"
for device in $devices
do
    device_id=${device%/}
    xcrun simctl install "$device_id" "$app_dir"
done

Mam nadzieję że to pomoże! Zajęło mi trochę czasu, zanim wymyśliłem najlepszy sposób, aby to zrobić.


ten skrypt jest krótszy: xcrun simctl instaluje uruchomioną APP_FILE_PATH Ale po zainstalowaniu aplikacji na symulatorze aplikacja nie może działać
— Đông Hà

4

W przypadku Xcode 10 oto prosty sposób, który zadziałał dla mnie w przypadku debugowania IPA (profile programistyczne)

  1. Rozpakuj plik IPA, aby uzyskać folder ładunku.
  2. W folderze ładunku znajduje się plik wykonywalny aplikacji.
  3. Przeciągnij i upuść aplikację do otwartego symulatora. (Możesz zobaczyć zielony przycisk dodawania po przeciągnięciu go nad symulatorem)

Powinien zainstalować tę aplikację na tym symulatorze.


U mnie działa, zmieniłem nazwę „my-app.ipa” na „my-app.ipa.zip”, a następnie rozpakowałem ją za pomocą aplikacji Finder na macOS. Jeśli chcesz zainstalować aplikację za pomocą terminala:xcrun simctl install "simulator-name" /path/to/my-app.app
— Alex Buicescu

0

Krok do uruchomienia w innym symulatorze bez repozytorium kodu: -

Najpierw utwórz aplikację .app, budując swój projekt (w folderze projektu w Xcode) i wklej go w odpowiedniej lokalizacji (zobacz zdjęcie, aby uzyskać większą przejrzystość)

wprowadź opis obrazu tutaj

  1. Pobierz Xcode
  2. Utwórz projekt demonstracyjny i uruchom symulator, w którym chcesz uruchomić aplikację.
  3. Skopiuj plik .app do określonej lokalizacji (np .: - Pulpit).
  4. cd Desktop i uruchom polecenie (xcrun simctl install booted appName.app),
  5. Aplikacja zostanie zainstalowana w uruchomionym symulatorze.
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.