İPhone simülatörüme bir .ipa dosyasını nasıl yükleyebilirim


165

Mac bilgisayarımda çalışan bir iphone simülatörü var.

Bir .ipa dosyam var, lütfen bana simülatöre nasıl yükleyebileceğimi söyleyebilir misiniz?

Yanıtlar:


137

Yapamazsın. İTunes mağazası üzerinden indirildiyse, farklı bir işlemci için üretildi ve simülatörde çalışmaz.


12
Simülatörde bir iPhone uygulaması başlatmanın tek yolunun, XCode'dan Simulator'un aktif hedef olmasıyla kendiniz derlemesini eklemektir.
Alex Wayne

1
projenin uygulama dosyasını simülatörde çalıştırabilirsiniz.
humblePilgrim

3
aşağıdaki birisi bunu başarmış gibi görünüyor. hackish, ama eğer işe yararsa bunu bilmek yararlıdır.
Randy L

13
Simülatörde iPhone uygulamaları çalıştırdığını iddia eden herkes hayali. İPhone simülatörü bir emülatör değildir - ARM kodunu çalıştıramaz.
duskwuff -inactive-

16
Aşağıdaki tekniği kullanarak simülatördeki simgeyi gösterecektir, ancak uygulamamız çalıştırıldığında hemen kilitleniyor.
Matt Hudson

104

İTunes'u kullanmak istediğim bir .ipa dosyası buldum ve masaüstüme kopyaladım.

Bundan sonra uzantıyı değiştirdim ve çıkardım .zip.

Sonra Payload klasörünü buldum ve uygulamayı masaüstüme taşıdım.

Sonunda bu uygulamayı iPhone simülatörleri uygulamaları klasörüne taşıdım:

  • HD
  • > Uygulamalar
  • > Xcode.app (sağ tıklayın - Paket İçeriğini Göster)
  • > İçindekiler
  • > Geliştirici
  • > Platformlar
  • > iPhoneSimulator.platform
  • > SDK'lar
  • > iPhoneSimulator6.0.sdk
  • > Uygulamalar

Bu yardımcı olur umarım! (Not: Bazı uygulamalar diğerlerinden daha sık kilitlenir.)


28
@DataGreed: HD> Uygulamalar> Xcode.app (sağ tıklama - Paket İçeriğini Göster)> İçindekiler> Geliştirici> Platformlar> iPhoneSimulator.platform> SDK'lar> iPhoneSimulator6.0.sdk> Uygulamalar
Richard Poole

7
OSX'te XCode 4.3 veya daha yeni bir yol aşağıdaki konumdadır (5.1 parçasının makinenizde farklı olabileceğini unutmayın) /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5. 1.sdk / Uygulamalar
Brad Parks

14
uygulama simülatörde dispalying .. ama hem iOS6 hem de iOS7 çöküyor
Sri

1
@DataGreed: Doğru konumdan bahsettiniz. Keeton tarafından belirtilen cevap LinkedIn uygulamasını yüklemede bana yardımcı oldu ancak kilitleniyor. Herhangi bir düzeltme var mı?
Jayprakash Dubey

3
Bu kurulum yönteminin Mart 2016'da bile çalıştığını onaylıyorum. (
Çökmesine

66

Xcode 6+ ve iOS8 + 'da aşağıdaki basit adımları uygulayabilirsiniz

  1. Masaüstüne .app dosyasını yapıştırın.
  2. Terminali açın ve aşağıdaki komutları yapıştırın:

    cd desktop

    xcrun simctl install booted xyz.app

  3. İPhone simülatörünü açın ve uygulamaya tıklayın ve kullanın

İOS 8'in altındaki sürümler için aşağıdaki basit adımları uygulayın.

Not: Uygulamanızın tüm mimariler x386için oluşturulduğundan , Simülatörün Oluşturma Ayarları'nda olduğundan ve olarak Build Active Architecture Onlyayarlandığından emin olmak istersiniz No.

  1. Yol: Kütüphane-> Uygulama Desteği-> iPhone Simulator-> 7.1 (veya ihtiyacınız varsa başka bir sürüm) -> Uygulamalar
  2. Uygulamanın adıyla yeni bir klasör oluşturun
  3. Klasörün içine gidin ve .app dosyasını buraya yerleştirin.

