Tuesday, December 20, 2011

Interrogare un Web Service ASP.NET con Android

Abbiamo il nostro bel WS in ASMX o WCF e vogliamo renderlo raggiungibile dai nostri terminali Android senza troppe rogne? Le librerie ksoap2 ci stravengo incontro!

Scarichiamo il jar relativo qui , importiamolo nel nostro progetto e aggiungiamo le referenze nella nostra classe:

 import org.ksoap2.SoapEnvelope;  
 import org.ksoap2.serialization.SoapObject;  
 import org.ksoap2.serialization.SoapPrimitive;  
 import org.ksoap2.serialization.SoapSerializationEnvelope;  
 import org.ksoap2.transport.HttpTransportSE;  

Supponendo di avere un webservice con una pagina "Service1.asmx" la quale contiene questo metodo:

 [WebMethod]  
 public string HelloWorld(string valore)  
 {  
       return valore;  
 }  

Saturday, December 17, 2011

Text To Speech (TTS) in Android


Avete mai pensato di implementare la sintesi vocale in una vostro progetto Android?
Se non sapete come fare, vi posso assicurare che è più semplice di quanto pensate.
Senza perderci in chiacchere, implementiamo nella nostra classe l'interfaccia OnInitListener la quale sarà richiesta dalla classe TextToSpeech. Ora possiamo dichiararci il nostro oggetto:

 import android.speech.tts.TextToSpeech;  
 import android.speech.tts.TextToSpeech.OnInitListener  

 private TextToSpeech tts = null;  

Le API TTS supportano diverse lingue come Inglese, Francese, Tedesco, Italiano e Spagnolo ma è necessario ogni volta specificare la lingua di output. Se diciamo all'istanza TTS configurata in italiano di pronunciare la parola "I am 21" aspettiamoci un "I am ventuno" e non un "Ai em tuenti uan". E' molto importante quindi la configurazione dell'oggetto.
Ulteriore controllo da fare, è anche la presenza delle librerie nel device. Alcuni dispositivi non le possiedono per motivi di spazio oppure possono non avere giusto la lingua che serve a noi.

Wednesday, December 14, 2011

Keylogger in .NET (parte1)

Un giorno vidi, su una nota webzine, un articolo sui tipi di malware esistenti nel campo informatico.
Mi balzò all'occhio il keylogger e mi domandai... che ci vorrà mai a farne uno?

Perchè fare ciò? Per passare in qualche modo il mio giorno di requiem ;)

________________________________________________________________________________

Per prima cosa vediamo che caratteristiche dovrà avere questo keylogger (da ora in poi KL):

-Il software dovrà essere in grado di catturare tutti i tasti digitati dall'utente, segnalando tutti i comandi speciali e hotkey
-Il software dovrà essere in grado di riconoscere le finestre in uso dall'utente
-Il software dovrà loggare tutte le informazioni sopracitate e poterle inviare tramite mail o socket
-Il software dovrà essere totalmente trasparente all'utilizzatore del computer e individuabile solamente come processo nel task manager

Questo dovrebbe bastare per far si che il programma possa essere un keylogger.

Tuesday, December 13, 2011

Salta gli ostacoli in DHTML

Un pomeriggio di novembre: niente da fare, poca voglia di imparare cose nuove.. 'sicchè passo le mie 6 ore rimanenti nel fare un piccolo giochino stupido e insignificante in javascript :)

Descrizione del progetto:
Un personaggio stilizzato che cammina in un mondo a scorrimento orizzontale e che deve saltare delle buche che appaiono randomicamente sullo schermo.

N.B.
Come il 99% delle cose che posterò, non è niente di nuovo. Ma ai fini del blog, mi pare utile.

Ecco come si presenta all'inizio:


Monday, December 12, 2011

Primo approccio con i canvas

Quanti anni è che esiste HTML5? 2 anni?
Io che ho cominciato a lavorare giusto 2 anni fa non sono mai riuscito a farne un uso intelligente a lavoro...
Ed è per questo motivo che ho cominciato a scoprirlo... in un modo non troppo intelligente :)

Tra i numerosi tag che l'HTML5 porta, mi ha sempre affascinato il tag <canvas>. Ma cos'è? 

Navigando un po' sulla rete ho visto che questo canvas non serve ad altro che a manipolare delle immagini bitmap dinamicamente da javascript
Wow! Posso creare un immagine da codice e farla muovere, roteare, animare... Non che la parte grafica sia il mio contesto preferito, ma per bagaglio personale, ho voluto provarlo questo canvas. 

Ho pensato di utilizzare la famosa trollface
Per chi non la conoscesse è un MEME utilizzato dopo una frase provocatoria o offesa per far alterare ancora di più l'interlocutore offeso. La frase che spesso la accompagna è "Problems?" . 

In questa mia "animazione" tirerò fuori la trollface dall'area del canvas e farò uno scherzo all'utente che naviga la pagina in pieno stile del MEME.

Nascita

Eccomi qua... alla fine tra Wordpress e Blogger mi sono arreso. Sarà che mi piace tenere tutto sotto controllo, avere anche il blog sotto il profilo di Google può andare bene. Tuttavia vedremo se Blogger mi offrirà tutti gli strumenti di cui ho bisogno per alimentare la mia voglia di post.
Alla fine questo blog servirà giusto giusto a me o ai miei colleghi/amici per vedere e rivedere progetti, pezzi di codice, idee e qualsiasi cosa mi venga in mente o faccia durante il tempo libero.

Perchè non usare Github? Perchè non solo è la mia prima esperienza social e mi faccia fatica vedere come funziona, ma soprattutto non ho intenzione di condividere il codice pacco che pubblicherò :)

Quindi... cominciamo!