Installazione dell'app non riuscita a causa della titolarità dell'identificatore dell'applicazione


304

Non riesco a installare un'app watchOSK watchOS 2 a causa di un diritto identificativo dell'applicazione. Ciò è accaduto dopo aver attivato i gruppi di app nella scheda Funzionalità.

Errore completo:

Installazione dell'app non riuscita

Il diritto identificativo dell'applicazione di questa applicazione non corrisponde a quello dell'applicazione installata. Questi valori devono corrispondere per consentire un aggiornamento.

Schermata 1

Questo esegue l'app in modalità debug su un dispositivo fisico. L'esecuzione solo dell'app per iOS funziona correttamente.

Ho disattivato nuovamente i gruppi di app e rimosso i file dei diritti aggiunti, ma lo stesso errore.


Sei riuscito a trovare la soluzione?
prasad1250,

1
Sì, la risposta di @ john-nesbitt ha funzionato
Ric Santos il

1
Quanto al "perché" accade (potrebbe essere utile elencare), nel mio caso, alla modifica dell'account sviluppatore. È stato installato sull'account A e stava cercando di essere eseguito dopo aver cambiato l'account B. (Non ho un file di autorizzazione nel progetto).
bauerMusic

Controlla prima la seconda risposta, è più completa e non comporterà la perdita di dati.
arcady bob

Risposte:


746

Ho riscontrato questo problema con un'app per iPhone e l'ho risolto seguendo i passaggi seguenti.

  • Con il dispositivo collegato e Xcode aperto, seleziona Finestra-> Dispositivi
  • Nella scheda sinistra della finestra che si apre, seleziona il tuo dispositivo problematico
  • Nel riquadro dei dettagli a destra, rimuovere l'app in questione dall'elenco "App installate".

Dopo averlo fatto, la mia app è stata ricostruita e avviata perfettamente. Poiché la tua app è un'app watchOS, non sono sicuro che otterrai lo stesso risultato, ma vale la pena provare.


59
Ciò cancellerà l'app e tutto il suo contenuto. Devo aggiornare e non perdere tutti i miei dati nel processo, se possibile.
Robert Gummesson,

65
Quindi hai eliminato l'app
railwayparade

