L’altro giorno mi sono cimentato a sviluppare una app per android, così per curiosità.. Così per non pensare… O meglio perchè io devo sapere tutto e devo conoscere qualsiasi cosa dovuta alla mia smania di potere xD
Insomma a parte gli scherzi, era pura curiosità di vedere come funziona. Mi butto sul sito di android sdk, scarico i componenti, plugin per eclipse, sdk a 32bit per il mio vecchio debian e aggiorno il tutto. L’installazione non è complessa, è un pò palloso adeguarsi e configurare eclipse, ma nulla di così complesso e impossibile.
Inizio a guardare il codice di un HelloWord e come si fa in questi casi, butto giù un bel copia/incolla modificando quello che mi serve. Lancio il tutto e… Eccola! Funziona il mio primo apk! Dopo dichè spulcio le opzioni, mi giro un pò attorno, provo altri codici per la rete, guardo altri source di altra gente e cazzeggia un pò sopra. Trovo alcune cose abbastanza rognose, a partire dal linguaggio java che per programmare non è tutto questo chissà chè e finisco sulla creazione del layout: si crea in XML!!! Ma vi rendete conto? Cio’è ma come si fa a prendere una scelta del genere, a sto punto erano meglio le GTK e i widget… Sarà che amo il C o comunque la semplicità di linguaggi c-based come php anche se sono a livello web ^^. La cosa che mi ha lasciato MOLTO perplesso fu la ADV ( la virtual machine che riproduce l’os android): davvero una delle cose più lente che io abbia mai visto! Com’è possibile? Bah… Davvero per rispondere ai click del mouse (che sarebbe il tocco touch) passano i minuti… E l’accensione di quest’ultima dura dai 10 ai 15min =/ non è troppo? o.O
Con una settimana di distanza apre ufficialmente anche il sito web di UbuntuZilla Graphic, un’altro progetto opensource su linux. UbuntuZilla Graphic non è altro che una GUI per UbuntuZilla, permette quindi tramite finestre GNOME di installare firefox a differenza dei codici tramite terminale.
Ultimamente ho ripreso il lavoro alla mia finestrella scritta in linguaggio C con librerie GTK. Ho avuto un pò di problemi con la funzione g_signal_connect(), precisamente il parametro G_CALLBACK() che a mio avviso è fatto male, poichè passa la funzione senza parametri, che devono essere trasformati in puntatori per essere passati… Sinceramente io avrei fatto una cosa del genere: