bloccare_pubblicita

Bloccare le pubblicità sui dispositivi Android

Il web è un calderone di informazioni sconfinato, ma è anche un grandissimo contenitore di pubblicità. A volte troppa pubblicità. Ci sono siti di notizie dove le “notizie correlate” sono un miscuglio di notizie vere e link sponsorizzati a prodotti che promettono di far perdere peso, blog in cui prima di leggere un articolo bisogna chiudere finestre modali gigantesche e lampeggianti, e così via.

Ma un altro aspetto negativo, forse il più importante, è la costante profilazione degli utenti da parte delle agenzie pubblicitarie. Siamo arrivati ad una situazione in cui ci addentriamo nell’era della no-privacy su Internet, per citare un articolo di Pagina99.

La pubblicità è fastidiosa e su cellulare lo è ancor di più.

Perché gli utenti bloccano la pubblicità

Tune, un’agenzia di marketing che lavora nel settore del publishing online, ha pubblicato uno studio dedicato proprio ad analizzare le ragioni per cui le persone bloccano la pubblicità sui dispositivi mobili e quanto il fenomeno incida sulla popolazione.

tune_blocking_2016
1 persona su 4 ha installato una app per bloccare le pubblicità

Dalle interviste è risultato che il 25% delle persone ha installato un’applicazione per bloccare gli annunci sul proprio dispositivo mobile. Probabilmente le ragioni non sono uguali per ogni persona, ma a mio avviso ce ne sono diverse e sono piuttosto importanti.

Le motivazioni principali per bloccare le pubblicità possono essere:

  • Risparmio di tempo — Le pubblicità pesano, e anche parecchio. Forse non è un gran problema con una ADSL o la fibra ottica, ma può esserlo con una connessione 3G. Nel 2015 il New York Times ha effettuato un test e ha rilevato come una pagina impiegasse 33 secondi a caricarsi, ma solo 7 secondi col blocco attivato.
  • Risparmio di denaro — Siamo ancora lontani dal momento in cui avremo i “giga” infiniti nei nostri piani tariffari. Per ora dobbiamo accontentarci di avere una soglia dati ben definita, ma una buona fetta di byte viene sprecata in pubblicità. Nel test del New York Times, la pagina con pubblicità pesava 16.3 MB mentre si scendeva a 3.5 MB per la stessa pagina senza annunci. In sostanza, la pubblicità consumava il 79% del traffico.
  • Privacy — Il tracking effettuato dai circuiti pubblicitari raggiunge livelli molto elevati, a volte decisamente inaccettabili. Il problema della privacy non si risolve con stupide normative sui cookie (con banner lapalissiani che avvisano del tracking, senza sortire alcun effetto) ma si risolve bloccando i tracker in partenza.
  • Fastidio costante — Molti siti che usano la pubblicità lo fanno in modo sbagliato. Invece di cercare di interessare l’utente, provano a infastidirlo piazzando i banner in mezzo al testo, o addirittura sopra di esso. Specialmente sui cellulari, lo spazio è una risorsa preziosa e non si può sprecare la maggior parte dello schermo per mostrare pubblicità.
  • Rischio di malware — La pubblicizzazione di applicazioni indesiderate o pericolose è piuttosto frequente quando si naviga col cellulare. Nel 2014 la BBC ha riportato uno studio che definisce le pubblicità “il più grande rischio di mobile malware”.

Credo sia pacifico che i siti web non hanno alcun diritto di consumare oltre il 50% del nostro traffico di rete, per di più tracciando tutti i nostri comportamenti. Senza contare il fatto che dovremmo proteggere le persone meno avvezze alla tecnologia dal rischio di installare malware sui propri dispositivi.

Fino a quando non si diffonderanno dei metodi pubblicitari sensati, sicuri e ragionevoli, la soluzione più efficace per arginare il problema è bloccare direttamente gli annunci. Viste le possibili motivazioni, rimane da vedere come funzionano effettivamente questi blocchi e come si possono installare su Android.

Qui potete vedere alcuni esempi di “prima/dopo” con il risultato che vogliamo ottenere:

Come funzionano i blocchi

Esistono diverse tecniche di blocco, specialmente quando si parla di ad blocker per il browser. Se prendiamo come esempi la famosissima estensione Adblock Plus, o la meno diffusa (ma più precisa e leggera) uBlock Origin, possiamo verificare che questi strumenti applicano varie tecniche:

  • Blocco di indirizzi web dedicati esclusivamente alla pubblicità
  • Blocco di specifici tipi di risorse (per esempio elementi Flash o immagini)
  • Filtraggio cosmetico (cioè le pubblicità difficili da bloccare vengono solo rese invisibili)

Quando si parla di blocco sui dispositivi mobili, ci sono alcuni browser specifici che combinano questi approcci. Il problema è che funzionano solo per navigare, ma non bloccano i banner all’interno delle app. Tuttavia, è possibile ottenere ottimi risultati sfruttando solo la prima strategia (il blocco degli indirizzi) perché molti siti web usano network pubblicitari esterni e quindi facili da bloccare.

Tanto per fare un esempio pratico, configurando il vostro dispositivo per bloccare (o comunque rendere irraggiungibile) il dominio googlesyndacation.com impedirete il caricamento di qualsiasi banner di Google AdSense su qualsiasi sito web. 😉

Per ottenere questo risultato, bisogna intervenire sulla risoluzione dei nomi di dominio, ovvero quel processo per cui un dispositivo trasforma un nome come google.com in un indirizzo IP come 216.58.214.110. Si può procedere in due modi:

  • Usare un server DNS filtrato — Il server DNS è il computer a cui si collegano i nostri dispositivi (o il nostro router) per effettuare la risoluzione di un dominio. Se il DNS filtra determinati indirizzi di server pubblicitari, i banner non riescono a caricarsi. Vi consiglio Alternate DNS che è gratuito e molto efficace.
  • Usare un file di host sul dispositivo — Prima di usare un server DNS, il computer (o il cellulare) verifica se ha già “la risposta pronta” controllando delle liste di traduzione da dominio a IP. Se il dispositivo è configurato con delle apposite liste che rendono irraggiungibili i server pubblicitari, il risultato è analogo (e anche lievemente più rapido).

In rete ci sono diversi articoli che spiegano come bloccare la pubblicità su Android, ma molti di essi si basano sul fatto che gli utenti abbiano effettuato il rooting al telefono, oppure funzionano solo con versioni di Android dalla 5.0 in poi. In realtà è possibile applicare queste tecniche con qualsiasi versione di Android a partire dalla 4.0, anche senza permessi di root.

Le sezioni seguenti spiegano come fare nei vari casi. Scegliete quella più adatta alle vostre esigenze!

Dispositivi con i permessi di root (Android 4.1 e seguenti)

I permessi di root ci consentono di effettuare modifiche al sistema operativo, compresa la possibilità di installare dei file di host personalizzati per bloccare i server pubblicitari. AdAway è un’ottima app che automatizza il tutto.

Non si può installare tramite Play Store (dove le app di questo tipo sono vietate) ma la potete ottenere tramite lo store F-Droid che tra l’altro contiene solo software libero e open source. Procedete quindi all’installazione di F-Droid:

  • Attivate l’installazione di app da origini sconosciute nelle preferenze di sicurezza del vostro dispositivo
  • Scaricate e installate l’APK di F-Droid dal sito
  • Aprite F-Droid e premete la voce Aggiorna i repository nel menu
  • Cercate AdAway e installatelo

Le figure mostrano il processo passo per passo:

A questo punto potete aprire AdAway:

  • Date i permessi di root all’applicazione quando viene richiesto
  • Cliccate sul bottone per scaricare i filtri
  • Confermate di voler riavviare il telefono quando vi viene proposto

Da questo momento il filtro sarà sempre attivo, potreste persino disinstallare l’app… anche se vi consiglio di tenerla e di aggiornare periodicamente i filtri con lo stesso pulsante. 🙂

Dispositivi senza permessi di root (Android 5.0 e seguenti)

Se il telefono non è rootato, l’unico modo per filtrare le richieste a un server DNS e/o le connessioni a determinati server è l’attivazione di una VPN da parte di una app. Ho già parlato in passato di cosa sono le VPN e di quanto sia fondamentale usarle per proteggersi, perciò dovreste avere una vaga idea di cosa sto parlando.

La cosa interessante però è che andremo ad usare una app che crea una finta VPN, cioè non instrada il nostro traffico su server sicuri ma si limita a bloccare gli indirizzi dei server che forniscono le pubblicità. Chi usa Android 5.0 o versioni successive può usare DNS66, che si può installare sempre tramite F-Droid (consultate la sezione dedicata ad AdAway per maggiori dettagli).

DNS66 contiene dei file di host già configurati, pertanto basta poco per attivare i filtri:

  • Aprite DNS66
  • Premete il pulsante con la freccia circolare per aggiornare i file di host
  • Tenete premuto a lungo il grosso bottone di accensione
  • Android vi mostrerà una richiesta per consentire l’uso della VPN
  • Verificate che ci sia il simbolo della chiave in alto sullo schermo e che DNS66 sia nello stato Running

I filtri si possono disattivare a piacere usando il bottone nell’app. Nelle versioni recenti di Android la VPN dovrebbe ripartire automaticamente anche se riavviate il telefono.

Dispositivi senza permessi di root (Android 4.0 e seguenti)

