Como posso instalar um arquivo .ipa no meu simulador de iPhone

164

Eu tenho um simulador de iphone rodando no meu Mac.

Eu tenho um arquivo .ipa, você pode me dizer como posso instalá-lo no simulador?

yinglcs
fonte

Respostas:

136

Você não pode. Se ele foi baixado na loja do iTunes, ele foi criado para um processador diferente e não funcionará no simulador.

agosto
fonte
12
Eu acrescentaria que a única maneira de iniciar um aplicativo para iPhone no simulador é compilá-lo a partir do XCode com o Simulador sendo o alvo ativo.
511 Alex Wayne
1
você pode executar o arquivo de aplicativo do projeto no simulador.
precisa saber é o seguinte
3
parece que alguém abaixo teve algum sucesso ao fazer isso. hackish, mas se funcionar, é útil saber.
Randy L
13
Qualquer pessoa que afirme ter executado aplicativos do iPhone no Simulador é ilusória. O simulador do iPhone não é um emulador - ele não pode executar o código ARM.
duskwuff -inactive-
16
Ele mostrará o ícone no simulador usando a técnica abaixo; no entanto, nosso aplicativo trava imediatamente quando executado.
11553 Matt Hudson
104

Encontrei um arquivo .ipa que queria usar o iTunes e o copiei na minha área de trabalho.

Depois disso, mudei a extensão para .zipe extraí-a.

Em seguida, encontrei a pasta Payload e movi o aplicativo para dentro da minha área de trabalho.

Finalmente, mudei esse aplicativo para a pasta de aplicativos do meu simulador de iPhone, encontrada em:

  • HD
  • > Aplicações
  • > Xcode.app (clique com o botão direito do mouse - Mostrar conteúdo do pacote)
  • > Conteúdo
  • > Desenvolvedor
  • > Plataformas
  • > iPhoneSimulator.platform
  • > SDKs
  • > iPhoneSimulator6.0.sdk
  • > Aplicações

Espero que isto ajude! (Nota: alguns aplicativos travam com mais frequência que outros.)

Keeton Feavel
fonte
28
@DataGreed: Foi movido para HD> Aplicativos> Xcode.app (clique com o botão direito do mouse - Mostrar conteúdo do pacote)> Conteúdo> Desenvolvedor> Plataformas> iPhoneSimulator.platform> SDKs> iPhoneSimulator6.0.sdk> Aplicativos
Richard Poole
7
O caminho para o XCode 4.3 ou mais recente no OSX está no seguinte local (observe que a parte 5.1 pode ser diferente em sua máquina) /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5. 1.sdk / Applications
Brad Parks
14
aplicação dispalying no simulador .. mas sua falhando em ambas iOS6 e iOS7
Sri
1
@DataGreed: você mencionou a localização correta. A resposta mencionada por Keeton me ajudou a instalar o aplicativo do LinkedIn, mas está travando. Alguma correção?
precisa saber é o seguinte
3
Eu estou confirmando este método de instalação para ser trabalhando mesmo em março de 2016. (Embora caiu, Mas Instalada)
jeet.chanchawat
66

No Xcode 6+ e iOS8 +, você pode executar as etapas simples abaixo

  1. Cole o arquivo .app na área de trabalho.
  2. Abra o terminal e cole os comandos abaixo:

    cd desktop

    xcrun simctl install booted xyz.app

  3. Abra o simulador do iPhone, clique no aplicativo e use

Para versões abaixo do iOS 8, execute as seguintes etapas simples.

Nota: Você deseja garantir que seu aplicativo seja criado para todas as arquiteturas, se o Simulador está x386nas Configurações de compilação e Build Active Architecture Onlydefinido como No.

  1. Caminho: Biblioteca-> Suporte a Aplicativos-> iPhone Simulator-> 7.1 (ou outra versão, se necessário) -> Aplicativos
  2. Crie uma nova pasta com o nome do aplicativo
  3. Vá para dentro da pasta e coloque o arquivo .app aqui.