23
Bu komut çalıştı, ancak simülatör için oluşturulmadığı için uygulama çöküyor. :(
JamesDeHart

5
"Hiçbir cihaz önyüklenmedi."
Vijay Sharma

7
Bu, simülatör üzerinde bir uygulama oluşturan ve farklı bir simülatörde çalıştırmak isteyen herkes için yararlıdır. Orijinal sorunun bir .app olmasa da bir .ipa dosyasıyla ilgili olduğunu unutmayın
ChrisH

5
Bir .ipa'nız varsa, sadece .zip olarak yeniden adlandırın ve .app
delrox

3
@Vijay Adım 2'den önce iPhone Simulator'ı manuel olarak başlatmak zorunda kaldım, ancak aksi takdirde bu iyi çalışıyor.
Glorfindel

36

Xcode 9.4.1 ve en yeni Simülatörler için:

Umarım cevabım burada görülüyor, çünkü bu beni anlamak için biraz zaman aldı ama işe koyuldum.

Öncelikle Uygulamayı simülatörünüzde oluşturmanız ve çalıştırmanız gerekir. Ardından Etkinlik Monitörü'nü açarsınız . İçeriğini bulmak için Uygulamanızın adını çift tıklayın.

resim açıklamasını buraya girin

Bir sonraki ekranda Dosyaları ve Bağlantı Noktalarını Aç sekmesini açın ve Uygulamam.app/MyAppName ile satırı bulun.

resim açıklamasını buraya girin

Bağlantıyı kopyalayın, ancak Uygulamam.app adresinde durduğunuzdan emin olun . İzleyen yolu kopyalamayın.

Kontrol bulucu simgesini tıklayın ve Klasöre git'i seçin .

resim açıklamasını buraya girin]

Yolu yapıştırın ve enter'a tıklayın. MyAppName.app dosyanızı göreceksiniz. Masaüstüne kopyalayın ve sıkıştırın. İstediğiniz 2. bilgisayara taşıyın ve dosyayı açın. Bir simülatörün açık olması için rastgele bir proje oluşturun.

Son olarak: Uygulamayı Masaüstünüzden Simülatörünüze sürükleyip bırakın. Yüklemek göreceksiniz ve App açar ve yok değil çökmesine.

resim açıklamasını buraya girin


7
çalışan bir cevap için yorum yapmadan aşağı oy: D awesome
David Seek

Geliştirme yapılarını diğer simülatörlere aktarmak için çalışır!
Alex Pelletier

1
@AlexPelletier burada konuştuğumuz nokta değil mi? xD
David

33

Simülatörde bir ipa dosyasını çalıştıramazsınız çünkü ipa dosyası simülatörün x86 mimarisi için değil, bir telefonun ARM mimarisi için derlenmiştir.

Bununla birlikte, yerel bir simülatörde yüklü bir uygulamayı ayıklayabilir, başka birine gönderebilir ve makinelerindeki simülatöre kopyalamasını sağlayabilirsiniz.

Terminalde şunu yazın:

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

Bu, kurduğunuz tüm simülatörlerin tüm uygulama klasörlerini açacaktır. Uygulamaların her biri rastgele onaltılık bir ada sahip bir klasörde olacaktır. Her birinin içine bakarak uygulamanızın hangisi olduğunu öğrenebilirsiniz. Hangisini istediğinizi öğrendikten sonra, sağ tıklayın ve "Sıkıştır ..." ı seçin ve kolayca başka bir bilgisayara kopyalayabileceğiniz ve benzer bir konuma açabileceğiniz bir zip dosyası oluşturacaktır.


2
İOS 8'de cihaz uygulamalarına taşındı: ~ / Library / Developer / CoreSimulator / Devices / 594C6B4D-AB19-479B-A047-240361C51D95 / data / Applications / Soopen ~/Library/Developer/CoreSimulator/Devices/*/data/Applications
CC.

Ya da bir simülatörünüzden çıkarabilir, diğerini başlatabilir (işletim sistemi sürümünü değiştirin) ve oraya yükleyebilirsiniz.
Alex Zavatone

4
İOS 10'dan beri, her iki onaltılık adlandırılmış uygulama klasörünü aşağıdaki konumlardan kopyalamanız gerekir: ~/Library/Developer/CoreSimulator/Devices/*/data/Containers/Data/Application/ ~/Library/Developer/CoreSimulator/Devices/*/data/Containers/Bundle/Application/Aksi takdirde Uygulama simülatörde görünmez.
Macucula

31