NoRoot Data Firewall è una app gratuita che permette di bloccare il collegamento ad Internet di alcune applicazioni. Lo fa usando lo stesso trucco della finta VPN usato da DNS66 e la cosa interessante è che dà la possibilità di usare un server DNS personalizzato. Possiamo pertanto sfruttare questa app anche senza utilizzarne le funzioni di firewall, ma limitandoci a impostare un server DNS che blocchi i server pubblicitari.

Procedete come segue:

  • Installate NoRoot Data Firewall da Google Play Store (ha uno scudo blu come logo)
  • Aprite la app e consentite l’avvio della VPN, dichiarandola sempre attendibile
  • Osservate che le app hanno due colonne di simboli gialli (sono relativi al filtraggio)
  • Cliccate sul simbolo dell’antenna in cima alla prima colonna e selezionate Permetti tutte le connessioni
  • Ripetete la stessa operazione con la seconda colonna (a questo punto dovreste aver consentito l’uso di Internet a tutte le app)
  • Spostatevi sulla sezione Config e sui Permessi di default mettete Permetti connessione in entrambi i casi
  • Scorrete in basso, attivate Set DNS server e come indirizzo impostate quello di Alternate DNS: 198.101.242.72
  • Riavviate il dispositivo

Alcune versioni vecchie di Android potrebbero chiedervi una conferma di connessione alla VPN ogni volta che accendete il telefono.

Cambio del DNS per chi usa già una VPN

Come avrete notato, le due soluzioni per dispositivi senza permessi di root richiedono l’attivazione di una (finta) VPN. Però, come dicevo prima, è importante utilizzare un vero servizio VPN per navigare in modo sicuro.

Pertanto, chi ha a cuore la propria sicurezza anche nelle reti wireless dei locali pubblici fa già uso di una app VPN e non ne può attivare due contemporaneamente. Mi trovo anche io in questa situazione.

Fortunatamente, in questo caso si può utilizzare comunque un server DNS personalizzato. Quasi tutte le app Android dei vari provider VPN infatti sono basate su OpenVPN e i client OpenVPN consentono di configurare il server DNS. Il come però dipende un po’ da quale provider utilizzate e dalla app con cui vi collegate.

Io utilizzo VPNSecure e la loro app ufficiale, perciò userò questa come esempio. Per cambiare il DNS ho proceduto nel modo seguente:

  • Ho aperto la app e sono andato su Settings
  • Alla voce Advanced config ho scritto questa riga per impostare il server di Alternate DNS:
    dhcp-option DNS 198.101.242.72
  • Ho premuto Add to config
  • Ho scollegato e ricollegato la VPN

Altre app simili potrebbero avere i parametri in un altra sezione, però la riga di configurazione OpenVPN da aggiungere è sempre quella.

Conclusione

In questo post abbiamo visto che ci sono diversi modi per bloccare la pubblicità su Android e si può fare anche senza permessi di root. Il blocco si configura una volta e non ci si pensa più, o al limite si può ricontrollare ogni tanto per vedere se si devono aggiornare i file di host.

Così facendo si può godere di una navigazione più veloce, che consuma meno giga e meno esposta al rischio di malware o banner fastidiosi. Naturalmente il filtro “perfetto” non esiste e qualcosina potrebbe passare lo stesso, ma la differenza la noterete subito. 😀

app_android

Come si creano le app Android — Linux Day 2016

Il 22 ottobre si è svolto il Linux Day 2016 in tutta Italia. Come ormai faccio da anni, ho partecipato all’organizzazione di quello di Bassano del Grappa (VI) assieme a GrappaLUG.

Il Linux Day è un evento fantastico per vari motivi: è gratuito, si trova in decine di città in tutto il paese, e consente alle persone di avvicinarsi a Linux e conoscere varie tematiche relative al mondo del software libero.

Quest’anno ho deciso di proporre un talk basato essenzialmente sul mio lavoro, parlando dello sviluppo di app per Android, il quale è un sistema operativo basato su Linux, perciò eravamo pienamente in tema. 🙂

Di seguito potete vedere la registrazione del talk e le slide su SlideShare. Se volete scaricarle, le trovate sul sito del GrappaLUG. Naturalmente fatemi sapere se avete qualche domanda o dubbio. Buona visione!

Usare Jquery per gestire tabelle e altri elementi con overflow su dispositivi mobili

Qualche tempo fa mi stavo occupando di rendere un sito web mobile-friendly e mi sono trovato di fronte alla necessità di gestire delle tabelle molto larghe. Purtroppo non era possibile pretendere che le tabelle fossero tutte quante di larghezza ridotta o con poche colonne, perciò era necessario usare l’overflow orizzontale con il CSS.

Oltre alle tabelle, ci sarebbero state anche delle formule visualizzate con Mathjax che — se molto lunghe — avrebbero “sfondato” la pagina. Ho avuto modo di accorgermi ben presto che la soluzione è leggermente meno semplice di quanto si possa pensare.

