Pagina 1 di 7 123 ... UltimaUltima
Risultati da 1 a 10 di 70
  1. #1
    iPhone Guru
    Data Registrazione
    Oct 2008
    iPhone
    2G 16GB, FW 2.2
    Messaggi
    2,295

    Predefinito Creare applicazione per iPhone senza avere mac ne hackintosh

    Operazioni preliminari:

    1) Assicurarsi di avere openssh installato e attivo sull'iphone ed essere in grado di connettersi senza problemi.
    La connessione ssh dovete poterla utilizzare sia per scambiare file (protocollo scp, utilizzate client come winscp su win e cyberduck su mac) sia come terminal vero e proprio per inviare comandi! (su windows utilizzate putty, su mac il terminal integrato)

    2) Scaricare sul computer gli headers per la compilazione (versione per firmware 2.2 aggiornati con tutto l'immaginabile): iphone headers sdk 2.2 + api + substrate

    Creare l'ambiente di sviluppo:

    1) Installate sull'iphone tramite cydia il pacchetto ldid.

    2) Installate sull'iphone tramite cydia il pacchetto gcc

    3) Installate sull'iphone tramite cydia il pacchetto make

    4) Con un client ssh (scp) trasferire la cartella include (scompattata dall'archivio scaricato) dentro /private/var in modo da avere dentro /private/var/include tutti i file .h e le varie sottocartelle (se la cartella esiste già per vide del gcc installato, sovrascrivete pure ).


    Prima applicazione - Ciao mondo da linea di comando:

    - Scaricate il progetto di esempio hello.zip, è un semplice printf("Ciao mondo\n"); con il relativo makefile. Decomprimetelo e mettere la cartella hello sotto la root / dell'iphone.

    - Connettetevi in ssh al telefono, questa volta per lanciare comandi (quindi o putty o terminal) login root pw alpine e digitate i seguenti comandi:
    cd ..
    cd ..
    Ora sarete nell root vera e propria, cioè /. Digitate il comando
    cd hello
    ed entrerete nella dir appena copiata con il mio progetto, digitate:
    make all
    Il programma hello sarà compilato e signato dall'ldid di saurik

    - A questo punto se la compilazione va a buon fine potrete avviare il vostro programa digitanto:
    ./hello
    Seconda applicazione - Ciao mondo grafico:
    - Scaricate il programma MyApp.zip e decomprimete la cartella MyApp sempre sotto la root dell'iphone (/MyApp).

    - Entrate in questa dir con i soliti comandi "cd" sempre via putty

    - Compilate con il comando "make package" che si preoccuperà di copiarvi anche i file dentro /Applications/MyApp.app e impostare tutto

    - Respringate


    ----------------------------------------------------------------------------
    PS: Si possono utilizzare anche le librerie non documentate e quindi avere completo accesso a tutte le funzioni del firmware iphone

    PS2: Lanciare i comandi su iphone tramite la connessione ssh con putty o terminal potrebbe essere evitato se si utilizza l'applicazione MobileTerminal scaricabile da cydia (se lo fate dovrete però loggarvi come root, con il comando "su root", pw alpine). E' comunque molto più comodo utilizzare la tastiera di un computer e lavorare in remoto.

    Aggiornare toolchain firmware 3.x:
    Col nuovo 3.x non è più possibile installare il compilatore GCC su iphone in quanto non è più disponibile la libreria libgcc necessaria per il funzionamento (saurik non la ha portata in quanto ha detto che non è compatibile, quindi ha riscritto le applicazioni che la usavano senza dire niente in merito al compilatore).
    Esiste un modo per far credere a cydia di avere la liggcc installata e quindi poter scaricare e usare il compilatore gcc su 3.x.

    Per farlo occorre installare manualmente il pacchetto fake-libgcc_1.0 (dell'autore Ryan Petrich, lo stesso del vecchio Clippy) tramite ssh, scaricandolo da qui e lanciando il solito comando dpkg -i.
    Una volta fatto sarete in grado di installare gcc tramite cydia e seguire la guida.

    Gli headers:
    Ovviamente gli headers sono cambiati (non tutti) col nuovo firmware ed è necessario estrarre i nuovi .h e librerie dal nuovo SDK (scaricabile gratuitamente dal sito della apple).
    Poi successivamente gli headers privati per usare le funzioni non documentate dovranno essere estratti manualmente dal firmware iphone, usando il tool classdump.
    Questa volta il processo non lo faccio io, lo farete voi.

    (Una da dumpare sicuramente è la springboard, quindi con class-dump-x-iphone -H /System/Library/CoreServices/SpringBoard.app/SpringBoard)
    File Allegati File Allegati
    Ultima modifica di Suondmao; 13th August 2009 alle 03:27
    Non rispondo via PM a domande di aiuto/informazioni/assistenza. Utilizzate il forum pubblico.
    .

  2. Pubblicità (se ti registri scompare)

  3. #2
    iPhone Guru
    Data Registrazione
    Sep 2008
    Località
    Vigevano (PV) 40km circa da Milano city
    iPhone
    EDGE 8GB, FW 3.1.2 JB blackra1n
    OS
    Windows Vista
    Messaggi
    1,718

    Predefinito

    Grande figata....

    Ray: Ecco tolto il pensiero, ho trovato la macchina. Basta sistemare le sospensioni... la frizione, l'impianto elettrico, la trasmissione, e la scatola dello sterzo.
    Peter: Quanto?
    Ray: Solo 4800 dollari, rifacendo le fasce elastiche, la marmitta e altre sciocchezze


  4. #3
    iPhone Guru
    Data Registrazione
    Aug 2008
    Località
    montepulciano stazione (SI)
    iPhone
    16 GB nero FW 4.2.1 jb
    OS
    Mac OS X Snow Leopard
    Messaggi
    2,433

    Predefinito

    solo un chiarimento..."Il programma hello sarà compilato e signato dall'ldid di saurik" cos'è "ldid"??

  5. #4
    iPhone Guru
    Data Registrazione
    Oct 2008
    iPhone
    2G 16GB, FW 2.2
    Messaggi
    2,295

    Predefinito

    Ho fatto qualche modifica per rendere piu chiaro il tutto, comunque:

    Citazione Originariamente Scritto da n-rik Visualizza Messaggio
    solo un chiarimento..."Il programma hello sarà compilato e signato dall'ldid di saurik" cos'è "ldid"??
    Punto 3) con anche il link al sito di saurik da cui si legge:
    [...]I wrote a tool called ldid that, among other things, can generate the SHA1 hashes that are checked by Apple's iPhoneOS kernel.
    [fonte]

    oppure se vuoi capire meglio la questione (in italiano) leggiti la premessa teorica che trovi a questo link .: Suondmao's World - iPhone iapd Reverse Engineering :. nel punto Passo 3: firma
    Non rispondo via PM a domande di aiuto/informazioni/assistenza. Utilizzate il forum pubblico.
    .

  6. #5
    iPhoner
    Data Registrazione
    Jun 2008
    Località
    Udine
    iPhone
    3Gs-32Gb BIANCO
    OS
    Mac OS X Tiger
    Messaggi
    937

    Predefinito Precisazione...

    Una sola domanda/chiarimento.
    Io conosco un po' UNIX (pur non essendo un guru), ma a quanto ne so io basta dare il comando: SU (Super User) senza inserire 'root'. In teoria entrando nella modalità Super User ci si dovrebbe già trovare in root, vero? Almeno io faccio così col mio iPhone... ditemi se sto sbagliando o no.
    «SAGOMACCIA!»
    Cercate prima di aprire discussioni inutili !?!

  7. #6
    iPhone Guru
    Data Registrazione
    Oct 2008
    iPhone
    2G 16GB, FW 2.2
    Messaggi
    2,295

    Predefinito

    Ehehe si funziona lo stesso, ma perchè se non metti specificatamente il nome utente si assume di default root
    Se sei root e vuoi tornare mobile allora dovrai per forza scrivere "su mobile" per esempio.
    (io comunque "su" lo ho sempre inteso come come switch user non come "super user").
    Ti cito wikipedia:
    su (abbreviazione dalla lingua inglese di switch user o di substitute user, cambia utente o sostituisci utente) è un comando dei sistemi operativi Unix e Unix-like che permette di avviare una shell testuale assumendo l'identità di un altro utente del sistema
    [...]
    La sintassi tipica di su è la seguente:

    su [-] [utente [arg1 …] ]

    Il parametro facoltativo utente specifica il nome dell'utente di cui si desidera assumere l'identità. Se non specificato si assume sia root.
    link: http://it.wikipedia.org/wiki/Su_(Unix)
    Non rispondo via PM a domande di aiuto/informazioni/assistenza. Utilizzate il forum pubblico.
    .

  8. #7
    iPhone Guru
    Data Registrazione
    Oct 2008
    Località
    toscana-GR
    iPhone
    3G 16 GB FW 4.1; iPhone 4 32GB FW 4.0.2
    iPad
    32 GB, 3G+WiFi
    OS
    Windows 7
    Messaggi
    2,178

    Predefinito

    Prima di tutto grazie per la guida!!
    Ho provato, e va tutto liscio fino a quando non eseguo il comando cd hello
    a quel punto mi dice che non esiste nessun file o directory con quel nome, eppure io ho copiato la cartella sotto root
    Gli elementi più comuni nell'universo sono l'idrogeno e la stupidità. (Anonimo)

  9. #8
    iPhone Guru
    Data Registrazione
    Oct 2008
    iPhone
    2G 16GB, FW 2.2
    Messaggi
    2,295

    Predefinito

    Controlla bene come ti muovi anche da scp:
    Quando ti loggi tramite ssh parti da /private/var/root.
    Tu devi tornare indietro con i comandi "cd .." di due cartelle, per arrivare allora root /.
    Quindi esegui una volta e sei in /private/var, un'altra volta e sei in / (perchè in realtà @var è un collegamento a private/var).
    Ed è quei che devi aver messo da scp la cartella hello!
    controlla da scp di avere /hello, se questa c'è allora sbagli a "navigare" con i comandi in console


    (io poi ho detto di lavorare sotto / perchè io sto sempre li, nessuno ti vieta di lavorare in /private/var/root e creare /private/var/root/hello qui dentro)
    Ultima modifica di Suondmao; 22nd January 2009 alle 19:03
    Non rispondo via PM a domande di aiuto/informazioni/assistenza. Utilizzate il forum pubblico.
    .

  10. #9
    iPhone Guru
    Data Registrazione
    Oct 2008
    Località
    toscana-GR
    iPhone
    3G 16 GB FW 4.1; iPhone 4 32GB FW 4.0.2
    iPad
    32 GB, 3G+WiFi
    OS
    Windows 7
    Messaggi
    2,178

    Predefinito

    Avevi ragione, navigavo male io

    Funziona tutto!
    Gli elementi più comuni nell'universo sono l'idrogeno e la stupidità. (Anonimo)

  11. #10
    iPhone Guru
    Data Registrazione
    Oct 2008
    iPhone
    2G 16GB, FW 2.2
    Messaggi
    2,295

    Predefinito

    compili anche? riesci anche a avviare l'app e vedere la scritta "hello world"?
    Non rispondo via PM a domande di aiuto/informazioni/assistenza. Utilizzate il forum pubblico.
    .

 

 
Pagina 1 di 7 123 ... UltimaUltima

Segnalibri

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.1.12
Copyright © 2012 vBulletin Solutions, Inc. All rights reserved.
Content Relevant URLs by vBSEO 3.6.0 PL2

© iPhoneItalia & iPadItalia 2007-2011 - SpinBlog di Nicolò Canal - P.IVA 03919360275
Tutti gli orari sono GMT +1. Adesso sono le 16:08.