Impossibile eseguire l'app nel simulatore: si è verificato un errore durante l'esecuzione (Domain = LaunchServicesError, Code = 0)


91

Dopo aver compilato con successo il progetto in Xcode 6, non riesco a eseguirlo nel simulatore con il messaggio sopra menzionato. Ho fatto tutte le ricerche possibili, ho provato di tutto e ancora nessun progresso.

Non sto lavorando con swift, né utilizzo widget o estensioni, quindi per favore non suggerire soluzioni causate da questi come si può vedere in domande simili.

Se qualcuno ha trovato una possibile causa (o soluzione !!) diversa da queste , per favore aiutatemi. Grazie


sarebbe utile se potessi elencare ciò che hai tentato di escludere da tali consigli.
donmarkusi

Il problema è ora risolto, ma solo per informazione ho provato: - eseguire una pulizia - rimuovere la cache del progetto / dati derivati ​​- riavviare sia Simulator che Xcode - riavviare il Mac - reinstallare Xcode - pulire e reinstallare CocoaPods - controllare le impostazioni di build per eventuali rari apparenze Niente ha aiutato. Non ho provato a giocherellare con la denominazione delle estensioni per app perché non ne uso nessuna.
Miki

3
"Prodotto -> Pulito" ha funzionato per me.
nshuman


Il riavvio del simulatore ha risolto il mio problema
Bhavesh

Risposte:


175

"Ripristina contenuto e impostazioni" dalle opzioni del menu Simutalor di iOS e l'avvio del simulatore dopo l' uscita ha risolto il mio problema.

Ripristina contenuto e impostazioni


6
Molto meglio della risposta iniziale. Dovrebbe essere contrassegnato come la soluzione.
denislexic

Dopodiché dovevo anche chiudere e riaprire il simulatore.
jfredsilva

Questo requisito è già menzionato nella mia risposta @jfredsilva.
Sauvik Dolui


Lavora per me. Grazie
Nikhil Chaurasiya

125

La pulizia della cartella build ha risolto il problema per me. Spero che aiuti qualcuno!

(Tenendo premuto il tasto Alt : Prodotto> Pulisci cartella build )


1
YA YA YA, risolto il problema: D
Abo3atef

1
Questo ha funzionato per me dopo l'aggiornamento per utilizzare Cocoapods e .xcworkspace.
John the King,

3
Questo è un must-do dopo l'aggiornamento a Cocoapods v1.0.0
Anconia

Solo per aggiungere, questa è l'unica cosa che ha risolto questo problema per me dopo l'aggiornamento a Cocoapods v1.0.0. Nessuna delle altre risposte SO ha funzionato.
Andy Rice

Ha lavorato, sono così felice
anavarroma

33

Ho provato tutte le altre soluzioni elencate qui. Bene, ho portato il mio progetto da Swift 1.2 a Swift 2.0. L'applicazione è rimasta bloccata anche dopo che sono stati segnalati molti errori di debug e avvio dei servizi 0.

soluzione: succede a causa della compilazione del framework.

Target app -> Build Phases -> Embed Frameworks.

Quindi contrassegna copia solo durante l'installazione. Pulisci il progetto ed eseguilo!

inserisci qui la descrizione dell'immagine


Puoi spiegare di più su come "Copia solo durante l'installazione" risolve il problema?
sethfri

@ sethfri: "Copia solo durante l'installazione" per specificare che la fase di compilazione copia i file solo nelle versioni di installazione del prodotto. developer.apple.com/library/mac/recipes/…
AG

3
Capisco cosa significano le parole "Copia solo durante l'installazione". Sto chiedendo come questo risolva il problema che l'autore della domanda sta affrontando.
sethfri

28

Ora è stato risolto. Il problema è stato causato dalla libreria ShareKit aggiunta da CocoaPods per motivi di compatibilità. Dopo aver rimosso la libreria e tutto il codice correlato, l'app è stata avviata correttamente nel simulatore. Consiglio di controllare il registro di sistema per maggiori dettagli sul problema in quanto mi ha indirizzato nella giusta direzione (indicando il nome della libreria in conflitto).