Nonostante le ultime versioni di Android e di iOS per iPhone/iPad supportino lo scorrimento di parti di pagina affette da overflow, le versioni vecchie di Android non permettono di scorrere correttamente con il dito, mentre quelle di iOS richiedono due dita e ciò è poco intuitivo.

Fortunatamente, ho trovato una soluzione interessante in Javascript sul blog di Chris Barr. Leggendo i commenti, ho anche scoperto con piacere che un lettore (Jeff) ne aveva fornito una versione Jquery, mentre un altro (Cormac) suggeriva l’utilizzo del metodo .live() per consentirne un corretto utilizzo anche su elementi caricati nel DOM in un momento successivo.

Ho deciso di unire i due approcci ed è venuto fuori il seguente risultato, che potete includere all’interno della pagina:


function isTouchDevice(){
	try {
		document.createEvent("TouchEvent");
			return true;
	}
	catch(e) {
		return false;
	}
}

function touchScroll(selector) {
    if (isTouchDevice()) {
        var scrollStartPosY=0;
        var scrollStartPosX=0;
        $("body").delegate(selector, 'touchstart', function(e) {
            scrollStartPosY=this.scrollTop+e.originalEvent.touches[0].pageY;
            scrollStartPosX=this.scrollLeft+e.originalEvent.touches[0].pageX;
        });
        $("body").delegate(selector, 'touchmove', function(e) {
            if ((this.scrollTop < this.scrollHeight-this.offsetHeight &&
                this.scrollTop+e.originalEvent.touches[0].pageY < scrollStartPosY-5) ||                  (this.scrollTop != 0 && this.scrollTop+e.originalEvent.touches[0].pageY > scrollStartPosY+5))
                    e.preventDefault();
            if ((this.scrollLeft < this.scrollWidth-this.offsetWidth &&
                this.scrollLeft+e.originalEvent.touches[0].pageX < scrollStartPosX-5) ||                  (this.scrollLeft != 0 && this.scrollLeft+e.originalEvent.touches[0].pageX > scrollStartPosX+5))
                    e.preventDefault();
            this.scrollTop=scrollStartPosY-e.originalEvent.touches[0].pageY;
            this.scrollLeft=scrollStartPosX-e.originalEvent.touches[0].pageX;
        });
    }
}

La cosa interessante della soluzione proposta da Jeff (e che ho riutilizzato) è quella di permettere il corretto funzionamento dei link contenuti nell’elemento che scorre.

Come potete intuire dal codice, la prima funzione controlla se il dispositivo è dotato di touchscreen oppure no, mentre la seconda accetta un selettore Jquery e associa un evento che viene azionato quando l’utente scorre con il dito sopra gli elementi corrispondenti.

Per applicare lo scorrimento alle tabelle, è necessario racchiuderle con un contenitore (in questo caso un <div>) in modo da applicare l’overflow, che con le tabelle non funziona in modo convenzionale.

La funzione deve essere richiamata dentro a $(document).ready(), e può essere utilizzata così, tenendo presente il trucco per le tabelle:


$(document).ready(function() {
    touchScroll(".MathJax_Display");
    $("table").wrap('<div class="table-scroll"></div>');
    $(".table-scroll").css('overflow', 'auto');
    touchScroll(".table-scroll");
});

La prima chiamata a touchScroll() si occupa delle formule prodotte da MathJax, i cui elementi compaiono nel DOM in un momento successivo ma sono catturati ugualmente grazie all’uso di .delegate(). Le seguenti righe si occupano invece di racchiudere le tabelle con un contenitore di classe table-scroll e applicano la funzionalità di scorrimento usando il selettore adeguato.

Questo è quanto! Come avete visto, una volta predisposta la funzione di Chris Barr modificata da Jeff, Cormac e me è sufficiente usare una chiamata per applicare l’overflow agli elementi desiderati. Nel caso delle tabelle, è necessario inserire un contenitore addizionale, ma questo si può fare con Jquery, in modo da evitare di introdurre modifiche al markup della pagina.

Sveglia silenziosa e microfono spento su Android — ecco come risolvere

Di recente mi sono trovato ad affrontare due diversi problemi legati all’audio sul mio telefono Android (nello specifico uno Star B63M, modello cinese economico ma dalle buone prestazioni). Il primo è ciò che avevo definito solo “un problema con la sveglia”, ovvero al mattino la sveglia, invece di squillare, vibrava e basta. Il secondo è addirittura più fastidioso, ovvero durante una telefonata l’interlocutore non mi poteva sentire.

Inizialmente ho pensato che si trattasse della scarsa qualità del mio dispositivo, ma è bastato cercare e cercare ancora per verificare che si tratta di problematiche assai diffuse su molti dispositivi e versioni di Android. Di seguito vi spiego quindi come potreste risolverli, o perlomeno questi sono semplici passaggi che hanno funzionato al 100% per me.

Sveglia silenziosa — ovvero “silent alarm bug”