GÜNCELLEME: Xcode 8.0+ için aşağıdaki adımları izlemeniz gerekir:

  1. İTunes'dan uygulama indirin
  2. İndirilen uygulamayı seçin, bulucuda sağ tıklayın
  3. Kopya .ipa, Masaüstüne dosyayı yeniden adlandırın .zipdosyası
  4. Bu .zipdosyayı ayıklayın ve uygulama adıyla bir dizin alacaksınız
  5. Yük klasöründe appdosyayı bulacağınızdan emin olun , bu dosyayı kopyalayınapp

  6. Adresine git ~/Library/Developer/CoreSimulator/Devices

Bilginize: Libraryklasör mac'ta varsayılan olarak gizlidir, aşağıdaki komutu kullanarak gizli dosyayı görebilirsiniz.

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

Şimdi burada uzun onaltılık isimlere sahip birçok dizin göreceksiniz, bunların hepsi simülatörler.

İstediğiniz simülatörü bulmak için "Düzenleyen> Değiştirme Tarihi" ni kullanarak bu dizinleri sıralayın.

Bu simülatör dosyasını seçin ve aşağıdaki konuma gidin.

  1. <HEXADECIMAL-SIMULATOR-STRING>/data/Containers/Bundle/Application/
  2. İle yeni bir klasör adı oluşturun <download-app-name>ve appdosyayı bu klasöre yapıştırın
  3. Terminal'i açın ve bu uygulamayı yüklemek için aşağıdaki komutu çalıştırın

    xcrun simctl install booted <APP_FILE_PATH>

Örnek <APP_FILE_PATH>aşağıdaki gibi olacaktır:

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

2
xcrun simctl listSimülatörü ve kodları bulmak için kullanabilirsiniz
Paulo Amaral

3
Bu işe yarıyor gibi görünüyor, ancak örnek uygulama yolunuzun başında ~ işaretinden sonra / gerekiyor ve yolun yalnızca onu içeren dizine değil .app dosyasına kadar gitmesi gerekiyor.
emery

1
Şu anda çalışan simülatörü bulmak istiyorsanız kullanabilirsinizxcrun simctl list | grep Booted
cjbarth

1
Bu, indirilen herhangi bir uygulama için nasıl güvenilir bir şekilde çalışabilir? yalnızca arm ikili dosyaları gerektiğinden, xcode'un çalışması için başka ne yapmalı? yalnızca tüm orijinal öğelerin yeniden hedeflenmesini istediğiniz uygulamalar için kastetmedikçe?
whitneyland

19

Her şeyden önce, IPA'lar genellikle ARM dilimleri içerir, çünkü App Store şu anda yüklemelerde Simülatör dilimlerini kabul etmemektedir.

İkincisi, Xcode 8.3'den itibaren bir .apppaketi Simulator penceresine sürükleyip bırakabilirsiniz ve yüklenecektir. Uygulamayı ~/Library/Developer/Xcode/DerivedData/projectname-xyzzyabcdefg/Build/Products/Debug-iphonesimulatorkaydetmek veya başkalarına dağıtmak istiyorsanız uygulamayı yapı ürünleri dizininizde bulabilirsiniz .

Komut satırından yüklemek için kullanın xcrun simctl install <device> <path>.

devicecihaz UUID'si, adı veya bootedşu anda önyüklenen cihaz anlamına gelebilir .


2
Evet, .appdosyayı sürükleyip bırakabilirsiniz, ancak bu Simülatörün çalıştırmak için ihtiyaç duyduğu her şeyi kopyalamaz. Uygulama hemen çöküyor ile çalışıyorum. Xcode s. 8.3.3
Matthew Poer

5
Tanım gereği, gereken her şeyi içerir. Xcode Simulator'a bir uygulama yüklediğinde, .appdosyaya bir yol aktarıyoruz ve yüklenen de bu. Uygulamanız farklı bir nedenden dolayı kilitleniyor.
russbishop

6

.İpa dosyasını değil, projenin uygulama dosyasını simülatörde çalıştırabilirsiniz.

Şunlardan alabilirsiniz:

Libraries-->Applicationsupport-->iphone simulator-->4.3(its ur simulator version)-->applications-->o zaman u 0CD04F....uygulama dosyasını bulmak gibi birçok dosyayı açarak görebilirsiniz .

Dosyayı sisteminize (hangi sistem simülatörünün çalıştırılması gerekir) kopyalayabilirsiniz Libraries-->Applicationsupport-->iphone simulator-->4.3(its your simulator version)-->applications-->