sinh99
fonte
23
Este comando funcionou, mas o aplicativo falha porque não foi criado para o simulador. :(
JamesDeHart
5
Obtendo "Nenhum dispositivo foi inicializado".
Vijay Sharma
7
Isso é útil para quem criou um aplicativo no simulador e deseja executá-lo em um simulador diferente. Observe a pergunta original sobre um arquivo .ipa embora não um .app
ChrisH
5
Se você tem um .ipa, apenas mudar o nome para .zip e extraí-lo para obter o .app
delrox
3
@Vijay Eu tive que iniciar manualmente o iPhone Simulator antes da etapa 2, mas, caso contrário, isso funcionará bem.
Glorfindel
35

Para o Xcode 9.4.1 e os simuladores mais recentes:

Espero que minha resposta esteja sendo vista aqui em baixo, pois demorei um pouco para descobrir, mas eu consegui.

Antes de tudo, você precisa criar e executar o aplicativo no seu simulador. Então você abre o Monitor de Atividade . Clique duas vezes no nome do seu aplicativo para encontrar o conteúdo.

insira a descrição da imagem aqui

Na próxima tela, abra a guia Abrir arquivos e portas e localize a linha com MyAppName.app/MyAppName.

insira a descrição da imagem aqui

Copie o link, mas certifique-se de parar no MyAppName.app . Não copie o caminho a seguir.

Controle, clique no ícone do localizador e selecione Ir para a pasta .

insira a descrição da imagem aqui]

Cole o caminho e clique em Enter. Você verá seu arquivo MyAppName.app. Copie-o para a área de trabalho e feche-o. Mova-o para o segundo computador desejado e descompacte o arquivo. Crie um projeto aleatório para ter um simulador aberto.

Por fim: arraste e solte literalmente o aplicativo da área de trabalho no simulador. Você verá a instalação e o aplicativo será aberto e não trava.

insira a descrição da imagem aqui

David Seek
fonte
7
downvote sem um comentário a uma resposta que funciona: D incrível
David Procure
Funciona para transferir compilações de desenvolvedores para outros simuladores!
Alex Pelletier
1
@AlexPelletier não é esse o ponto do que estamos falando aqui? xD
David Seek
33

Você não pode executar um arquivo ipa no simulador porque o arquivo ipa é compilado para a arquitetura ARM de um telefone, não para a arquitetura x86 do simulador.

No entanto, você pode extrair um aplicativo instalado em um simulador local, enviá-lo para outra pessoa e fazer com que eles copiem para o simulador em sua máquina.

No terminal, digite:

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

Isso abrirá todas as pastas de aplicativos de todos os simuladores que você instalou. Cada um dos aplicativos estará em uma pasta com um nome hexadecimal aleatório. Você pode descobrir qual é o seu aplicativo olhando dentro de cada um deles. Depois de descobrir qual você deseja, clique com o botão direito do mouse e escolha "Compactar ..." e ele criará um arquivo zip que você poderá copiar facilmente para outro computador e descompactar em um local semelhante.

