Home > News, iPhone > (Script) Compilare applicazioni per iPhone senza Provisioning Profile con Xcode 3.2.1/3.2.2/3.2.3 (AGGIORNATO X2)

(Script) Compilare applicazioni per iPhone senza Provisioning Profile con Xcode 3.2.1/3.2.2/3.2.3 (AGGIORNATO X2)

@UPDATE (22/06/2010): ORA LO SCRIPT FUNZIONE PERFETTAMENTE.

Eccoci qui, con il WWDC dello scorso 7 Luglio, è stato presentato il nuovo iPhone 4 ed è stato rilasciato il nuovo iOS 4 GM che precede la final release. Come sempre, ho creato il mio script compatibile con queste ultime versioni che permette di compilare applicazioni senza Provisioning Profile.

Per seguire la procedura manuale, potete seguire le istruzioni in questo articolo, altrimenti potete scaricare il nuovo script che esegue le modifiche automaticamente dal link qui sotto:

DOWNLOAD

Lo script è testato con Xcode 3.2.1, 3.2.2 e 3.2.3. Non è stato provato con Xcode 3.2.4 ma dovrebbe funzionare, se lo usate e funziona, fatemi sapere!

Inoltre nelle proprietà vostro progetto, cercate “Code Signing Identity” e “Any iPhoneOS Device” nella lista, e li settiamo con “Don’t code sign”.

Xcode Codesign

IMPORTANTE!

Dopo aver eseguito lo script: se volete fare il debuggin della vostra applicazione su un iPhone, dovete anche creare un certificato dal nome "iPhone developer" e considerarlo attendibile. La guida per creare il certificato la trovate nella prima pagina di questo articolo. Inoltre dovete avere installato AppSync.

Se avete usato lo script…

Questo è lo script per la build phase.


export CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
if [ "${PLATFORM_NAME}" == "iphoneos" ]; then
/Developer/iphoneentitlements312/gen_entitlements.py "my.company.${PROJECT_NAME}" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent";
codesign -f -s "iPhone developer" --entitlements "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent" "${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/"
fi

