Domanda

Avevo un ambiente di build completamente funzionante prima di aggiornare a iPhone OS 3.1 e Xcode 3.2. Ora quando provo a fare una build, ottengo quanto segue:

  

Errore segno codice: il profilo di provisioning "Test FooApp" specifica l'identificatore dell'applicazione "no.fooapp.iphoneapp" che non corrisponde all'impostazione corrente "TGECMYZ3VK.no.fooapp.iphoneapp"

Il problema è che Xcode riesce in qualche modo a pensare che il test FooApp " il profilo di provisioning specifica l'identificatore dell'applicazione " no.fooapp.iphoneapp " ;, ma non è così.

In Organizer (e nel sito Web del portale per sviluppatori iPhone) l'identificatore dell'app è correttamente visto come "TGECMYZ3VK.no.fooapp.iphoneapp".

Inoltre, quando si imposta il profilo di provisioning nelle opzioni di generazione a livello di progetto, Xcode identifica correttamente l'identificatore dell'app, ma quando vado alla destinazione, non riesco a selezionare alcun profilo di provisioning valido.

Cosa potrebbe causare questo problema?

Aggiornamento: ho provato a creare un nuovo profilo di provisioning, ma non ho ancora avuto fortuna. Ho anche provato semplicemente a cambiare l'app identificata in Info.plist in solo " no.fooapp.iphoneapp " ;. La compilazione ha esito positivo, ma ora ricevo un errore dall'organizzatore:

  

L'eseguibile è stato firmato con diritti non validi. I diritti specificati nel file dei diritti di firma del codice dell'applicazione non corrispondono a quelli specificati nel profilo di provisioning. (0xE8008016).

Questo sembra ragionevole, poiché il profilo di provisioning ha ancora il " TGECMYZ3VK.no.fooapp.iphoneapp " identificativo dell'applicazione.

Ho anche ricontrollato che tutti i certificati sono validi nel Portachiavi.

Quindi la mia domanda è come posso ottenere Xcode per vedere l'identificatore dell'applicazione corretto?

AGGIORNAMENTO: come indicato di seguito, ciò che sembra risolvere il problema è l'eliminazione di tutti i profili di provisioning, certificati, ecc., la creazione di nuovi certificati / profili e la loro installazione. Se qualcuno ha altre soluzioni, sarebbe il benvenuto. :)

È stato utile?

Soluzione 2

Bene, come sembra essere il caso di molti di questi problemi di firma del codice, l'eliminazione di tutti i profili di provisioning, i certificati, ecc. e la revoca e la generazione di tutto da capo si sono rivelate utili. Ho persino creato un nuovo identificatore di bundle, identificatore di app, ecc. E ora la distribuzione AdHoc funziona di nuovo.

Altri suggerimenti

Ho dovuto rimuovere manualmente i profili di provisioning dal mio telefono, quindi ricostruire le app dopo aver eseguito una "pulizia di tutti i target" dal menu di creazione.

È presente in Impostazioni - > Generale - > Profili

Questo è successo a me quando ho ottenuto un nuovo Mac. Lo riparerai, non ti preoccupare

Ho avuto lo stesso errore ieri. Ho provato tutte le varie procedure di ripristino nelle altre risposte senza fortuna. Alla fine anch'io

  • riavviato il mio mac
  • riavviato il mio iPhone
  • ha eliminato tutti i profili di provisioning del mio iPhone dal telefono utilizzando XCode
  • ha eliminato tutti i profili dal mio mac (~ / Library / MobileDevice / Provisioning Profiles per me)
  • cos'altro? cartella build eliminata, riavviato XCode, aggiornamento installato a 3.1.2 sdk, sacrificato un pollo.

Ecco, ora funziona, l'errore è sparito. Questo è un territorio vudù serio.

Inoltre, assicurati di aver aggiunto un riferimento al nome file Entitlement " dist.plist " nella configurazione del progetto CODE_SIGN_ENTITLEMENTS.

Controlla entrambi i diritti per la firma del codice nelle informazioni sia per il Build Build sia per l'applicazione principale - se su entrambi i diritti per la firma del codice è indicato, rimuovilo

