Xcode 8 mostra l'errore che il profilo di provisioning non include il certificato di firma.
Questo problema riguarda Xcode-8 solo con Xcode 7, stesso profilo di provisioning che mostra il relativo certificato identificato.
Xcode 8 mostra l'errore che il profilo di provisioning non include il certificato di firma.
Questo problema riguarda Xcode-8 solo con Xcode 7, stesso profilo di provisioning che mostra il relativo certificato identificato.
Risposte:
Esistono molti modi per risolvere questo problema, come abilitare la firma automatica, ecc. Ma se vuoi capire il motivo di questo errore devi guardare il messaggio di errore.
Indica che il profilo di provisioning selezionato nella "scheda Generale" non contiene il certificato di firma selezionato in "Impostazioni build" -> "Identità firma codice".
Di solito ciò accade se è stato selezionato un certificato di distribuzione per l'identità di debug in "Impostazioni build" -> "Identità firma codice".
Se ciò accade in "Firma (debug)", potrebbe anche essere che "Identità firma" -> "Sviluppo iOS" non sia incluso nel profilo di provisioning.
Controlla il tuo portachiavi per identità in cui manca una chiave privata. Avevo installato più certificati di distribuzione per lo stesso team, uno dei quali mancava la chiave privata. Xcode stava solo controllando la prima identità corrispondente nel portachiavi e la utilizzava automaticamente invece di quella che includeva la chiave privata.
Rimuovendo l'identità corrispondente che non aveva una chiave privata, Xcode ha rilevato nuovamente l'identità corretta.
Per risolvere questo problema,
Abilito solo la "Gestione automatica della firma" nella scheda generale delle impostazioni del progetto, prima di abilitare avevo paura che potesse avere alcuni effetti collaterali, ma una volta abilitato che funziona per me.
Per coloro che dovrebbero continuare a usare non auotamatic per qualche motivo
Apri keyChain Access per vedere se ci sono due stesse certificazioni, se ce ne sono due o più, basta cancellarne una e funzionerà :)
Ho riscontrato questo problema dopo aver recentemente aggiornato Xcode alla versione 9.3 Il problema era nel certificato di firma del codice (sotto debug) impostato sul certificato di distribuzione anziché sul certificato di sviluppo, quindi questo mi ha impedito di installare l'app sui miei dispositivi.
Ecco cosa ho fatto per risolvere questo problema.
Progetto -> Target -> Seleziona la tua app -> Impostazioni build -> Identità firma codice -> Debug -> Tocca due volte "Distribuzione iPhone" e cambialo in "Sviluppatore iPhone".
Ho deselezionato e quindi selezionato l'opzione "Gestisci automaticamente la firma". Ciò ha risolto il problema per me.
Per quello che vale la firma automatica non è riuscita ogni volta fino a quando non ho appena cancellato manualmente i profili locali in: ~ / Library / MobileDevice / Provisioning Profiles
Dopo che la firma automatica ha funzionato perfettamente e ha ottenuto i profili giusti dai server Apple.
Ciò riguardava solo alcune build, in particolare quelle per le quali avevo creato manualmente i profili per l'app watch.
CMD + Shift + .
per mostrare tutti i file nascosti.
Per coloro che ancora lottano con questo problema in Xcode8. Per me è stato un duplicato del problema del certificato, ecco come l'ho risolto:
Ho letto la risposta di Nick e poi ho iniziato la mia indagine. Ho controllato tutte le chiavi e i certificati nel mio caso particolare (all'interno di ~ / Library / Keychains / System.keychain).
Quando ho aperto il file, ho scoperto che avevo due certificati di distribuzione iPhone (che era il certificato che Xcode mi stava richiedendo), uno con la chiave privata di distribuzione iOS che ho usato dall'inizio e un altro certificato di distribuzione iPhone che chiave privata aveva un nome (distribuzione iOS: NAME) che non mi era familiare. Ho eliminato questo ultimo certificato, avviato nuovamente Xcode e il problema era scomparso. xCode non è stato in grado di risolvere quel conflitto ed è per questo che dava sempre errori di certificato di firma.
Controlla i tuoi portachiavi, forse hai un certificato duplicato.
Se si utilizza la firma manuale (che sicuramente incoraggerei), questo errore può verificarsi perché Xcode pensa che dovrebbe firmare una build di rilascio con un certificato per sviluppatori, che ovviamente non è incluso in un profilo di provisioning di rilascio.
Esiste un'impostazione di build che definisce quale certificato deve essere utilizzato per quale configurazione di build. Per modificarlo, vai a creare impostazioni e cerca Identità firma codice . Quando espanso, dovrebbero esserci righe separate per ogni configurazione di build (solitamente Debug e Release) con nella seconda colonna la sua identità selezionata (di solito Developer iOS o iOS Distribution). Assicurarsi che sia impostato sull'identità corretta per ogni configurazione di build.
In alcuni casi, è anche possibile espandere le configurazioni di compilazione. Assicurarsi che anche i relativi elementi secondari siano impostati sulle identità corrette.
Puoi anche risolvere i problemi di firma del codice con l'ottimo toolkit Fastlane . Gli autori hanno compiuto molti sforzi per automatizzare efficacemente la costruzione, la firma di app iOS (e altro).
Quindi, nella suite citata, c'è uno strumento sigh
che risolve magicamente qualsiasi problema di firma, da cui il nome :) La cosa bella qui è che questo strumento incapsula una conoscenza dei problemi di firma comuni e può rilevare e risolvere la maggior parte di essi.
Fastlane è installato come gemma Ruby:
gem install fastlane
E poi semplicemente invocato:
fastlane sigh --development
Rispondi a due domande e voilà:
[11:56:55]: No existing profiles found, that match the certificates you have installed locally! Creating a new provisioning profile for you
[11:57:01]: Creating new provisioning profile for 'com.myapp' with name 'com.myapp Development'
[11:57:06]: Downloading provisioning profile...
[11:57:09]: Successfully downloaded provisioning profile...
[11:57:09]: Installing provisioning profile...
Infine, vai su Crea impostazioni -> Firma e passa al profilo di provisioning appena creato, il cui nome è appena stato visualizzato nell'output del comando.
Questo esempio è relativo al problema di firma del codice di sviluppo (in esecuzione sul dispositivo). Controlla la documentazione del sospiro per tutte le altre opzioni.
Ha avuto lo stesso errore. I profili sembrano rinnovati, nuovi certificati aggiunti, l'ho persino controllato durante il download. Ha inoltre revocato i certificati dell'ex sviluppatore, esclusi dal profilo di fornitura. Ma Xcode mi sta ancora chiedendo dei precedenti certificati con errore:
No certificate for team 'MY_TEAM' matching 'iPhone Developer: FORMER_DEVELOPER' found
quindi, cosa ho fatto per risolverlo:
Build Settings
->Signing
->Code Signing Identity
Spero che possa aiutare qualcuno.
Nel mio caso, nel portachiavi avevo due certificati con lo stesso nome, ho rimosso uno dei certificati che è duplicato, quindi ha risolto il problema.
Xcode 11
Questo è l'errore che ho ricevuto
Il profilo di provisioning "XXX" non include il certificato di firma "Sviluppo Apple: XXX (XXX)". `` `
Ora Xcode 11 ha creato automaticamente un certificato "Sviluppo Apple: XXX" valido per tutte le piattaforme
Devi solo farlo
Avevo le chiavi private rimanenti dai certificati che avevo revocato, i certificati erano spariti ma non le chiavi private. La loro eliminazione ha risolto il problema.
Per trovarli:
La chiave evidenziata nell'immagine è una chiave privata di esempio senza certificato.
Ho lo stesso problema. Ho cambiato il mac. E quando ho scaricato il certificato Xcode, ho ricevuto un messaggio di errore: "L'errore è che il profilo di sicurezza non include la firma del certificato".
1) Vai su https://developer.apple.com/account/ios/profile/limited/edit Seleziona il progetto => modifica => Certificati => Seleziona tutto => Crea => Scarica
2) In Xcode: File di progetto => Firma (debug) => Profilo di provisioning => Importa profilo => Seleziona il file con 1
Per me, nessuna delle soluzioni di cui sopra ha funzionato. Stavo migrando da due vecchi Mac a un nuovo Mac, cercando di far funzionare i profili di rilascio / debug su Xcode SENZA Xcode che li gestiva automaticamente.
La soluzione per me era che quando sono andato e ha creato due nuovi certificati, ho ANCHE dovuto andare nei miei profili di fornitura, e aggiungere (sotto sia la distribuzione che dev) i nuovi certificati ai profili di provisioning in modo da riconoscere. Dopo aver fatto questo e scaricato, xcode ha rimosso tutti gli errori ed è bene andare.
Spero che questo aiuti qualcuno!
Ho ricevuto una di queste email da Apple:
Caro John Doe,
Il seguente certificato è stato revocato da un membro del team di sviluppo o è scaduto:
Certificato: sviluppo iOS
Nome del team: Honey Team, LLC
Ciò non influisce sulle app che hai inviato all'App Store o sulla tua capacità di aggiornare le tue app. Se si utilizzano profili di provisioning che contengono questo certificato, è necessario ricrearli prima di poter essere riutilizzati. Per i dettagli, consultare la sezione "Panoramica sulla firma dell'app" della Guida di Xcode.
I migliori saluti,
Supporto per il programma per sviluppatori Apple
Ho creato un nuovo certificato che ha revocato il certificato precedente (localmente e sul Mac di qualsiasi altro sviluppatore). Affinché funzioni, devo scaricare i nuovi profili di fornitura.
La soluzione è:
Personalmente non avevo tale accesso. Questo accesso era disponibile solo per l'amministratore del nostro team, quindi non ho schermate né sono sicuro che questi passaggi siano corretti al 100%.
Non l'ho ancora visto menzionato, ma se hai ancora problemi dopo aver ricreato i tuoi profili di provisioning, eliminando quelli esistenti nella cartella Profili di provisioning, controllando i duplicati nel tuo portachiavi, ecc. (Tutte le altre risposte ITT), apri il tuo Target> Impostazioni build> Firma codice e assicurati che tutto appaia coerente. Ad esempio, avevo modificato Identificazione firma codice per debug in un'identità di distribuzione, che ovviamente non funzionava poiché il profilo di provisioning di sviluppo non ha il certificato di distribuzione e stava causando l'errore in primo luogo.
Se stai tentando di caricare l'app su iTunes Connect (i profili di provisioning sono impostati su Distribuzione), vai su Impostazioni progetto -> Impostazioni di costruzione -> Firma codice. Assicurarsi di impostare tutte le opzioni di debug e rilascio sul proprio profilo di provisioning di distribuzione.
Il problema sembra iniziare a verificarsi in Xcode 11 .
Ecco i passaggi risolti per me (per coloro che affrontano lo stesso problema in XCode 9.2):
Sono stati eliminati manualmente i profili locali in ~ / Library / MobileDevice / Profili di provisioning.
Eliminato e creato tutti i certificati e il profilo di provisioning dall'account degli sviluppatori.
Rimosso l'account degli sviluppatori da Xcode e aggiunto di nuovo.
Risolto il mio problema! :-)
Ho avuto lo stesso problema e la ragione era un centesimo. Profilo e certificato errati sono stati selezionati nelle impostazioni di compilazione. L'ho fatto solo prima di pochi giorni. Pertanto, non è necessario abilitare "automatico" all'interno di xcode. Controlla i profili nelle impostazioni di compilazione prima di farlo.
Ho lottato con esso per molti giorni.
Passaggio 1: eliminazione di tutti i certificati, profilo di provisioning, appID, chiave ecc. Dall'account sviluppatore.
Passaggio 2: ricreati i certificati di notifica push, il profilo di provisioning, l'ID app ecc.
Passaggio 3: eliminati tutti i certificati dal portachiavi.
Passaggio 4: cancellato tutto il profilo di provisioning da ~ / Library / MobileDevice / Provisioning Profiles.
Passaggio 5: aggiunto solo il file di provisioning richiesto e testato. Funziona bene
Significa che devi eseguire una delle seguenti operazioni:
Una soluzione per # 2 quando non sei in grado di ottenere il certificato e il file .p12 dal creatore sarebbe quella di selezionare l'opzione "Gestisci automaticamente la firma".
Ciò accade perché il profilo di provisioning non riesce a trovare il file per il certificato a cui è collegato.
Aggiustare:
L'errore dovrebbe essere sparito ora.
Questo problema è dovuto alla chiave privata nel certificato nel tuo profilo non corrispondente a quella nel tuo portachiavi. Lo risolvo entro
stessa risposta con problema di firma del codice in Xcode versione 8 .