Questo problema mi ha “simpaticamente” colpito il primo giorno di università qui in Danimarca. Si tratta in sostanza del fatto che al mattino la sveglia invece di squillare vibra e basta. Per rendere la faccenda ancora più complicata da gestire, nel mio caso reimpostando la sveglia per fare dei test essa suonava senza problemi… fino al mattino dopo, quando era silenziosa di nuovo.

Ironicamente, notando il telefono vibrare e toccando lo schermo, il suono partiva senza problemi. Il mio rimedio iniziale è stato drastico: ho comprato una piccola sveglia da tavolo. 😀 Poi con più calma ho cercato di risolvere la questione cercando di capire cosa poteva essere successo. Ero certo infatti che l’opzione Allarme in mod. silenz. fosse correttamente attivata.

Leggendo un po’ (ad esempio qui), ho scoperto che il problema viene scatenato se cercate di usare insieme la suoneria e la vibrazione. Questo teoricamente si può fare ma nella pratica fa sì che il telefono vibri e basta. Per risolvere il problema quindi, disattivate la vibrazione su tutte le sveglie, anche se sono avviate da applicazioni di terze parti.

Microfono muto — detto anche “silent call bug”

In realtà il problema è un po’ più esteso, non riguarda solo le chiamate: quando capita il microfono è completamente muto e non consente il funzionamento della ricerca vocale, il registratore di suoni, eccetera. Se capita anche a voi, potete testare facilmente usando la ricerca vocale.

Dopo aver letto questo thread ho capito che il mio telefono a volte decide che l’auricolare è connesso anche se ciò non è vero, e disattiva il microfono esterno. Stranamente, l’output dagli speaker integrati funziona benissimo lo stesso. Il post illuminante è il seguente:

Wired Headphone Routing Fix

There is an issue with a lot of Android devices where the OS thinks the headphone is being plugged in and unplugged on its own.

I have rooted 4.0.4 AOKP and it still occured.

Try this free application to resolve it:

https://play.google.com/store/apps/details?id=com.woodslink.android.wiredheadphoneroutingfix

Le impostazioni di SoundAbout
Le impostazioni di SoundAbout

Ho provato ed ha funzionato quasi subito. Questo è il procedimento che per me ha avuto successo e che vi consiglio:

  1. installate l’applicazione SoundAbout e non spostatela nella scheda SD
  2. attivate il riconoscimento degli auricolari ma dite di ignorare il microfono (vedete la figura)
  3. riavviate il telefono
  4. inserite le cuffie
  5. rimuovete le cuffie
  6. testate la ricerca vocale

A questo punto dovrebbe funzionare tutto tranquillamente. 🙂 Ricordatevi che se volete usare gli auricolari per chiamare dovrete riattivarne il riconoscimento all’interno dell’applicazione.

Di nuovo leggibile dai dispositivi mobili, finalmente!

La pagina dei contatti visualizzata da un browser per dispositivi mobili

È da parecchio che avevo notato diversi problemi per accedere il blog da parte dei dispositivi mobili, in particolare usando il mio HTC Wildfire con Android 2.2. Purtroppo infatti nella maggior parte dei casi il browser andava in crash e rendeva del tutto impossibile navigare o leggere gli articoli.

Ho provato sia attivando il tema mobile e sia tenendolo disattivato, ma nulla. Alla fine, ho scoperto che la colpa andava attribuita ai font personalizzati di Typekit. Addirittura, parlano di crash persino nel blog ufficiale, indicando pure un modo per disattivare i font per chi naviga da iPhone e Android. Inutile dire che l’ho fatto immediatamente, dopotutto meglio usare i font standard che non essere neppure in grado di navigare!

Ho successivamente riattivato il tema mobile e finalmente posso dire che il sito è navigabile. Già che c’ero, ho  provveduto a sistemare la pagina dei contatti, passando da una pessima tabella a due colonne a due contenitori (div) fluttuanti con una larghezza minima (min-width) del 50%: in questo modo se ci sta tutto in due colonne si vede come sul computer, altrimenti la seconda colonna scorre sotto alla prima ed è comunque leggibile. 🙂

A parte la parentesi tecnica, vi segnalo che c’è ancora un piccolo problemino per chi ha una risoluzione ridotta (come la mia di 240x320px) di cui potete leggere nel forum di WordPress.com.

Tutto è bene quel che finisce bene! Se riscontrate altri problemi fatemelo sapere. 😛

Utilizzare il nuovo Readability tramite bookmarklet anche su Android (2.2)

Per chi non lo conoscesse, Readability è uno strumento da utilizzare quando si naviga in internet e ci si imbatte in un sito web dal layout scomodo oppure infestato di banner colorati e lampeggianti da tutte le parti, oppure ancora con font piccolissimi. Una volta premuto un pulsante (o un segnalibro speciale, detto bookmarklet) inizia la “magia” e il contenuto principale della pagina viene portato in centro e reso comodo da leggere, mentre tutto il resto sparisce.