Ho appena aggiunto shareKit e ho lo stesso problema.
dirkoneill

24
Nel caso in cui questo aiuti qualcuno: puoi accedere al registro di sistema digitando Console in Spotlight.
Nate Cook

Per me è stato MixpanelAppExtension
villy393

Grazie, questo mi ha aiutato. XCode 7.3.1 e il mio registro mostravano "ErrorDescription = Impossibile eseguire la copia hardlink". Stavo impostando una versione ma non il numero di build in Target -> General -> Identity. Dopo aver incluso un valore per Build, il problema è scomparso.
William Smith

Per controllare il log di sistema prova questo comando in Terminale: tail -f /var/log/system.logiOS Simulator stampa direttamente su stdout, così puoi vedere i log confusi con i log di sistema.
vhong

16

Nel caso qualcuno abbia questo problema in combinazione con i baccelli di cacao, questi passaggi mi hanno aiutato a risolvere questo errore (dopo poche ore):

  • correre pod cache clean
  • da SRC_ROOT run rm -rf Pods(opzionalmente rm Podfile.lock)
  • Fare clic sull'app Simulator , fare clic su Simulator -> Ripristina contenuto e impostazioni ...
  • Vai in Xcode, nella barra dei menu fai clic su Prodotto -> Pulisci (o fai clic su Maiusc + Comando + K) .Questo per pulire il tuo progetto Xcode.
  • Crea una nuova shell di terminale (dalla barra dei menu fai clic su Shell -> Nuova finestra)
  • correre rm -rf ~/Library/Developer/Xcode/DerivedData/

... quindi prova a costruire ed eseguire il tuo progetto.

Nota: SRC_ROOT può essere trovato accedendo al Navigatore , facendo clic sul progetto, facendo nuovamente clic sul progetto dall'elenco di progetti e destinazioni , andando in Impostazioni di costruzione , scorrendo fino in fondo alla Sezione definita dall'utente e SRC_ROOT sarà etichettato come PODS_ROOT. Prendilo e copialo verbatum nel Terminale e procedi con il passaggio 2 dall'elenco sopra.

Spero che sia d'aiuto.


2
Questo lo ha fatto. Grazie! Dovrebbe davvero essere la risposta accettata.
Dan Loewenherz

Questo ha risolto il mio problema! Sicuramente dovrebbe essere la risposta accettata!
Victor Oliveira Antonino

15

Mi sbarazzo del problema seguendo i passaggi indicati per il simulatore

1. Modo

  1. Ripristina contenuto e impostazioni del simulatore .
  2. Pulire il progetto di Cmd + Shift + K .
  3. Cancella i tuoi dati derivati .
  4. L'ultimo che è più importante cambia il tuo identificatore bundle con "com.yourcompanyname.projectname" come "com.facebook.Facebook"

2 vie

Puoi fare solo la linea data, funziona per me

L'ultimo che è più importante cambia il tuo identificatore bundle con "com.yourcompanyname.projectname" come "com.facebook.Facebook"

Grazie e buona programmazione.


Intendi cmdinvece di win? ;) (O forse usi una tastiera Windows.)
JeroenJK

@JeroenJK Sì, è Cmd.
Dharmbir Singh

Wow, la modifica dell'ID bundle è quella che alla fine ha funzionato per me. Grazie!
ArtSabintsev

6

Potrebbe essere correlato a questo problema: "Questa app contiene un'estensione per app con un identificatore di bundle illegale"

Ho dovuto formattare gli identificatori del bundle per la mia app e l'estensione come segue:

com.company.AppName
com.company.AppName.Extension

Anch'io. Ho cambiato l'identificatore del pacchetto perché l'estensione (widget) non veniva visualizzata e questo lo ha causato. Ho dovuto abbassare la versione dell'estensione da 9.2 a 8.2 e modificare il pacchetto come menzionato sopra.

