Oppure

Loading
13/11/10 16:16
hackersitiz
Dal titolo avrete capito...
Vorrei sviluppare un'applicazione per Android, ma è possibile in C?
Da quel che ho letto con SDK lo è...
Come senza un cellulare con Android?
Ecco c'è un emulatore, ma quale??
Ho trovato un bel libro che sembra molto interessante e spiega il sistema operativo Android e come sviluppare applicazioni... il libro è apogeonline.com/libri/9788850329212/….
Up pareri!!!:rotfl:
Ultima modifica effettuata da hackersitiz 13/11/10 16:18
aaa
13/11/10 16:50
nihal
Il libro non lo conosco, ma ti posso assicurare che non si può eseguire codice nativo su Android. Tutto il software Android è scritto in Java e gira sotto una macchina virtuale denominata "Dalvik" che è molto simile (sottolineo simile) alla JVM di Sun (ora Oracle)...
aaa
13/11/10 16:58
hackersitiz
Io ho letto e mi hanno fatto vedere dei video..
C'è un qualche emulatore dove ci si va installato un qualche programma e si possono creare delle applicazioni da eseguire su android...
Saluti
aaa
13/11/10 18:41
netarrow
Per lavorare su android scarica prima di tutto l'android sdk dal sito di google: developer.android.com/sdk/…

Poi scarichi eclipse e i plugin di google per sviluppare su android sfruttando l'eclipse update manager come indicato nella documentazione: developer.android.com/sdk/…

Come libro sto leggendo questo: Beginning Android 2, amazon.com/Beginning-Android-2-Mark-Murphy/dp/…

Per quanto riguarda il C non mi risulta sia possibili eseguire direttamente codice nativo, ma sfruttando l' Android Native Development Kit (NDK) puoi sfruttare metodi nativi da richiamare da Java; ma si usa in casi estremi come videogiochi o calcoli particolari, le applicazioni tipiche si fanno in 100% Java.
aaa
13/11/10 18:44
hackersitiz
Non so davvero come ringraziarti sei stato davvero grandioso con questa risposta dettagliata....
Una sola domanda, è possibile programmarci in python ?
Grazie ancora

P.S = Illibro sembra molto bello ,
grazie ancora
Ultima modifica effettuata da hackersitiz 13/11/10 18:48
aaa
13/11/10 18:50
netarrow
In python sarebbe già più facile, infatti esiste jython, una versione di python che ha l'interprete sviluppato in java.

Partendo da questo ho trovato jythonroid,
code.google.com/p/jythonroid/

Ma ti conviene studiarti le basi di Java e usare direttamente lui per sviluppare, essendo la versione ufficiale.
Ultima modifica effettuata da netarrow 13/11/10 18:51
aaa
13/11/10 18:52
hackersitiz
Grazie ancora ancora
aaa
13/11/10 20:14
TheKaneB
con l'Android NDK in pratica compili il tuo codice in C o C++ sotto forma di libreria. Successivamente richiami i metodi di libreria usando l'estensione JNI all'interno dell'applicazione "launcher" che dovrai necessariamente costruire in Java.

Quindi la tecnica base è quella di fare un programma interamente in C++ o in C, con un punto d'ingresso fakeMain() e richiamare il fakeMain da un micro-programmino in Java che funziona così da launcher.

Però ci sono dei problemi:

- Android ogni tanto invia dei "messaggi" che il tuo programma dovrà gestire "lato Java"
- Se ti serve qualcosa di specifico (accelerometro, GPS, ecc...) devi richiederlo "lato Java" e poi passare i risultati al tuo programma, ecc...

Detto questo, ci sono tante tecniche, ma solo 2 sono veramente efficaci:

1- Fai un wrapper Java-vs-C per ogni funzione di Android che userai, ed esponi questo wrapper all'interno del tuo programma in C (difficile, ma ti consente di fare programmi multiplatform)
2- Fai l'intero programma in Java, e soltanto gli algoritmi veramente pesanti implementali in C e richiamali quando serve tramite chiamate JNI (facile, soluzione migliore se non sei molto esperto)
aaa