Vi faccio un esempio con un sito che ogni tanto leggo, il ScienceDaily. Le notizie sono interessanti, però il layout è orrendo! Più di metà pagina (in senso verticale) è dedicato a ben due barre laterali con un sacco di link ad altri articoli, e la colonnina da leggere è tutta compressa sulla sinistra (per di più inframezzata da un elenco di altri link). Ecco uno screenshot dell’articolo Mathematical Model for Moving Bottlenecks in Road Traffic:

Estrema scomodità di lettura

La stessa pagina processata da Readability si visualizza all’incirca così (c’è anche una barra laterale che ho ritagliato):

Layout semplice e leggibile

Quella che vedete è l’ultima versione, che è diventata attiva oggi (almeno per quello che ho potuto notare). Prima la funzionalità principale (cioè quella di leggere bene le pagine, appunto) era semplicemente attivata da un bookmarklet che si salvava nei segnalibri del browser (io per comodità lo tengo proprio nel menu segnalibri). Uno strumento che ha funzionalità analoghe è Notforest, il quale però elimina sempre tutte le immagini. A seconda dei casi uno può essere migliore dell’altro. 🙂

Ora hanno introdotto l’estensione per Firefox e altri browser, io però continuo a preferire il bookmarklet perché posso memorizzarlo nel menu assieme a quello di Notforest. Cercando un po’ nelle FAQ alla fine ho scoperto che l’hanno mantenuta aggiornata per chi vuole. Si trova disponibile qui.

Sul sito di Readability scrivono chiaramente che questo bookmarklet non funziona con Android e la funzionalità di lettura sul telefono è disponibile per chi paga la versione premium. Ciò è vero, ma è semplicemente perché hanno codificato il bookmarklet con un sacco di caratteri di escape! È sufficiente usare un purificatore di javascript togliendo i ritorni a capo e le tabulazioni per ottenere un bookmarklet utilizzabile con Android. Vi ricordo che avete bisogno almeno della versione 2.2, perché prima i segnalibri con codice javascript non erano supportati.

Per installarlo andate a questo indirizzo con il vostro telefono e tenete premuto sull’area di testo modificabile. A questo punto scegliete l’opzione “copia tutto” e create un nuovo segnalibro nel browser di Android. Nell’indirizzo incollate il codice che avete copiato prima. Ora non vi resta che visitare una pagina con un articolo e pubblicità varie intorno e provare a “visitare” il segnalibro di Readability. Attendete qualche istante e vedrete un risultato simile a questo:

Le eventuali immagini vengono automaticamente adattate: mai più scorrimento orizzontale!

Con i bookmarklet precedenti c’erano più possibilità di personalizzazione “permanente” nel senso che si poteva salvare uno specifico stile grafico da usare sempre, però in compenso non veniva generato un URL per la pagina ripulita, cosa che si rivela molto comoda per inviarlo ad altre persone. Il trucco di PasteBin è stato ripreso da ciò che ha suggerito Chivil sul proprio blog.

HTC Wildfire: Android perfetto per l’università

Vi ho più volte accennato di aver cambiato telefono e finalmente è arrivato il momento di parlarne. Non sarà una recensione qualunque, ne potete trovare tante in giro. Mi voglio invece concentrare su una lista di applicazioni Android perfette per l’università e più in generale per gli studenti.

Tutto il contenuto della lista è frutto della mia esperienza personale. Ciò da un lato significa che potete “fidarvi” sul fatto che io abbia provato veramente ciò di cui scrivo (sono programmi che uso abitualmente); d’altro canto però vale a dire anche che non è un elenco esaustivo. Anzi, se conoscete altre applicazioni utili a riguardo dello studio o della produttività sono felicissimo di ricevere le vostre segnalazioni e discuterne nei commenti.

Perché il Wildfire?

Esistono della convinzioni abbastanza sbagliate sul mondo degli smartphone in generale. Una ad esempio è quella che se un telefono costa meno di 500€, non ha la schermo in HD e non ha la CPU di un computer di 3-4 anni fa significa che è pessimo.

Ovvio che metà di questi luoghi comuni li crea ad-hoc Apple, ma non voglio divagare su questo. Sta di fatto che l’HTC Wildfire è un cellulare eccellente. Ha uno schermo grande quanto basta per vederci benissimo e allo stesso tempo poter stare in tasca. Il processore da 500MHz gli consente la fluidità necessaria a tenere almeno 4 o 5 applicazioni aperte contemporaneamente (senza contare quelle in background). Come se non bastasse monta Android (versione 2.1), cosa importantissima anche per lo scopo di questo post, il quale è open source e meraviglioso: potete capirlo dopo averlo provato.

