2013-07-17 14 views
7

Ho un'app pubblicata su AppStore e voglio migrarla a un account sviluppatore aziendale per la distribuzione interna. Ho letto nella documentazione aziendale che:Transizione da app store iphone a sviluppo aziendale

Se si desidera che gli utenti di mantenere i dati della app memorizzati sul proprio dispositivo, assicurarsi che la nuova versione utilizza lo stesso fascio-identifier come quella che è la sostituzione, e dire agli utenti di non cancellare la loro vecchia versione prima di installare quella nuova. La nuova versione sostituirà quella vecchia e manterrà i dati memorizzati sul dispositivo, se gli identificatori del bundle corrispondono.

Ora, supponendo di mantenere il Bundle ID lo stesso tra l'AppStore binario già installato e il impresa binario firmato con un certificato diverso ... è dovrebbe sovrascrivere la stessa applicazione sul proprio telefono piuttosto di creare una seconda app.

Ho contattato il supporto Apple e hanno risposto "No, verranno installate 2 app se non si richiede ai client di disinstallare il loro vecchio". È vero?

+0

avere una risposta per questo? Ho la stessa domanda ora. –

risposta

2

MODIFICA: sto lasciando la mia risposta originale di seguito per le conversazioni perché c'è un buon dialogo qui sotto. Come @mja ha notato quando inizialmente crei un ID app, questo è associato a uno dei pochi prefissi disponibili per il tuo portale per sviluppatori e tale prefisso può essere utilizzato da iOS per associare & a una differenza tra le app.

EDIT2: Quando vado nella mia Enterprise Portal e cercare di creare un ID app con un valore identico a un ID applicazione esistente, ma con un prefisso diverso soffia ancora su di me e dice:

An L'ID app con identificatore 'com.mycompany.myapp' non è disponibile. Si prega di inserire una stringa diversa.

ORIGINALE Risposta: L'ultima parte non è corretta - I dispositivi iOS utilizzano l'identificatore del pacchetto per distinguere tra le app. Posso avere 20 app etichettate "Cool App" sullo stesso dispositivo iOS purché abbiano identificatori di bundle univoci come com.mycompany.coolapp.1 - com.mycompany.coolapp.20. Allo stesso modo (e ho fatto questo accidentalmente) se apro due progetti, entrambi con identificatori di bundle com.mycompany.myapp, ed eseguo uno subito dopo l'altro, l'ultima app da eseguire verrà installata sul dispositivo, mentre la precedente l'app verrà sovrascritta.

Per quanto riguarda i dati delle app che si sostengono da solo, non ho provato che sarei interessato a quello che succede per te!

+0

quindi sono corretto supporre, anche se l'aggiornamento dell'app store è stato firmato in una società diversa, che l'aggiornamento aziendale lo sovrascriverà fino a quando l'identificatore del gruppo è esattamente lo stesso? –

+0

Mi stai facendo iniziare a indovinare me stesso quando hai appena detto "società diversa" .... Posso ritirare la mia risposta dal momento che non posso parlare con sicurezza di ciò che accade con i conti tra società:/ – Dan

+1

Penso che l'ID del pacchetto abbia un prefisso (seme) e il seme è univoco per account dev. – mja

2

Sono riuscito a ottenere questo risultato, in modo che la build "enterprise" dell'app sovrascriva una versione distribuita "app store".

Questo non usa lo stesso identico ID di bundle ma raggiunge quello che OP ha chiesto nella sua domanda originale.

come ho fatto questo è stato, nel mio conto aziendale, creare un identificatore jolly fascio con le prime due parti della stessa come l'identificatore bundle per la nostra applicazione produzione, ad esempio:

Production : com.xyz.abc 
Enterprise : com.xyz.* 

Utilizzando questo bundle jolly ID, l'app può essere distribuita e sovrascrive tutte le versioni installate tramite l'app store (i dati dell'utente continueranno a persistere). Il prefisso non sembra avere importanza qui.

Uno svantaggio del jolly fascio id è il fatto che non è possibile utilizzare APNS ecc

Problemi correlati