In XCode, in " Groups & amp; File " riquadro, espandi " Target " e fai doppio clic sul target della tua app.

Verrà visualizzato il riquadro Informazioni per il tuo target. Nella sezione " Build " sezione, controlla la "firma del codice" " sezione per tutti i vecchi profili. Questo mi è successo molte volte, in particolare dopo un aggiornamento a una nuova versione del sistema operativo sdk e iphone

Quick Hack se sei su Xcode 4.3.

In Xcode sotto Impostazioni progetto > MyTarget > Scheda Riepilogo fino in fondo c'è una casella di controllo che dice "Abilita diritti". Quando l'ho deselezionato, ha fatto sparire l'errore.

All'interno di Resources / Entitlements.plist è presente un valore booleano "get-task-allow" se ciò non viene verificato, controllarlo su ON. Ciò ha risolto il problema per me.

Dopo essere stato sconcertato da questo per un po ', ho rivisitato le impostazioni e ho scoperto di aver invertito le voci "Identificazione firma codice" e "Qualsiasi dispositivo con sistema operativo iPhone". - L'indizio che ho avuto su questo avvenimento è stato mostrato da.

  1. Eliminazione di tutti i profili dal telefono
  2. Build and Go

A questo punto xcode tenta di eseguire il provisioning del telefono (dispositivo)

  1. Esamina il telefono per vedere quale profilo di provisioning è stato aggiunto.

Mentre prefisso tutti i miei profili 'AdHoc' o 'Sviluppo' o 'AppStore' ho visto immediatamente che il processo di installazione stava inserendo un profilo di sviluppo sul dispositivo e non un profilo AdHoc.

Il dispositivo potrebbe non essere nell'elenco. Prova a modificare il tuo profilo di provisioning.

Solo per aggiungere una nota qui: ho riscontrato lo stesso errore (0xE8008016) dopo aver sostituito la scheda logica del mio Macbook (anche se immagino che avresti avuto lo stesso problema su un mac completamente nuovo) e dopo ore passate in tondo Mi sono reso conto che il Portale del programma per sviluppatori iPhone aveva certificati separati per Sviluppo e Distribuzione .

Una modifica dell'hardware implica la necessità di riemettere entrambi certificati: avrei riemesso lo sviluppatore ma non la distribuzione. Dato che il mio nome non era cambiato quando l'hardware lo ha fatto (e i certificati sono identificati dal nome del proprietario), questo ha reso un problema difficile da individuare;) Spero che questo salvi qualcun altro la mia frustrazione.

Per riferimento, ho riscontrato lo stesso problema e l'eliminazione di tutti i miei profili, certificati esistenti e tutto dal mio disco locale e dal portale degli sviluppatori, nonché l'eliminazione dei miei dispositivi esistenti e la loro aggiunta (portale degli sviluppatori) sembravano fare il trucco.

Il problema è nel " project.pbxproj " file situato all'interno del file .xcodeproject del [tuo progetto]. Se ti senti coraggioso, fai clic con il pulsante destro del mouse su .xcodeproject e visualizza i contenuti, quindi apri " project.pbxproj " con un editor di testo del piano. All'interno cerca il percorso offensivo e correggilo. Nel mio caso ho appena rimosso l'intero percorso e lasciato " Entitlements.plist " e ha chiarito i miei problemi. Consiglio vivamente di eseguire il backup del vostro .xcodeproject prima di tentare questo.

Fai doppio clic sulla destinazione, quindi seleziona " Proprietà " scheda. Lì cambia la com.yourcompany. $ {...} .

Un'altra causa è se il dispositivo su cui si desidera installare non è un dispositivo approvato nel Certificato di distribuzione.

A volte Xcode non copia automaticamente il profilo di provisioning nella posizione corretta. Nel mio caso, era vero.

Verifica che il tuo profilo di provisioning sia nella directory ~ / Library / MobileDevice / Provisioning Profile e, se non semplicemente trascina e rilascia, pulisci e crea

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top