È un HTC, Garanzia di qualità per quanto concerne l’hardware. Inoltre questa azienda sviluppa un sistema Android con HTC Sense, un’interfaccia molto migliorata con alcune applicazioni in più e l’integrazione con i social network. Infine è uno dei pochi smartphone sul mercato con un prezzo onesto: 300€.

Forse è superfluo dirlo, ma preciso che ovviamente tutti i programmi suggeriti sono gratuiti (al limite ad-supported) in quanto non è mia intenzione suggerirvi di comprare applicazioni: non serve a niente. Inoltre mi auguro che tutti voi abbiate un account Google e ne facciate già intenso uso per organizzare la vostra vita. Se non è così vedrete a grandi linee come sfruttarlo al meglio leggendo fino in fondo.

Comunicazione a portata di tap

Uno dei punti di forza di un dispositivo multimediale di questo livello è indubbiamente l’ampia rosa di possibilità legate alla comunicazione. Con queste applicazioni potete coprire praticamente qualsiasi mezzo esistente:

  • Contatti La rubrica integrata nel Wildfire ha ottime funzioni di integrazione tra Gmail, Facebook e Twitter. Permette anche un mash-up semi automatico dei contatti, perciò appena inseriti i miei account posso già vedere il numero di telefono di un amico salvato su Gmail con la sua foto di Facebook
  • FriendStream, Peep e Facebook Le prime due sono le applicazioni HTC per gestire gli status di Facebook e Twitter, vi conviene comunque installare anche l’applicazione ufficiale di Facebook per avere alcune funzioni in più, per esempio i messaggi privati. Se usate un dispositivo Android che non è di HTC avete ottime alternative come TweetDeck e Seesmic. Il vantaggio di quest’ultimo è che ha anche un’interfaccia web da usare sul PC.
  • Gmail e Posta La prima è inclusa in tutti i dispositivi Android con le applicazioni di Google. La seconda è di HTC e serve per altri servizi tramite POP o IMAP (quindi potete fare a meno di usarla…). Se non adoperate Gmail come vostro indirizzo di posta è ora di ricredervi!
  • Gtalk, Imo e Nimbuzz Personalmente odio l’impostazione di Gtalk che fa partire il programma con l’avvio di Android, per cui vi consiglio di disattivarla. Imo e Nimbuzz vi permettono di chattare su tantissimi network come Yahoo, Msn, e altri, incluso Skype. Con Nimbuzz potete anche effettuare chiamate su Skype gratis verso Skype e pagando con SkypeOut per gli altri numeri. Contiene anche un proprio servizio di chiamate.

Informazioni sempre aggiornate

Con una connessione a internet, specialmente wireless, è comodissimo anche accedere alle informazioni in rete. Non solo tramite browser.

  • News e Greed2 HTC fornisce una applicazione per leggere gli RSS, ma non si integra per nulla con Google Reader. Per questo ho deciso di usare questa applicazione di terze parti che ha anche dei comodi pulsanti per le funzioni più comuni (like, share, ecc.) e si sincronizza con il nostro account Google. Se siete stufi dei banner in modalità orizzontale (che danno veramente fastidio per leggere, mentre in verticale no) potete bloccare nel vostro router l’accesso a admob.com così almeno a casa la lettura è tranquilla.
  • DB Navigator I pendolari troveranno in questa applicazione la salvezza! Sviluppata dalle ferrovie tedesche (che a quanto pare lavorano assai meglio delle nostre) contiene orari da tutta Europa, quindi anche quelli italiani, e permette di salvare nei preferiti diverse tratte in modo da avere le tabelle orarie sempre a disposizione.
  • Wapedia A dire la verità ho smesso di usare questa applicazione perché la usavo poco, ma per chi è abituato a sfogliare Wikipedia sempre e comunque fornisce una comoda interfaccia al sito (e ad altre wiki minori).
  • Wolfraroid Questa applicazione è solo una interfaccia per accedere rapidamente al servizio WolframAlpha (che spero conosciate) ma è comunque ottima per ottenere rapidamente la soluzione di un equazione, oppure lo schema molecolare della caffeina!

Gestione di lezioni e documenti