6
La mia app non era visualizzata nell'elenco Windows-> Dispositivi, ma l'ho eliminata dal telefono (tenendo premuta l'icona) che ha risolto il problema. Grazie John
Steve A

16
Voglio testare la migrazione dell'app alla nuova versione e non posso farlo se elimino l'app esistente (versione AppStore) dal dispositivo.
mixtly87,

3
Certo che funziona, ma nel mio caso il problema è che devo farlo ogni volta che una persona diversa dal team utilizza lo stesso dispositivo, il che è fastidioso, quindi la cancellazione non è una buona soluzione!
v01pe,

97

Ho avuto questo problema e non sono stato in grado di risolverlo senza eliminare e reinstallare l'app (fare scherzi con i profili di provisioning, come alcuni suggeriti qui, non ha aiutato).

Tuttavia, non ho perso i miei dati di test esistenti. Ecco come farlo, per chiunque abbia questo problema in futuro:

  1. Prima rimuovere l'app, apri la finestra "Dispositivi" di Xcode (ovvero cmd-shift-2).
  2. Seleziona il tuo dispositivo e trova la tua app nell'elenco "App installate".
  3. Fai clic sull'icona a forma di ingranaggio e seleziona "Scarica contenitore ...". Questo copierà tutti i dati dell'app sul tuo Mac. Salvalo da qualche parte per ora.
  4. Elimina l'app e reinstallala da Xcode. Uccidi l'app da Xcode (fai clic sul pulsante di arresto), quindi non è in esecuzione.
  5. Torna nella finestra "Dispositivi", fai clic sull'icona a forma di ingranaggio e seleziona "Sostituisci contenitore ...". Seleziona i dati che hai scaricato sul tuo Mac al passaggio 3.

Xcode ripristinerà quindi i dati dell'app precedentemente salvati. Ora hai i tuoi vecchi dati di test e l'app dovrebbe essere eseguita.


3
Funziona particolarmente bene quando si utilizza la funzione "provisioning automatico" in Xcode 8.
Steve Madsen

2
Vorrei davvero aver letto questo prima di usare la risposta. Quindi i dati sullo stato sarebbero stati preservati. (Vedi il mio commento sopra).
Tim Maher-De Troyer,

1
Questa dovrebbe essere la risposta selezionata.
galactikuh,

100% la risposta giusta SE NON VUOI PERDERE I TUOI DATI. Dovrebbe essere accettata la risposta.
arcady bob

Ho lo stesso scenario ma i miei dati utili sono in Userdefaults Possiamo recuperarli comunque? L'aiuto è apprezzato
Rahish,

29

Elimina tutte le versioni precedenti dell'app dal tuo iPhone e quindi pulisci-> Crea ed esegui di nuovo. L'app dovrebbe funzionare senza problemi sul tuo dispositivo.

Inoltre, assicurati di non aver selezionato Certificato di distribuzione nelle Impostazioni del tuo progetto mentre provi a eseguire il progetto direttamente sul tuo dispositivo.


28

Questo errore verrà visualizzato quando il prefisso AppID non corrisponde al prefisso dell'app precedentemente installata. Se la tua app è già nell'App Store, non sarai in grado di inviare aggiornamenti senza ripristinare il prefisso AppID originale o contattare Apple.

Istruzioni di Apple per la gestione di questo problema: https://developer.apple.com/library/content/technotes/tn2319/_index.html#//apple_ref/doc/uid/DTS40013778-CH1-ERRORMESSAGES-UPGRADE_S_APPLICATION_IDENTIFIER_DOES_OT_CHP

Se non intendevi modificare il prefisso AppID, Xcode sta firmando la tua app con il profilo di provisioning errato.

Se si intende modificare il prefisso AppID (perché l'app è stata trasferita a un nuovo sviluppatore o si sta migrando da un vecchio AppID precedente al 2011) è necessario contattare Apple per migrare un AppID esistente in un nuovo prefisso.

È inoltre necessario aggiungere il previous-application-identifiersdiritto all'app, elencando tutti gli AppID precedenti (con prefissi precedenti). E devi chiedere ad Apple di generare un profilo di provisioning per te che includa il previous-application-identifiersdiritto.


2
Il mio profilo jolly che ho usato per lo sviluppo è scaduto e ho erroneamente creato uno specifico per l'app. Dopo aver letto il tuo post, ho creato un nuovo profilo jolly e l'ho usato. Ha funzionato come un fascino. Il tuo è il post più preciso e dovrebbe essere la risposta accettata. Eliminare l'app e perdere i dati non è una buona opzione per molti di noi. Grazie!
neoscribe

17

Ho risolto questo problema senza eliminare l'app

Con il progetto aperto in xcode. Progetto -> Impostazioni build -> Firma codice -> Profili di provisioning (menu a discesa) Probabilmente è impostato su automatico e sta scegliendo il profilo sbagliato. Apri il menu a discesa e scegli quello corretto, quindi esegui nuovamente l'app.


Inizialmente ho provato a eliminare e reinstallare l'app. Non ha funzionato Quindi ho scorrere verso il basso e ho visto questa risposta. La compilazione non riusciva con questo errore solo per gli UItest automatizzati ma non per la build normale e risulta che è stato selezionato il profilo di provisioning corretto per la build normale ma non la build degli UItest automatizzata. Quindi, l'aggiornamento ha risolto il problema ..
auspicious99

5

Ho riscontrato lo stesso problema e sono rimasto bloccato per diversi minuti e dopo una ricerca, la soluzione più semplice che ho trovato è semplicemente rimuovere manualmente l'app precedentemente installata dal dispositivo e provare a eseguire nuovamente l'app da Xcode.

Spero che ti aiuti. Ti auguro il meglio...


4

passi

  1. Con il dispositivo collegato e Xcode aperto, seleziona Finestra-> Dispositivi
  2. Ora seleziona l'app e scarica il contenitore usando l'icona di impostazione
  3. Elimina l'app
  4. Installa di nuovo l'app usando Xcode
  5. Stop da Xcode
  6. Vai a Finestra-> Dispositivo e seleziona l'app e sostituisci il contenitore che è il backup dall'app precedente

I passaggi del contenitore non sono necessari ma utili se si desidera conservare i dati. Grazie.
Awesomeness il


2

Ho provato alcune cose come l'aggiornamento / la creazione di nuovi profili di provisioning, la correzione dei diritti in Apple Member Center e nel progetto, ma nel mio caso, ho semplicemente dovuto eliminare l'applicazione ed eseguirla nuovamente.

o_O


Il diritto identificativo dell'applicazione di questa applicazione non corrisponde a quello dell'applicazione installata.

NOTA: dice " ... non corrisponde all'applicazione installata "

Immagino sia successo per me perché abbiamo aggiunto una nuova estensione per app e devono esserci stati alcuni problemi di migrazione relativi al target? Non sono sicuro ma comunque


sì, elimina l'app installata sul tuo dispositivo ed esegui nuovamente da Xcode. Ho avuto questo problema perché ho aggiunto una destinazione in Xcode.
Syed Asad Ali,

2

Ho scoperto di aver accidentalmente modificato il profilo di provisioning per contenere un carattere jolly.

Vale a dire, è passato da com.companyname.appnickname a com.companyname. *

Ho creato un nuovo profilo di provisioning con il nome completo correttamente, scaricato, impostato Target-> build settings-> profilo di provisioning su quel nuovo profilo, riavviato xcode, ho ricevuto un bizzarro errore da xcode (sembrava confondere il mio sviluppatore di app varie login), riavviato nuovamente xcode e ha funzionato!

Non volevo eliminare l'app esistente, perché stavo cercando di testare cosa succede quando un utente ha aggiornato la sua app a una versione più recente, quindi avevo installato la versione dell'app store e quindi ho eseguito il mio xcode con la versione più recente (che agisce come "aggiornare" l'app senza rimuovere i dati dell'utente).


Devi solo assicurarti di utilizzare lo stesso profilo di provisioning con cui hai originariamente creato l'app.
mj662,

2

Ho avuto lo stesso errore e l'ho risolto cambiando l'identificatore del bundle in qualcosa di nuovo. Successivamente, crea un progetto senza problemi.

I miei passi:

  • Apri Xcode
  • Vai alla scheda Generale
  • Trova identità
  • Cambia l'identificatore del bundle in qualcosa di nuovo.

Modifica identificativo del pacchetto


2
Questo non funziona se desideri testare un aggiornamento dell'app.
Raphael Oliveira,

2
Modificando l'ID del bundle, hai effettivamente creato una nuova app.
Steve Madsen,

2

Ho avuto lo stesso problema. Bundle.identifier e il nome del progetto devono essere gli stessi. Almeno quello era il mio problema.


1

Disinstallare l'app principale per iPhone, guardare l'app e crearle di nuovo risolve il problema.


1

Ho avuto lo stesso errore fino a quando non ho ripristinato le impostazioni predefinite dell'orologio come da https://forums.developer.apple.com/thread/17948

"Apparentemente se disponi di un'app WatchOS 1 esistente e provi ad aggiornarla su WatchOS 2, l'identificatore del bundle cambia e causa questo errore. Se aggiorni l'orologio dovrai ripristinarlo se hai installato l'app WatchOS1 prima di aggiornare l'app su WatchOS2."


Ho anche dovuto ripristinare l'orologio sui valori predefiniti di fabbrica. Aveva provato tutti gli altri suggerimenti pertinenti, ma senza risultati. Aveva anche rigenerato tutti i profili di provisioning per assicurarsi che fossero coerenti con i diritti. La mia situazione era esattamente come qui descritta: avevo un'app WatchOS 1 esistente, che stavo cercando di aggiornare a WatchOS 2.
rene

1

Anche se ho seguito alcuni passaggi logici: disinstallare l'app, ricostruire il progetto, l'unica soluzione che ha funzionato per me è stata: riavviare XCode . (XCode 8.1)


1

Questo è successo quando ho provato a installare sopra una build ad hoc.


1

Nella maggior parte delle risposte a questo problema, viene trascurato un aspetto critico sollevato dal richiedente originale. L'app deve essere installata senza eliminare l'installazione esistente. Nel mio caso, l'app utilizza un database SQLite che archivia molti dati per l'utente. Ovviamente, se elimini l'app, allora elimini i dati. Una soluzione che mi ha permesso di testarlo nello stesso modo in cui un utente lo aggiornerà era un must.

Nel mio caso, il problema era Xcode che utilizzava un profilo di provisioning generato automaticamente da Xcode. Ciò è probabilmente dovuto al fatto che avevo un nuovo computer e non ho trasferito il profilo di provisioning di distribuzione. Per non parlare, non avevo aggiornato l'app da quasi 2 anni. Quindi il mio profilo di provisioning originale (che contiene l'identificatore dell'applicazione Entitlements) era sparito da tempo. Soluzione: nelle preferenze di Xcode-> Account-> Seleziona l'ID Apple appropriato-> Visualizza dettagli-> In Profili di provisioning, fai clic con il pulsante destro del mouse sul profilo generato da Xcode per quell'app (è preceduto da XC iOS) e seleziona Sposta nel cestino .

Profili di provisioning Xcode in Account

Sul sito Web dello sviluppatore, crea un nuovo profilo di distribuzione con l'ID della tua app. Scarica il nuovo profilo, fai doppio clic e Xcode dovrebbe installarlo automaticamente. Al contrario, potresti tornare ai profili elencati in Xcode e toccare il pulsante Download accanto al tuo profilo appena creato. Compilare l'app e riprovare a eseguire. A proposito, il mio Xcode è impostato per gestire automaticamente la firma del codice, che a parte questo problema funziona alla grande.


1

TLDR: elimina l'app dal dispositivo ed esegui nuovamente.

Nel mio caso:
1. Ho compilato ed eseguo l'app sul dispositivo iPhone .
2. Apro l'impostazione di Funzionalità e accendo iCloud
3. Quindi provo a eseguire nuovamente l'app, boom, errore: "Installazione app non riuscita Il diritto all'identificatore dell'applicazione di questa applicazione non corrisponde a quello dell'applicazione installata. Questi valori deve corrispondere per consentire un aggiornamento.

4. Poi ho cancellato l'app dall'iPhone (dopo aver letto le risposte qui)
5. Tutto funziona bene


1

Per le persone che potrebbero far parte di più di un team, questo può essere il tuo problema:

  • Se l'ID del bundle dell'app è hardcoded nel tuo Info.plist, Xcode può confondersi e dare una scossa.

Aggiustare:

  • Assicurati che l'id bundle sia impostato come:

    $ (PRODUCT_BUNDLE_IDENTIFIER)


0

La risposta accettata non ha funzionato per me. Per farlo funzionare ho dovuto ripristinare l'Apple Watch sull'ultimo backup disponibile.


0

Ho ricevuto questo errore dopo essermi spostato da 5 a 6 secondi. Ho recuperato i nuovi 6s da un backup del vecchio iPhone. Per questo motivo sul nuovo iPhone è stata installata la vecchia app.

La vecchia app non veniva visualizzata nell'elenco "App installate" 6s! Ho eliminato manualmente questa vecchia app dal 6s e tutto andava bene.


0

Ho riscontrato questo problema perché ho creato il telefono con la firma del codice disattivata da un altro computer, quindi è necessario disinstallare l'app dal telefono prima di installare / creare sul telefono con la registrazione del codice.


0

Questo si risolve facilmente rimuovendo l'app precedente dal dispositivo. E ricominciare a reinstallare. Questo funziona bene per me.


0

Oggi ho affrontato lo stesso problema e risolto semplicemente cambiando il nome visualizzato e l' identificatore del bundle dall'app precedente installata anche sul mio iPhone. passi:

Xcode -> General tab -> Find Identity -> Change Bundle Identifier

Quindi, ora ho due stesse App con le stesse funzionalità ma con due nomi e identità diversi.


0

Nel mio caso è stato a causa del certificato.

perché il mio certificato per firmare l'app non faceva parte del team di sviluppo (nuovo dipendente), non era consentito aggiornare l'app dall'App Store a una nuova versione.

Quindi, nel caso ti capiti e non riesci a ottenere un "buono" certificato, basta clonare la versione git appStore, aprire due progetti Xcode, compilare la vecchia versione, aggiornare le impostazioni come desideri, compilare quella nuova e hai finito.

un po 'sporco e difficile ma spero che possa aiutare qualcuno.


0

Il mio problema era l'ID app in combinazione con il certificato utilizzato per creare i profili di provisioning. Nessuno dei miei profili di provisioning funzionava perché nessuno di loro era "Elgible" (creato con un certificato che corrispondeva all'ID app). Avevo spostato lo sviluppo su una nuova macchina, quindi forse questa era la ragione più profonda. Ad ogni modo ho dovuto creare un nuovo certificato, quindi nuovi profili di provisioning con quel certificato facendo attenzione a scegliere l'ID app giusto durante la creazione. In bocca al lupo.


0

Nessuna delle risposte sopra ha funzionato per me. Il mio problema: avevo installato una versione dell'app da Testflight, quindi ho appena eliminato sia la vecchia app che la versione Testflight e funziona di nuovo.


0

Accettare gli accordi in sospeso dal sito Web degli sviluppatori e dal sito Web iTunes Connect e riaprire il progetto in X-Code ha risolto la situazione per me.


0

Per me, questo si è verificato dopo l'aggiornamento a XCode 11, come hanno detto gli altri, è un problema di firma. Ciò che mi ha risolto è stato visitare il Portale per sviluppatori> Certificati e identificatori Modifica il profilo di provisioning che stai utilizzando

Schermata dell'elenco dei certificati

Vedrai che esiste un certificato per XCode 11 (come mostrato nello screenshot) Basta selezionare la casella, scaricare di nuovo il profilo e aggiornare i progetti firmando con il nuovo profilo.


0

Con MacOS Catalina, il tuo iPhone verrà visualizzato nella barra laterale "Posizioni" delle finestre del Finder (a condizione che tu abbia le preferenze del Finder impostate per mostrare i dispositivi esterni) - puoi quindi accedere ai file tramite l'opzione "File" che è disponibile dalla barra vicino alla parte superiore della finestra, proprio sotto il titolo (nel mio caso ho dovuto fare clic su ">" a destra).

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.