Xcode: impossibile ottenere l'attività per il processo


243

Questo è per un'app esistente che è stata compilata e distribuita più volte. Dall'aggiornamento a Xcode 5 ho visualizzato questo errore.

  1. Ho selezionato il profilo dei miei sviluppatori nella firma del codice per il debug.
  2. Eliminati i dati derivati ​​alcune volte.
  3. Esci alcune volte
  4. Scaricato e provato ad aggiungere nuovamente i miei certificati di sviluppo.
  5. Ripristina il mio computer! E aggiornamenti controllati
  6. Ho provato usando la magia nera!
  7. Lo schema> Configurazione build è impostato su Debug

Le strane circostanze che sto compilando per compilare su iOS 6.1 in modo da poter eseguire sul mio iPhone 3GS - la base è SDK iOS 7? Potrebbe essere un problema? Devo solo testarlo prima di trovare un telefono più recente prima di cambiarlo in iOS 7.


2
Controlla il tuo schema per assicurarti di essere effettivamente in esecuzione in modalità debug.
Borrrden,

Ho dimenticato di menzionare lo schema> Configurazione build impostato su Debug
elliotrock,

Ricevo anche questo problema. In Xcode 4.x nessun problema. Tutte le impostazioni sembrano essere le stesse. I simboli di debug non devono essere eliminati in "debug" e lo schema esegue "debug" per "Esegui". Questo è il mio unico codice che presenta questo problema. Sto usando le notifiche push e portachiavi condivisi in questo codice.
DBD,

Ho intenzione di ricostruire il progetto in xcode5 solo ordinando roba repo
elliotrock

Risposte:


490

Questo errore tende a comparire quando si sceglie un profilo di provisioning ad hoc. Assicurarsi che la firma del codice sia destinata allo sviluppo.


2
Ti suggerisco di creare un nuovo profilo di provisioning nel Dev Center che includa il tuo dispositivo. quindi scaricalo e usalo. Sono abbastanza sicuro che funzionerà.
Hasan,

7
Crea impostazioni> Profilo di provisioning impostato su "Nessuno" funziona per il debug sul dispositivo.
David Douglas,

7
a proposito, controlla che ciò avvenga sia nelle impostazioni di costruzione del Progetto che del Target (in particolare Target ha la massima priorità, quindi se ti piaccio spendi 30 minuti cambiando il Progetto e non ti rendi conto che il Target era diverso, lo farai impara questo ...)
viggio24

1
Con XCode 6 ho dovuto aggiornare i miei profili di provisioning con l'account sviluppatore in modo da poter vedere il profilo di provisioning del team iOS in Impostazioni build. Per aggiornare: XCode> Preferenze> Account> ID Apple> Visualizza dettagli> pulsante Aggiorna in basso.
Kalana,

1
Alcune volte questa soluzione non funziona se non si riavvia xcode. @ hasan83 questo sta ancora accadendo
albanx,

90

Questo errore si verifica se è stato utilizzato un profilo di provisioning di distribuzione per il debug sul dispositivo.

Vai a

Build Settings> Provisioning Profilee set to 'None' for Debugging.


2
Questa è la risposta giusta per la maggior parte delle persone, immagino.
John,

39

Alla fine l'ho risolto ricordando di impostare i parametri di firma del codice e di provisioning in ENTRAMBE le schede di progetto e destinazione ...


6
Sì. Questo è stato. Altri 30 minuti sprecati grazie all'interfaccia utente decisamente idiota di Xcode. Grazie per il salvataggio lì!
n13

Questo mi salva! Grazie mille!
Evgeniy Kleban,

32

Quando il dispositivo è collegato al computer con un cavo e Build + Esegui la tua app, il dispositivo tenterà di eseguire il debug. Il debug è consentito solo per i profili di sviluppo.

  1. Se costruisci + esegui con un profilo di sviluppo + codice di firma di sviluppo, tutto andrà bene

  2. Se compili + esegui con un profilo di distribuzione AppStore + codice di firma di distribuzione, l'app non raggiungerà nemmeno il tuo dispositivo. Questa build è solo per il caricamento su AppStore

  3. Se compili + esegui con un profilo di distribuzione AdHoc + codice di firma della distribuzione, otterrai l'errore "impossibile ottenere l'attività per il processo ...", ma l'app verrà installata sul tuo dispositivo. Scollegare il dispositivo ed eseguire l'app dal dispositivo. Funziona in un ambiente di distribuzione. Godere :)


Credo che per 'AdHoc Distribution Profile' è anche bisogno di fiducia nel team di sviluppo ...
Miele

14

AGGIORNARE:

Xcode 5.1 sembra correggere il menu a discesa in modo che ora mostri un "(blah blah)" ogni volta che due profili hanno lo stesso nome. Questo ti consente di scegliere quello corretto. Che è molto meglio :)


Morso da questo alcune volte. Xcode5 mostra "Profilo di provisioning" come un singolo campo, CHE È SEMPRE NON CORRETTO e Apple NON DOVREBBE AVERE codificato la loro GUI in questo modo (errore per principianti di Apple).