Categorie:News, iPhone Tag:
  1. kreker
    22 June 2010 a 23:43 | #1

    Ciao. Il tuo è stato l’unico tutorial che mi ha permesso di riuscire a far funzionar eil debug sul dispositivo e fdirmare le applicazioni con il certificato creato a mano. Attento però, nel run script a tale riga “codesign -f -s “iPhone developer” –entitlements “${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/${PROJECT_NAME}.xcent” “${BUILT_PRODUCTS_DIR}/${WRAPPER_NAME}/”"
    utilizzi il nome del certificato sbagliato “iPhone developer”. nella tua precedente guida scrivive di chiamarlo “iPhone”.
    Solo un appunto per rendere migliore l’articolo.
    Cmq sono riuscito e debuggare da dispositivo, a copiare l’applicazione a mano nel dir Applikcation dell’iphone e a rimuovere la firma con ldid. tutto pefetto, almeno….però se creo il deb per cidya e lo installo con il dpkg l’applicazione si installa ma crasha subito proprio come mi faceva quando non veniva correttamente firmata.
    Hai mica una guida oun tool per creare i deb per cydia in velcoità una volta avuta la build=?
    Grazie e continua cosi, ottimo blog…ti seguirò

  2. 22 June 2010 a 23:54 | #2

    @kreker
    Ciao, per il certificato, quella era una vecchia guida. In questo articolo dico di chiamarlo “iPhone developer”, però hai ragione, forse a qualcuno potrebbe sfuggire.
    Non sono un esperto nel creare applicazioni per cydia, sto finendo ora la mia prima applicazione che potrei inserire, e anche io ho il problema del crash durante lo startup. Ora devo provare con l’ultimo SDK uscito ieri ma ho paura che possa accadere la stessa cosa. Mi sto concentrando sul finire l’applicazione prima di cercare informazioni su internet su questo problema. Se troverò qualcosa scriverò un articolo, ma se ti capita prima di trovare una soluzione…. un commento o una email mi farebbe piacere :)

  3. kreker
    23 June 2010 a 12:10 | #3

    guarda che non sia lo stesso rpoblema che sto avendo io. perchè in tutti i casi l’appz crashava appena la avviavi.
    ora sono riuscito anche a creare il deb giusto seguendo le istruzioni della wiki di cydia. bisogna creare una struttra particolare di directory e usare il comando dpkg-deb -b nomeapp
    Ho riscontrato un altro problem apoi, ovvero usando il deb per l’installazione installa corettamente l’appz ma anche in questo caso crashava subito, dopo mille smadonnamenti ho cambiato i permessi della direcotry da 755 a 775 e l’appz funziona ed è visibile nei package di cydia con tutte le info:)
    Non so se sbaglio ancora qualcosa o se è normale comunque x ovviare al problema basta creare uno script postinstall e metterlo nella dir DEBIAN del .deb con un semplice chmod 775 della dir.
    Ora sto cercando di cpaie se devo farlo sempre, se tutti fanno cosi oppure se sbaglio io qualcosa in qualche punto.
    controlla i permessi a 775 della dir.

    ciao e grazie

  4. 23 June 2010 a 19:26 | #4

    Ho risolto il problema… Avevo una configurazione errata del certificato… Io che faccio la guida e sbaglio quando faccio le cose io… ahahaha Ora funziona tutto alla perfezione!

  5. iX315
    2 July 2010 a 3:11 | #5

    grazie mi hai salvato la giornata… (anzi la nottata….)

  6. Harisef
    19 July 2010 a 0:10 | #6

    When I choose device – 4.0 and hit “Build and Run” I have this error: “No provisioned iPhone OS device is connected.”. My jailbroken iphone with OS4.0 is connected. Pls help.

    p.s Does anyone know if the GPS works on OS4.0 simulator?

    Thx

  7. 19 July 2010 a 0:17 | #7

    Please read the article before this one. You need a jailbroken iPhone with AppSync installed, from http://cydia.hackulo.us repository, and a self-signed certificate.

    The iPhone Simulator support MapKit, but the current location is pointed in Cupertino.

  8. micdam
    19 July 2010 a 10:54 | #8

    Una semplice conferma : tutto ciò è impossibile assolutamente senza un Iphone con Jailbreak ?

  9. 19 July 2010 a 11:11 | #9

    Hai usato un traduttore automatico? Did you use a translator?

    Si, tutto questo è possibile solo con un iPhone jailbroken.
    Yes, it’s possible with a jailbroken iPhone only.

  10. Harisef
    19 July 2010 a 11:59 | #10

    Thanks for the fast reply.
    My iphone has AppSync and I also have a self-signed certificate but i have this error.
    I developed an application that uses MapKit and working fine on simulator – 3.1.3, but it is not working
    on simulator – 4.0.

  11. 19 July 2010 a 12:06 | #11

    I’m developing an application with MapKit right now, and all works fine. But I’m developing only for the iOS4, not for 3.x. You have some errors in your app if it doesn’t work.

  12. Harisef
    19 July 2010 a 12:28 | #12

    Ok i’ll check it thanks!

  13. ihackers2011
    23 February 2011 a 10:13 | #13

    CIAO, Ma se esempio io prendo una applicazione gia compilata ovviamente gia’ signata(sempre x cydia).
    io volevo, fare questo:
    ho aperto una app con hexeditor ho editato esempio il nome ecc. poi salvo.
    l”app ovviamente sul iphone non parte perche e da risignare, sai come si fa’..
    grazie..

  14. Marco
    18 April 2011 a 12:38 | #14

    Ciao,
    funziona con skd 4.3? A me non va, magari sbaglio qualcosa.

  15. 18 April 2011 a 14:21 | #15

    Ciao,
    non è mai stato testato ma non credo. L’articolo si riferisce ai frameworks inclusi nelle versioni di Xcode specificati.

  1. 13 June 2010 a 1:59 | #1