Grazie, esattamente il mio problema!
Andres

5
  1. Prima "Reimposta contenuto e impostazioni"
  2. Se non hai inserito il numero di build, riempilo ed esegui.

È risolto per me.


4

Se si modifica il nome della classe fornita InterfaceControllerimpostata di default quando si avvia un nuovo progetto. Questa classe è referenziata in Info.plistsotto la chiave RemoteInterfacePrincipalClass. Nel mio caso, ho ricevuto l'errore menzionato dall'OP fino a quando non ho corretto il nome della classe (vedi screenshot).

Info.plist: imposta la classe principale


Questo ha davvero aiutato! Grazie!
Lonkly

2

Se sei qui dopo aver riscontrato problemi nell'integrazione con WatchOS 2.0, vai a - ~/Library/Logs/CoreSimulator/[Device UDID]/system.loge se dice qualcosa di simile, WatchKit 2 app has frameworks; that's not allowed.segui il link sottostante.

http://zyafa.me/blog/watchos-2-and-embedded-frameworks


1
Grazie per avermi indicato il file di registro del simulatore. Nel mio caso il file di log in ~/Library/Logs/CoreSimulator/CoreSimulator.logrivelato che il mio quadro legato non ha avuto un CFBundleIdentifiernella sua Info.plist
Berbie

framework non aveva un CFBundleIdentifier nella sua Info.plist: sto ottenendo anche questo qual è la soluzione? non si usa su watchkit o watchOS
Abhishek Thapliyal

1

Sono un utente di adMob e ho risolto l'attivazione di "Copia solo durante l'installazione" in App target -> Build Phases -> Embed Frameworks.


1

Ho lo stesso problema dopo aver localizzato la mia app. Soprattutto Info.plist. Mi sembra di aver vuota CFBundleShortVersionStringin InfoPlist.strings, dopo aver fissato che il simulatore ha iniziato a lavorare in modo corretto.


Anche quello era il mio problema. Se vedi che prova a rimuovere tutte le chiavi che non richiedono la localizzazione dai tuoi file InfoPlist.strings. Nel mio caso la rimozione delle chiavi sotto ha risolto tutto: CFBundleName CFBundleShortVersionString CFBundleVersion
lazarev

1

Ho riscontrato questo problema aggiungendo un riferimento alla cartella denominato "Risorse".

Se gli do un altro nome, allora funziona!


1
Questo mi ha risolto un problema simile! Stavo incorporando un dylib e ha causato un errore di installazione criptico "non aveva un CFBundleIdentifier nel suo Info.plist". Dopo aver cambiato la cartella Resources in qualcos'altro, ha ricominciato a funzionare
Sagi Iltus

Due piccioni con una fava;)
Moose

1

Ci sono una serie di cose che possono causare questo errore. La migliore risposta generale è cercare nel log della console CoreSimulator, poiché il simulatore registra il problema sottostante quando visualizza questo messaggio.


1