Queste funzioni sono utili specialmente per chi passa tanto tempo in treno e vuole trovare il modo per renderlo utile, per esempio con un ripassino veloce di qualche concetto importante.

  • PDF Viewer e Adobe Reader è vero che il Wildfire ha già un lettore di PDF più che soddisfacente, ma ho installato anche l’applicazione di Adobe perché fornisce una feature particolare ma molto utile: la ridisposizione del testo! A volte è un po’ lento ma consente di leggere i PDF di pagine piene di testo senza dover scorrere continuamente in laterale, perché sono i paragrafi ad adattarsi allo schermo.
  • Astro File Manager Praticamente indispensabile, consente di accedere ai file sul telefono e soprattutto in memoria. Un utilizzo banale ma interessante è quello di creare le cartelle per suddividere le foto senza dover usare il PC! Ha anche alcuni moduli a parte, tra cui quello per il Bluetooth.
  • Calendario Un altro ottimo esempio di integrazione. L’agenda del Wildfire si integra con Google Calendar e i compleanni di Facebook. Perfetto per avere sempre sott’occhio le lezioni e i treni. L’unico difetto è che non rispetta sempre i colori che si impostano sull’interfaccia web di Google Calendar e non si possono correggere. Vi consiglio di creare su Calendar un calendario dedicato all’università e impostare le vostre lezioni usando la funzione di ripetizione settimanale. Facendo lo stesso anche per i treni/bus/trasporti vari avrete una visione d’insieme efficacissima. Vi consiglio anche la lettura di questo ottimo articolo.
  • Dropbox Credo anche questo non abbia bisogno di presentazioni: è il client mobile dell’omonimo programma per computer. A differenza degli altri non scarica automaticamente tutti i file (altrimenti saturerebbe subito la memoria) ma è assai utile per tenere aggiornata la copia delle varie lezioni in PDF che ogni bravo universitario dovrebbe tenere su Dropbox. Per caricare i file richiede un file manager come Astro. Mancano alcune funzioni particolari, e purtroppo non si può impostare il download automatico sulle cartelle, ma va bene anche così.

Prendere note e appunti

Spesso quando sono in giro preferisco non perdermi con fogli e foglietti (che non si trovano mai) al contrario di ciò che faccio solitamente a casa. Vi presento alcune opzioni per note e appunti.

  • android.icio.us Si può usare per salvare i link interessanti e utili trovati navigando col browser del telefono e permette di scorrere quelli già salvati in precedenza nel proprio account Delicious. Forse l’interfaccia è un po’ povera ma fa il suo dovere.
  • Evernote Purtroppo uso pochissimo questo software avendo problemi con la connessione VPN della mia università, ma sono sicuro che se avessi il wireless godrei tantissimo dell’applicazione (le funzionalità sono alquanto limitate quando si è offline). Permette di annotare testi, foto, registrazioni audio. Inoltre fa una scansione OCR delle immagini per poterne ricercare il testo contenuto. Devo ancora provare Springpad invece, ma promette bene.
  • Gtasks Dato che uso Gmail e Calendar trovo veramente comodo avere le liste di cose da fare di fianco a queste due applicazioni, usando i Google Task. Questa applicazione fornisce una comodissima interfaccia sul Wildfire, e in più anche un widget da mettere su un home screen. Ha il pulsante di sincronizzazione manuale e si sincronizza quando aprite l’applicazione. Devo però provare anche Taskos! Se preferite Remember The Milk (ma chi ve lo fa fare?) potete usare l’applicazione ufficiale con servizio a pagamento o altre fatte da terzi.

Conclusione

Come avete visto le possibilità sono molte, e sicuramente mi saprete consigliare anche voi altre applicazioni interessanti. Come ultima cosa prima di finire il post, vi voglio consigliare di tenere traccia di tutto ciò che avete aperto con Mini Task Manager, in modo da “uccidere” le applicazioni che pensate di avere chiuso ma stanno continuando ad appesantire il sistema e consumano batteria.

Aspetto i vostri suggerimenti!

Questo Android mi esalta

Per la verità, ho avuto gli stesi dubbi di quando si rumoreggiava ancora sul GPhone. In che modo parlare di una novità senza ricadere nel mero fare eco a decine di blog diversi, di vario grado di dozzinalità? Bella domanda. E bella è anche la risposta. Penso di stare simpatico a Google, se alla ricerca “gphone” ad oggi il quarto risultato è questo:

Quindi, penso di poter ripetere la cosa, parlando della notizia non come fanno tutti, ma a modo mio. La cosa che più ho apprezzato di Android è il fatto che esso sia open source. E la parte più interessante è il discorso sulla macchina virtuale che è al suo interno. Si tratta di un prodotto simil-Java, ma senza restrizioni di licenza.

Google ha sempre capito come muoversi nel mercato, e ora sta sfruttando un modello di sviluppo geniale. Ha creato la piattaforma, reso libero il codice, e dato a tutte le menti elette in circolazione la possibilità di svilupparci software sopra. Idea suprema direi. Prevedo un futuro roseo, e aperto.

Sì, perchè non sto lì a spiegarvi per l’ennesima volta i vantaggi del software aperto, ma penso che questo darà un grande contributo anche ad altri progetti, come Openmoko per esempio.

Immagino che vi chiederete cosa può fare, perché l’Italia non può partecipare ad un concorso organizzato da Google, e come fare per provarlo subito.

alle prime due domande ho allegato un link. Per la terza, be’ semplice, scaricate l’SDK e provatelo! 😉 L’eseguibile è nella cartella tools presente nell’archivio.