[GUIDA] Come firmare le applicazione create con SDK per il firmware 2.x e come trasferirle nell’iPhone / iPod Touch

Se avete creato un’applicazione utilizzando l’iPhone SDK avrete sicuramente notato che quest’ultima funziona perfettamente nell’iPhone Simulator, ma che è impossibile trasferirla nel vostro iPhone o iPod Touch. Il motivo è molto semplice. Apple, dal nuovo Firmware 2.0.x, permette soltanto l’esecuzione di applicazioni certificate (o firmate). Ottenere un certificato, significa diventare developers a tutti gli effetti, pagando una quota annuale. Ecco quindi una piccola guida che vi aiuterà a firmare le vostre applicazioni (create attraverso i nostri tutorial), e che vi permetterà quindi di installarle sul vostro iPhone e anche su quello degli altri.

Sul blog di Saurik (l’autore di Cydia) troviamo tre differenti metodi per bypassare la signatura del codice. In questo tutoril vi illustrerò il più semplice, ovvero quello che prevede l’utilizzo di LDID, un tool creato dallo stesso Saurik.

Ecco i passi da seguire:

Passo 1) In Xcode, cliccate sul menù a tendina in alto a sinistra, e scegliete l’opzione “Device – iPhone OS 2.X″ (in base alla vostra versione di SDK), ovvero usiamo il nostro iPhone/iPod come dispositivo per la compilazione dell’applicazione. Poco più sotto sceglete “Release”, in modo da avere un’applicazione compilata in maniera ottimale per essere utilizzata.

immagine-11

Passo 2) Cliccate su “Build and Go!” (senza aver connesso il vostro iPhone!) ed otterrete un messaggio di errore. Ecco un paio di errori che potreste avere:

immagine-2immagine-1

Passo 3) L’applicazione è stata compilata e creata da XCode, che però non è riuscito ad installarla sull’iPhone. Niente di problematico, ci pensiamo noi! Andiamo nella cartella del progetto, in cui vedrete molti diversi file, simili a questo screenshot:

Entrate quindi nella cartella “build”. Noterte anche qui diverse cartelle, simili a queste:

immagine-5

La cartelle di nostro interesse è quella con il nome “Release-iphoneos“. Apriamo tale cartella, noteremo due file al suo interno:

Prendete il primo file (che è in realtà l’applicazione vera e propria) che porta lo stesso nome del vostro progetto (nel nostro caso “my RSS reader”) e copiatela tramite SSH nel nostro iPhone, nella cartella /Applications.
Nota: il simbolo di divieto che vedete sull’icona dell’applicazione è normale, in quanto Mac OS non la riconosce come un’applicazione valida. In effetti è un’applicazione, ma per l’OS dell’iPhone!

Passo 4) Avete così messo la vostra applicazione sull’iPhone. Respringate o riavviate l’iPhone, e vedrete l’icona dell’applicazione sulla SpringBoard. Provate ad avviarla.. crasherà subito! Questo perchè l’applicazione non è stata certificata. Ecco che ora ci serve il tool LDID. Aprite Cydia e installate i seguenti package:

  • MobileTerminal
  • LDID “Link Identity Editor”

img_0009

Passo 5) Ora non ci resta che certificare la nostra applicazione. Uscite da Cydia e aprite MobileTerminal. Per prima cosa autentichiamoci come utenti root. Per fare ciò digitiamo:

su root

Vi verrà poi chiesta la password, che è, come sempre, “alpine”.

Nota: mentre digitate la password non vedrete nessun carattere comparire nel terminale, è tutto normale, questo è tipico dei sistemi Unix.

Passo 6) Ora non ci resta che signare la nostra applicazione ed avremo finito! Sempre da terminale digitate:

ldid -S “percorso_programma”

dove percorso_programma è la directory del file che esegue l’applicazione, quindi nel nostro esempio sarebbe ‘/Applications/my RSS reader.app/my RSS reader’. Il nostro comando è quindi:

ldid -S ‘/Applications/my RSS reader.app/my RSS reader’

Nota: racchiudete il percorso tra virgolette per non aver problema con gli spazi presenti nel path dell’applicazione.

Passo 7) Avete fatto!! Eseguite un Respring tramite un programma come “Respring” (che trovate sempre in Cydia) e sarete pronti ad utilizzare la vostra applicazione!!

Ingegnere informatico e sviluppatore freelance, mi occupo da anni di sviluppo per iOS (ma non solo). Dal 2008 scrivo su questo piccolo blog (con qualche lunga pausa), in cui parlo di programmazione e di qualsiasi altra cosa che mi diverta.

23 comments On [GUIDA] Come firmare le applicazione create con SDK per il firmware 2.x e come trasferirle nell’iPhone / iPod Touch

Leave a Reply to Andrea Busi Cancel Reply

Your email address will not be published.

Site Footer