Grazie per averlo segnalato @Miki e complimenti a te. Ho avuto lo stesso problema di te ieri (e ho aggiunto ShareKit 3.0.0 da CocoaPods all'app qualche giorno fa). Sospettavo che ShareKit mi stesse dando questo problema, ma ora posso essere sicuro di quale libreria esattamente lo sta causando. Ecco cosa ho trovato nel mio registro (se può giovare ad altri):

Error Domain = LaunchServicesError Code = 0 "Impossibile completare l'operazione. (LaunchServicesError error 0.)" UserInfo = 0x7fa836097aa0 {Error = PackageInspectionFailed, ErrorDescription = Impossibile caricare Info.plist dal bundle nel percorso / Users / {UserName} / Library / Developer / CoreSimulator / Devices / 99FEB34E-6F00-4EFA-861A-A6985AFE96D8 / data / Library / Caches / com.apple.mobile.installd.staging / temp.X7eead / extracted / {AppName} .app / Frameworks / LiveSDK. struttura}


1
dal tuo registro, come puoi sapere che ShareKit causa l'errore?
chipbk10

1
ho la stessa cosa nel mio registro ma rimuovere i simulatori e aggiungerli di nuovo non aiuta ... come hai risolto l'errore?
Amitay

1

Se hai installato delle librerie utilizzando CocoaPodsmentre XCode era aperto, tutto ciò che devi fare è chiudere XCode e rimuovere la libreria dal Podfile, eseguire il comando pod installper disinstallare quella libreria. quindi installa di nuovo la libreria. Assicurati che XCode sia sempre chiuso durante l'installazione e la disinstallazione delle librerie.


0

Ho avuto esattamente lo stesso problema ed era ShareKit.

Sul simulatore avevo "Error Domain = LaunchServicesError Code = 0".

Sul dispositivo iPhone6 ​​avevo il messaggio "Installazione dell'app non riuscita Impossibile ispezionare il pacchetto dell'applicazione".

Quando ho rimosso ShareKit ha funzionato.


0

Ho riscontrato questo problema quando ho aggiunto un target Apple Watch alla mia app e ho rimosso accidentalmente il file InterfaceController.m. L'aggiunta di nuovo del file nella destinazione ha risolto il problema.


0

Ci sono diverse cose che possono causare questo. Guardare nella console potrebbe darti un indizio.

Nel mio caso, il problema era un'estensione creata prima di cambiare il nome del prodotto. Xcode non ha cancellato quello vecchio, quindi è stato stressato da due estensioni con lo stesso ID bundle.

(L'eliminazione della cartella build ha risolto il mio problema particolare).


0

Nel mio caso il problema proveniva da un set di icone aggiunto con alcune immagini mancanti. Una volta ho sostituito il set di icone con un altro e ho disinstallato l'app nel simulatore; Sono stato in grado di eseguirlo di nuovo.


0

Ho rimosso tutti i miei file pod e li ho sostituiti tutti, sembra che il problema per me fosse che il framework dei bulloni era vecchio e causava questo errore. Ho eseguito un contenuto pulito e ripristinato e ora va tutto bene.


0

Non aggiungere il framework di Google Maps alla sezione lib incorporata, questo ha risolto la mia interruzione di build.


La rimozione del framework incorporato che non era necessario per essere lì ha risolto anche il mio problema
manman

0

Ho riscontrato questo errore durante lo sviluppo di un'app per Apple Watch dopo aver aggiunto in Info.plist: "Impostazioni di sicurezza per il trasporto delle app" e "Consenti caricamenti di Arbitry" = SÌ. (Nell'app WatchKit, nell'estensione WatchKit va bene !!) Eliminando queste due righe, continua a funzionare.

inserisci qui la descrizione dell'immagine


0

Per me, il problema si verifica perché ho aggiunto il mio framework ( GoogleMobileAds.frameworknel mio caso) a binari incorporati , non a framework e librerie collegati .

Per tua informazione, AdMob ti dice di utilizzare il Add Files to "Your Project"menu su Xcode, ma ero troppo pigro per obbedire alle istruzioni.


0

Ho riscontrato questo problema durante il tentativo di eseguire i test dell'interfaccia utente in un progetto contenente AWS Cognito.

Ecco come l'ho risolto.

  1. Seleziona la destinazione del test dell'interfaccia utente.
  2. Fare clic sulla sezione Build Phases.
  3. Fare clic sul segno più per aggiungere una fase Copia file Fase Aggiungi copia file
  4. Nella fase Copia file, cambia la destinazione in Frameworks (vedi l'ultima immagine)
  5. Premi il segno più sotto la fase Copia file.
  6. Seleziona il framework per il quale stai ricevendo un errore e premi il pulsante Aggiungi (il tuo probabilmente non sarà il primo elemento nella gerarchia del tuo progetto). Seleziona Framework da copiare Dovrebbe finire per assomigliare a questo. Risultato finale
  7. Ripeti i passaggi 5 e 6 per tutti i framework che ti danno un errore.
  8. Esegui i tuoi test.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.