In Xcode5 (nessuna versione precedente), hai due valori di "Profilo di provisioning". Questo DEVE ESSERE impostato PRIMA di impostare la "Identità di firma del codice". Ovviamente, dal momento che deve essere impostato PRIMO ... Apple lo ha inserito SECONDO nell'elenco, 3 elementi SOTTO la cosa che deve essere impostata "prima".

(punti bonus per il design terribile della GUI lì ...)

Inoltre è rotto: se hai due profili di provisioning con lo stesso nome, Xcode5 ti consentirà di selezionarne solo uno. Per ovviare a questo, devi utilizzare l'utilità di configurazione iPhone per trovare il profilo desiderato, trovare "Identificatore profilo" a 30 cifre e copiarlo / incollarlo nel valore "Altro" del menu a discesa Profilo di provisioning.

Il tuo profilo di provisioning DEVE avere un valore per "Debug" e un valore diverso per "Release" (a meno che non crei manualmente un mega-profilo personalizzato, Apple mantiene i due separati).

Il profilo di debug avrà spesso lo stesso bug descritto sopra - la maggior parte delle persone utilizzerà il profilo di provisioning del team generato automaticamente di Apple, che Apple erroneamente nomina sempre lo stesso, per tutti i target, in tutti i progetti. (un altro bug in Xcode5).

Dopo aver impostato entrambi i valori, il campo "Identità di firma del codice" inizierà finalmente a funzionare correttamente. In effetti, funziona bene: nella maggior parte delle versioni precedenti di Xcode, questo campo era rotto e la selezione "automatica" raramente funzionava. In Xcode5, può utilizzare SOLO i valori di firma del codice trovati all'interno del profilo di provisioning che hai preselezionato - e quindi sembra ottenerlo corretto al 100% del tempo.

(vale a dire che puoi tranquillamente impostarlo su "Automatico". Nelle precedenti versioni di Xcode, Xcode utilizzava spesso "Automaticamente" un profilo di distribuzione per una build dello sviluppatore e viceversa, causando molti problemi)


NB utilizzando la v7.3 di Xcode e talvolta sceglie ancora il profilo di provisioning errato quando impostato su "Automatico" con conseguente errore.
Ash,

12

Sulla base della mia ricerca attuale, l'errore "Impossibile ottenere l'attività per il processo" in xcode 5 potrebbe verificarsi per diversi motivi:

  1. Uno è che stiamo eseguendo il debug di un'applicazione firmata con profilo di distribuzione ad-hoc di distribuzione.
  2. Un altro motivo è che in qualche modo xcode5 non è riuscito a trovare il profilo di fornitura di sviluppo corretto sebbene l'identità di firma del codice abbia l'identità di firma dello sviluppatore lì.

Per me, è il secondo caso che sembra valere anche per questa domanda.

Sono in grado di risolvere il problema modificando il menu a discesa del profilo di fornitura di debug nel profilo di fornitura di sviluppo corretto e quindi provando a caricare l'app sul dispositivo reale. Xcode darebbe questo errore di seguito: inserisci qui la descrizione dell'immagine

fai clic su "Risolvi problema" per continuare, xcode 5 risolve il problema. Dopo aver risolto il problema, il profilo di provisioning per il debug viene nuovamente reimpostato su "Nessuno", ma non sono sicuro del perché xcode lo farebbe.


Mi sto bloccando in un ciclo qui - facendo clic su "Risolvi problema" ci vorranno circa 15 secondi per parlare con il server e quindi creare l'app, seguita immediatamente dallo stesso prompt esatto per risolvere il problema.
Chris,

non so perché sia ​​così nel tuo caso, ho provato la stessa cosa un paio di giorni fa, ha funzionato di nuovo.
windfly2006,

+1 per: debug di un'applicazione firmata con profilo di distribuzione ad-hoc di distribuzione. Questo è il mio problema.
John Erck,

4

Ho avuto questi problemi e come una volta ho impostato sia CODE_SIGN_IDENTITY sia PROVISIONING_PROFILE , tutto funziona bene,

Si noti che questo è cambiato in Xcode 5, la versione precedente non aveva alcuna voce per PROVISIONING_PROFILE nelle impostazioni di compilazione

//:configuration = Adhoc
CODE_SIGN_IDENTITY = iPhone Distribution: orgname
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution: orgname

Si noti che qui ho dovuto scrivere manualmente lo sviluppatore iPhone nella seconda voce poiché la selezione automatica non sembrava funzionare

//:configuration = Debug
CODE_SIGN_IDENTITY = iPhone Developer: Joe Bloggs (0A0AA00A00)
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Developer: Joe Bloggs (0A0AA00A00)

//:configuration = Release
CODE_SIGN_IDENTITY = iPhone Distribution: orgname
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution: orgname

Quindi aggiornare e le impostazioni del profilo di provisioning

aggiungi i tuoi ID profilo 0000 sono solo per la privacy

//:configuration = Adhoc 
PROVISIONING_PROFILE = 11111111-1111-1111-1111-111111111111
PROVISIONING_PROFILE[sdk=iphoneos*] = 11111111-1111-1111-1111-111111111111