rjmunro
fonte
2
No iOS 8, foi movido para aplicativos por dispositivo: ~ / Library / Developer / CoreSimulator / Devices / 594C6B4D-AB19-479B-A047-240361C51D95 / data / Applications / Soopen ~/Library/Developer/CoreSimulator/Devices/*/data/Applications
CC.
Ou você pode extraí-lo do seu simulador, iniciar outro (alternar a versão do SO) e instalá-lo nele.
Alex Zavatone
4
Desde o iOS 10, você precisa copiar as duas pastas de aplicativos nomeadas hexadecimais dos seguintes locais: ~/Library/Developer/CoreSimulator/Devices/*/data/Containers/Data/Application/ ~/Library/Developer/CoreSimulator/Devices/*/data/Containers/Bundle/Application/Caso contrário, o aplicativo não será exibido no simulador.
Macucula 14/09
31

ATUALIZAÇÃO: Para o Xcode 8.0+, você precisa seguir as etapas abaixo:

  1. Baixar aplicativo do iTunes
  2. Selecione o aplicativo baixado, clique com o botão direito do mouse em mostrar no localizador
  3. Copie o .ipaarquivo para a área de trabalho, renomeie-o para .ziparquivo
  4. Extraia esse .ziparquivo e você obterá o diretório com o nome do aplicativo
  5. Verifique se o diretório encontrará o apparquivo na pasta Payload , copie este apparquivo

  6. Vamos para ~/Library/Developer/CoreSimulator/Devices

FYI: Librarypasta está oculta por padrão no mac, você pode ver o arquivo oculto usando o comando abaixo.

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

Agora, aqui você verá muitos diretórios com nomes hexadecimais longos, todos eles são simuladores.

Para encontrar o simulador desejado, classifique esses diretórios usando "Organizado por> Data de modificação".

Selecione esse arquivo do simulador e vá para o local abaixo.

  1. <HEXADECIMAL-SIMULATOR-STRING>/data/Containers/Bundle/Application/
  2. Crie um novo nome de pasta com <download-app-name>e cole o apparquivo nessa pasta
  3. Abra o Terminal e execute o comando abaixo para instalar este aplicativo

    xcrun simctl install booted <APP_FILE_PATH>

Exemplo <APP_FILE_PATH>será o seguinte:

~/Library/Developer/CoreSimulator/Devices/<HEXADECIMAL-SIMULATOR-STRING>/data/Containers/Bundle/Application/<APP_NAME>
Kampai
fonte
2
Você pode usar xcrun simctl listpara encontrar os códigos de simulador e
Paulo Amaral
3
Isso parece funcionar, mas o caminho do aplicativo de exemplo precisa de um / após o ~ no início, e o caminho precisa ir até o arquivo .app, não apenas o diretório que o contém.
30917 emery emery
1
Se você quiser encontrar o simulador que está actualmente em execução você pode usarxcrun simctl list | grep Booted
cjbarth
1
como isso pode funcionar de maneira confiável para qualquer aplicativo baixado? como apenas binários de braço são necessários, o que mais o xcode faria para fazê-lo funcionar? a menos que você pretenda apenas para aplicativos em que você tenha todos os recursos originais para redirecionar de qualquer maneira?
whitneyland
19

Primeiro, os IPAs geralmente só têm fatias do ARM porque a App Store atualmente não aceita fatias do Simulator nos uploads.

Em segundo lugar, a partir do Xcode 8.3, você pode arrastar e soltar um .apppacote na janela do Simulador e ele será instalado. Você pode encontrar o aplicativo no diretório de produtos de construção, ~/Library/Developer/Xcode/DerivedData/projectname-xyzzyabcdefg/Build/Products/Debug-iphonesimulatorse desejar salvá-lo ou distribuí-lo para outras pessoas.

Para instalar a partir da linha de comando, use xcrun simctl install <device> <path>.

devicepode ser o UUID do dispositivo, seu nome ou o bootedque significa o dispositivo inicializado no momento.

russbishop
fonte
2
Sim, você pode arrastar e soltar o .apparquivo, mas isso não copia tudo o que o Simulador precisa para executá-lo. Aplicativo com o qual estou trabalhando falha imediatamente. Xcode v. 8.3.3
Matthew Poer
5
Inclui, por definição, tudo o que é necessário. Quando o Xcode instala um aplicativo no Simulador, passamos um caminho para o .apparquivo e é isso que é instalado. Seu aplicativo está travando por um motivo diferente.
22417 russbishop
6

Você pode executar o arquivo de aplicativo do projeto no simulador - não o arquivo .ipa.

Você pode obtê-lo em:

Libraries-->Applicationsupport-->iphone simulator-->4.3(its ur simulator version)-->applications-->então você pode ver muitos arquivos, como 0CD04F....descobrir o arquivo do seu aplicativo, abrindo-o.

Você pode copiar o arquivo para o local do sistema (qual simulador de sistema você precisa executar) Libraries-->Applicationsupport-->iphone simulator-->4.3(its your simulator version)-->applications-->

Em seguida, abra o simulador 4.3 (sua versão do simulador onde você colou). Você pode ver o aplicativo instalado lá.


Obtendo de outras pessoas:

Por favor, diga a eles para descobrirem, Libraries-->Applicationsupport-->iphone simulator-->4.3(its ur simulator version)-->applications-->então você pode ver muitos arquivos como 0CD04F....no sistema deles e receber esse arquivo deles.

Depois que eles obtiverem o arquivo, copie e cole o arquivo no sistema `Bibliotecas -> Suporte de Aplicativos -> simulador de iPhone -> 4.3 (é a sua versão do simulador) -> aplicativos -> (cole o arquivo aqui )

Então você pode ver o aplicativo instalado no simulador do sistema e executá-lo depois de clicar no arquivo.

humblePilgrim
fonte
5

Copiar daqui:
- Execute o aplicativo no Xcode. - Selecione Finder, vá para Go e clique em selecione Library Library / Application Support / iPhone Simulator / 7.0.3-64 / Applications - Selecionar pasta de 32 bits Copie seu aplicativo.

Cole aqui:
- /Applications/Xcode-Beta.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhone Simulator. SDK / Aplicativos
- Cole aqui e execute o simulador.

Satheesh Guduri
fonte
4

Com o Xcode 6:

É muito possível construir e instalar em um simulador.

Eu fiz isso copiando a configuração de compilação de depuração (chamei de SimRelease para o meu exemplo abaixo) nas configurações do projeto. Alterei as arquiteturas para i386 e x86_64 (não sei o quão necessário isso era), mas a principal diferença entre as configurações de compilação copiada é compilação para arquitetura ativa definida como NÃO. Depois disso, algumas ferramentas simples de linha de comando farão o resto!

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

Dependendo de onde você definiu seu DerivedData, você precisa encontrar a pasta .app gerada. Depois de encontrá-lo, você pode simplesmente instalá-lo em qualquer dispositivo simulador. Para encontrar o Xcode aberto do UUID do dispositivo e vá para Janela-> Dispositivos, você verá a lista de instâncias do dispositivo e poderá pegar os UUIDs. Para um script trivial, você pode pegar todos eles em: ~ / Library / Developer / CoreSimulator / Devices / e instalar em todos os dispositivos.

A partir daí, o comando simples para instalar em um dispositivo é:

instalação xcrun simctl DEVICE_ID APP_FOLDER_LOCATION

Aqui está um script de shell simples para pegar o aplicativo e instalá-lo em todos os dispositivos:

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

Espero que isto ajude! Levei um tempo para descobrir a melhor maneira de fazê-lo.

rfrittelli
fonte
esse script é mais curto: xcrun simctl instalação APP_FILE_PATH inicializado Mas quando instalar o aplicativo para simulador, o aplicativo não pode ser executado
Dong Ha
4

Para o Xcode 10, aqui está uma maneira fácil que funcionou para mim para um IPA de depuração (perfis de desenvolvimento)

  1. Descompacte o IPA para obter a pasta Payload.
  2. Na pasta Carga útil, o aplicativo é executável.
  3. Arraste e solte o aplicativo em um simulador aberto. (Você pode ver um botão verde de adição ao arrastá-lo sobre o simulador)

Ele deve instalar esse aplicativo nesse simulador.

Swasidhant
fonte
Funciona para mim, alterei o nome de "my-app.ipa" para "my-app.ipa.zip" e depois descompactei o arquivo usando o aplicativo macos Finder. Se você deseja instalar o aplicativo usando o terminal:xcrun simctl install "simulator-name" /path/to/my-app.app
Alex Buicescu
0

Etapa para executar em um simulador diferente sem qualquer repo código: -

Primeiro, crie um .app criando seu projeto (na pasta do projeto no Xcode) e cole-o em um local apropriado (veja a foto para mais clareza)

insira a descrição da imagem aqui

  1. Baixar Xcode
  2. Crie um projeto de demonstração e inicie o simulador no qual deseja executar o aplicativo.
  3. Copie o arquivo .app em um local específico (por exemplo: - Área de trabalho).
  4. cd Desktop e execute o comando (xcrun simctl install boototed appName.app),
  5. O aplicativo será instalado no simulador de inicialização específico.
Anurag Bhakuni
fonte