Sonra simülatör 4.3'ü açın (yapıştırdığınız simülatör sürümünüz). Uygulamanın yüklü olduğunu görebilirsiniz.


Diğer insanlardan almak:

Lütfen onlara sistemlerinden Libraries-->Applicationsupport-->iphone simulator-->4.3(its ur simulator version)-->applications-->gibi birçok dosyayı görebileceğini 0CD04F....ve bu dosyayı onlardan alabileceğini öğrenmelerini söyleyin.

Dosyayı aldıktan sonra, lütfen dosyayı kopyalayın ve sisteminize yapıştırın. ).

Sonra uygulamanın sistem simülatörünüzde yüklü olduğunu görebilir ve dosyayı tıkladıktan sonra çalıştırabilirsiniz.


5

Buradan Kopyalayın:
- Uygulamayı Xcode'da çalıştırın. - Finder'ı seçin ve Git'e gidin ve Kütüphane Kitaplığı / Uygulama Desteği / iPhone Simülatörü / 7.0.3-64 / Uygulamalar'ı seçin - 32 bit klasörü seçin Uygulamanızı kopyalayın.

Buraya Yapıştır:
- /Applications/Xcode-Beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhone Simulator. SDK / Uygulamalar
- Buraya yapıştırın ve simülatörü çalıştırın.


4

Xcode 6 ile:

Bir simülatör kurmak ve kurmak çok mümkündür.

Proje ayarlarında hata ayıklama yapı yapılandırmasını (aşağıdaki örneğim için SimRelease olarak adlandırdım) kopyalayarak yaptım. Mimarileri i386 ve x86_64 olarak değiştirdim. Bundan sonra birkaç basit komut satırı aracı gerisini halleder!

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

DerivedData ayarınızın nerede olduğuna bağlı olarak, çıktısı alınmış .app klasörünü bulmanız gerekir. Bulduktan sonra herhangi bir simülatör cihazına yükleyebilirsiniz. Aygıt UUID'sinin açık Xcode'unu bulmak ve Pencere-> Aygıtlar'a gitmek için aygıt örneklerinin listesini görürsünüz ve UUID'leri alabilirsiniz. Önemsiz bir komut dosyası için hepsini ~ ~ Library / Developer / CoreSimulator / Devices / adresinden alabilir ve her cihaza yükleyebilirsiniz.

Oradan bir cihaza yüklemek için basit komut:

xcrun simctl install DEVICE_ID APP_FOLDER_LOCATION

İşte uygulamayı alıp her cihaza yüklemek için basit bir kabuk betiği:

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

Bu yardımcı olur umarım! Bunu yapmanın en iyi yolunu bulmak için bana biraz zaman ayırdı.


Bu komut dosyası daha kısadır: xcrun simctl yükleme önyükleme APP_FILE_PATH Ancak simülatöre uygulama yüklediğinizde, uygulama çalışmaz
Đông Hà

4

Xcode 10 için, hata ayıklama IPA'sında benim için çalışmanın kolay bir yolu (geliştirme profilleri)

  1. Payload klasörünü almak için IPA'yı açın.
  2. Yük klasörü içinde uygulama yürütülebilir.
  3. Uygulamayı açık bir simülatöre sürükleyip bırakın. (Simülatörün üzerine sürüklediğinizde yeşil bir ekleme düğmesi görebilirsiniz)

Bu uygulamayı o simülatöre yüklemelidir.


Benim için çalışıyor, "my-app.ipa" adını "my-app.ipa.zip" olarak değiştirdim ve bundan sonra macos Finder uygulamasını kullanarak sıkıştırmayı açtım. Terminali kullanarak uygulamayı yüklemek istiyorsanız:xcrun simctl install "simulator-name" /path/to/my-app.app
Alex Buicescu

0

Herhangi bir kod repo olmadan farklı simülatörde çalıştırmak için adım: -

Öncelikle projenizi (Xcode'daki proje klasörü altında) oluşturarak bir .app oluşturun ve uygun bir yere yapıştırın (Daha fazla netlik için resme bakın)

resim açıklamasını buraya girin

  1. Xcode'u indirin
  2. Bir demo projesi oluşturun ve uygulamayı çalıştırmak istediğiniz simülatörü başlatın.
  3. .App dosyasını belirli bir konuma kopyalayın (örn: - Masaüstü).
  4. cd Desktop ve komutu çalıştırın (xcrun simctl install booted appName.app),
  5. Uygulama, belirli önyükleme simülatörüne yüklenecek.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.