Se volessimo distribuire la nostra app senza rilasciarla su Apple Store, magari per farla testare ad altri utenti, occorre seguire i seguenti passi.
Teoricamente, occorrerebbe creare un pacchetto “ad-hoc” (ad hoc build) firmandolo con un “ad hoc distribution provisioning profile” (certificato per la distribuzione creato su iOs Dev Center). Cioè dovremmo condividere oltre che il file .app anche un file .mobileprovision (con il certificato).
L’utente dovrà importare il file .mobileprovision nella barra sinistra di iTunes, insieme al file .app.
Il modo migliore è distribuire un file IPA contrassegnato con un “ad hoc distribution profile“, così che l’utente dovrà fare soltanto un doppio click sull’IPA file e installarlo in iTunes.
Operazione preliminare – Build & Archive
Per creare un file IPA, occorre usare direttamente XCode e rilasciare un Archivio (scheda Product e poi Archive). Verrà creato un archivio nell’Organizer, dove si dovrà scegliere il provisioning profile per firmarlo.
E’ buona norma utilizzare un “ad hoc distribution provisioning profile“, oppure è possibile usare un distribution profile con un nome generico (o con wildcard).
IMPORTANTE. Occorre generare un certificato “Ad Hoc Distribution” sulla propria pagina personale di DEV APPLE, associando il certificato ai dispositivi su cui poi si dovrà installare l’app (per la distribuzione al cliente, per esempio, prima della pubblicazione definitiva su Apple Store). Il dispositivo su cui installare l’app si associa inserendo nella pagina di DEV APPLE il codice UDID di 40 cifre alfanumeriche (vi riporto alla fine del presente articolo un riferimento che spiega come recuperarlo). Dopo averlo inserito, occorre generare un certificato di distribuzione “Ad Hoc” associandolo al dispositivo (sempre in DEV APPLE), scaricarlo e importarlo in Organizer di XCode (basta fare il doppio click sul file .mobileprovisioning). Una volta importato, occorre associare il certificato alla configurazione di XCode, come spiegato di seguito).
Creazione di una nuova configurazione in Project Settings
Si crea una configurazione (la possiamo chiamare Ad Hoc Distribution). Cliccare sul nome del progetto (pannello a sinistra) e nel pannello Groups & Files selezionare prima il progetto e poi il target.
Si duplica la voce Release e si crea una nuova configurazione a cui dare un nome (Ad Hoc Distribution, per esempio).
Setup del target
Nella scheda del Target, assicurarsi che sotto il tab Build Settings, selezionando ALL e COMBINED, in corrispondenza della voce Code Signing vi sia il corretto certificato per la distribuzione (nel nostro caso, “Ad Hoc Distribution”).

Skip install
Se nel progetto ci sono librerie statiche (tipo Cocos2d oppure Three20), occorre eseguire uno step extra che assicuri che esse vengano incluse nell’app binaria correttamente. Basta selezionare le singole librerie e nel pannello a destra, per ognuna di esse, occorre trovare la voce Skip Install (in Build Settings, gruppo Deployment – utilizzate la funzione di ricerca per velocizzare) e inserire il valore YES per la configurazione creata al passo precedente (“Ad Hoc Distribution“, nel nostro caso) .
NOTA. Lo step “Skip Install” è necessario solo se il progetto contiene le static libraries e deve essere eseguito SOLO per le static library e NON per il Target o il progetto della propria app.
Configurazione per l’Archive Scheme
Nel menù Product, vi è la voce Edit Scheme. Selezionare Archive dal pannello sinistro e poi settare Build Configuration con la propria configurazione (“Ad Hoc Distribution“, nel nostro caso), salvando.
Creazione dell’archivio
E’ possibile ora creare l’Archivio. Nel top menu, sotto la voce Product vi è l’opzione Archive. Quando l’operazione è terminata correttamente, sotto l’Organizer vi è il tab Archives con il nostro pacchetto.
Creazione del file IPA
Selezionato l’archivio appena creato, si può creare il file IPA, cliccando su Share e poi confermando il provisioning profile utilizzato. Andando avanti, scegliendo in corrispondenza di Contents la voce “iOS App Store Package .ipa“, si crea l’IPA file con un nome e lo si salva.
Adesso siamo pronti per distribuire il pacchetto IPA. L’utente che lo riceverà, dovrà semplicemente fare un doppio click e sincronizzare il proprio device con iTunes, per trovarsi l’app così installata.
Riferimenti: