2015-03-28 10 views
9

Questo è appena iniziato oggi dopo che ho ricevuto un messaggio da xcode per accettare nuovi t & c.perché xamarin all'improvviso non mi consente di distribuire su dispositivi iOS

Non riesco a mettere nulla sul dispositivo, su nessuno dei miei computer.

Non funziona sul mio macbook, non funziona sul mio mac mini, non funziona con progetti esistenti che funzionavano bene fino a ieri, non funziona nemmeno con progetti completamente nuovi. Ricevo constantemente il messaggio:

writeDictToFile:1241 open failed for /Users/georgecook/Desktop/test/iOS/obj/iPhone/Debug/mtouch-cache/install-shadow-directory/339bee33bc83c8e05fbd004dcc732c0b/20715d40747e047ba8a4ce4c1d2672ef90161df5/ManifestCache.plist : No such file or directory MDMCacheDirectoryManifest:1315 writeDictToFile failed to write to /Users/georgecook/Desktop/test/iOS/obj/iPhone/Debug/mtouch-cache/install-shadow-directory/339bee33bc83c8e05fbd004dcc732c0b/20715d40747e047ba8a4ce4c1d2672ef90161df5/ManifestCache.plist : No such file or directory error MT1006: Could not install the application '/Users/georgecook/Desktop/test/iOS/bin/iPhone/Debug/test.iOS.app' on the device Gandalf the white: Your application failed code-signing checks. Check your certificates, provisioning profiles, and bundle ids. Probably your device is not part of the selected provisioning profile (error: 0xe8008015).

idea del perché questo è improvvisamente accadendo - questo non è davvero buono - come risolvere questo?

risposta

23

Ho inciampato su questo anche recentemente.

la chiave è questa parte del messaggio:

Your application failed code-signing checks. Check your certificates, provisioning profiles, and bundle ids. Probably your device is not part of the selected provisioning profile

probabilmente, il vostro profilo di provisioning è scaduto. Il modo più semplice per risolverlo è avviare Xcode, creare un progetto vuoto e premere Esegui. Questo andrà su una serie di finestre di dialogo che ti consentiranno di correggere il tuo profilo di provisioning fino a quando non verrà distribuito. Quando ciò accade, è possibile tornare a Visual Studio/Xamarin Studio e distribuire.

+1

sì. va bene ora Ho fatto l'errore di fare la build xcode, quindi non ho riavviato nuovamente xamarin. – Infrid

+2

un tale dolore ... sprecato come mezza giornata su questo in parte perché quasi nessuna delle istruzioni è chiara. prova questo: Xcode/Preferenze/Account/Visualizza dettagli/Scarica tutto (che aggiorna tutti i tuoi certificati). Assicurati di selezionare il Team Name giusto, o fallo tutti perché chissà cos'altro è scaduto. – tmgirvin

+0

Ho documentato tutto qui nel mio blog per (1) aggiornare l'ID del dispositivo sul sito Apple, (2) scaricare i certificati in Xcode e (3) impostare le opzioni del progetto in Xamarin Studio. http://tmgirvin.com/2016/02/10/xamarin-ios-certificate-issues/ – tmgirvin

3

Ho appena avuto questo problema ManifestCache.plist : No such file or directory. Ho controllato i log del dispositivo (View -> Pads -> iOS Device Log) per capire perché stava accadendo. I registri hanno detto che stava rifiutando un aggiornamento. Aggiornamento, ho pensato a me stesso, che non suona bene ... poi mi sono ricordato che avevo un'app sul mio iPhone con lo stesso identificatore to.dima.application di una versione precedente che ho dimenticato di disinstallare. La rimozione della vecchia app ha risolto il problema per me. Spero che questo aiuti chiunque altro abbia lo stesso problema! :)

1

Ho avuto lo stesso problema, quindi ho aperto Xcode e aggiornato tutti i miei profili, ma non è successo nulla. Così ho aggiunto l'UDID del dispositivo nel portale degli sviluppatori al team che stavo sviluppando, sono andato su Xcode e aggiornato i profili, e poi ha funzionato. Non so se il dispositivo deve essere registrato per essere in grado di creare sul dispositivo o questo ha attivato qualche altro aggiornamento ai miei profili che improvvisamente ha funzionato.

3

Una ragione per cui questo può accadere è se in XCode sono stati impostati più account sviluppatore. Ecco i passaggi

  1. Verificare che il dispositivo è in centro membro di Apple
  2. Verificare che il dispositivo fa parte del profilo di provisioning rilevante
  3. Ripetere i punti 1 e 2 per ogni account
  4. Creare un nuovo proiettare in XCode ed eseguirlo sul dispositivo. XCode potrebbe chiederti di selezionare il team (se hai più account)
  5. Se hai più account sviluppatore (team) impostati in XCode, ripeti il ​​passaggio 4 ogni volta con un nuovo progetto e seleziona un team diverso ogni volta.

Questi passaggi assicurano che XCode apra la strada a Xamarin. L'idea è che Xamarin non ti permette di decidere quale "squadra" usare, quindi vuoi assicurarti che XCode abbia fatto il setup per OGNI squadra.

+0

Ho avuto questo problema. Ho avuto più account di sviluppo e ho cambiato l'app da un account all'altro. Quando è arrivato il momento di eseguire il debug sullo stesso dispositivo che avevo utilizzato in precedenza, la distribuzione non è riuscita. – lukejkw

0

Trascorro qualche tempo sul portale degli sviluppatori per scoprire il problema, si verifica a causa della distribuzione APNS o lo sviluppo. Tuttavia, dopo aver ripristinato tutti i profili e i certificati di provisioning, non è stato corretto.Nel mio caso la soluzione è stata lasciare a Xamarin la scelta dei profili di firma. Non ho utilizzato la firma automatica di info.plist che non ha risolto nessuno dei due, ma cambiando progetto -> Firma bundle iOS -> Identità firma, profilo di provisioning Auto risolto tutti i problemi per i casi di sviluppo e produzione.