//:configuration = Debug
PROVISIONING_PROFILE = 00000000-0000-0000-0000-000000000000
PROVISIONING_PROFILE[sdk=iphoneos*] = 00000000-0000-0000-0000-000000000000

//:configuration = Release
PROVISIONING_PROFILE = 22222222-2222-2222-2222-222222222222
PROVISIONING_PROFILE[sdk=iphoneos*] = 22222222-2222-2222-2222-222222222222

4

Prova a riavviare XCode

Dopo aver impostato le impostazioni di Provisioning e Code Signing da tutti questi suggerimenti, è stato finalmente riavviato con Provisioning impostato su none e Code Signing su iOS Developer (Automatico)


4

Può essere inserito in profili di provisioning. Nel mio caso, ho provato a eseguire l'app sul mio telefono e il profilo di provisioning è stato impostato su profilo ad hoc (XC Ad Hoc), quindi l'errore. Devo cambiarlo con il profilo del team iOS gestito da xcode (per evitare il lavoro manuale su Dev Center).


3

in realtà, è il tuo profilo di provisioning - Il debug non è corretto。


2

La risposta di hasan83 ha funzionato per me. Il provisioning ad hoc stava dando questo errore e anche il mio dispositivo non era incluso in quel file di provisioning. Ho impostato automatico per il provisioning e costruito. Xcode ha richiesto di risolvere il problema e quindi risolto il problema scaricando e impostando il file di provisioning dello sviluppatore.


2

Nel mio caso, è perché lo schema selezionato Run actionpunta a un altro Target, il cui Code Signing Identityè impostato suiPhone Ditributor


Che messaggio di errore terribilmente non descrittivo per un semplice problema. Mi hai salvato un sacco di tempo, grazie.
jungledev,

1

Non ho accettato le risposte sopra perché c'era una catena di problemi che dovevo risolvere:

  1. SDK di terze parti non impostato come distribuzione.
  2. L'SDK di terze parti non è impostato su arm64, cosa che penso di aver causato quando invano ho risolto il problema compilato su arm64.
  3. Necessario per completare cancellare tutti i vecchi certificati e aggiungerne di nuovi da Apple. Buona cosa da fare
  4. Xcode 5 nasconde i certificati e i profili nelle preferenze ora penso, il che ha aggiunto frustrazioni.
  5. Quindi assicurati che siano selezionati i profili di provisioning corretti nelle impostazioni di debug e di rilascio nelle impostazioni di Build.

Come sempre grazie per l'aiuto della gente.


1

Quindi, dopo aver testato tutte queste opzioni, il modo in cui penso sia corretto è che ora devi creare un profilo di provisioning per lo sviluppo, non solo per la distribuzione. vai al pannello delle preferenze e sotto i profili di provisioning fai clic su crea nuovo, seleziona sviluppo e poi vai a creare impostazioni e imposta la firma su automatica (questo selezionerà il provisioning corretto) questo lo ha fatto per me.

Mi sarei aspettato che Apple fosse più informativa quando fanno cambiamenti come questo predefinito

Saluti,

G.


1

Grazie a tutto l'aiuto nelle altre risposte, l'ho risolto in questo modo:

  • Creato nuovo progetto vuoto
  • L'ho eseguito sul dispositivo - ha funzionato bene
  • Nel vecchio progetto, apri la scheda "Progetto, Target".
  • In Progetto, imposta Tutte le proprietà di firma del codice sullo stesso del nuovo progetto vuoto (tutto spento nel mio caso)
  • In Target, fai lo stesso per il tuo target.

A questo punto, è difficile dire quale sia l'impostazione per quale modalità di funzionamento, quindi ho appena iniziato da un progetto in cui tutto funziona.


1

Ho appena avuto lo stesso problema: l'app è stata installata correttamente, ma non verrà eseguita da Xcode con "avvio del processo non riuscito: impossibile ottenere l'attività per il processo".

Risulta che il mio certificato di sviluppo è scaduto durante la notte. La rigenerazione del certificato e i profili di provisioning hanno risolto il problema.


1

Questo problema mi è successo perché ho rimosso una "Configurazione" in Progetto => Informazioni.

Per risolvere questo problema, seleziona "Prodotto" => "Schema" => "Gestisci schemi". Modifica lo schema attivo e controlla se "Build Configuration" non specifica alcuna configurazione eliminata per ciascun processo (Run, Test, ecc.).


1

Nel mio caso Xcode non è riuscito a impostare automaticamente il profilo sviluppatore iOS corretto per la configurazione della build di debug. Dovevo impostarlo manualmente su iPhone Developer: My Name (XXXXXX):

Impostazioni build target → Firma codice → Identità firma codice → Debug.


1

Nel mio caso, non posso impostare il profilo di provisioning su "none" perché ho bisogno di un profilo di provisioning per la notifica push. Quindi quello che ho fatto è solo creare un altro profilo di provisioning sullo sviluppatore Apple, un profilo di provisioning per sviluppatori iOS (non distribuzione iOS), legato allo stesso ID app. Quindi utilizzare quel profilo di provisioning per l'app nella scheda Impostazioni build.

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.