Tag Archives: java

In-App billing per comuni mortali puntata 3 – Le richieste

 Come fare le richieste – Ecco appunto Come farle? 🙂

A questo punto abbiamo tutti gli strumenti base per cominciare a fare le nostre richieste al MarketBillingService.

Come avevamo detto le richieste si faranno mediante il metodo sendBillingRequest, questo metodo come argomento prende un Bundle per la richiesta, e ne torna uno sincrono con la risposta.

Il Bundle della richiesta é composto minimo da tre campi:

  • BILLING_REQUEST (stringa)- che contiene il tipo di richiesta che andremo a fare (CHECK_BILLING_SUPPORTED, REQUEST_PURCHASE, etc)
  • API_VERSION (intero)- La versione delle API del servizio che andremo ad usare, al momento che sto scrivendo questo articolo vi sono solo due versioni di API (versione 1 e 2) , la 2 si differenzia dalla 1 perche contiene il nuovo servizio di Subscription tramite l’in-app billing, che nion andremo a vedere in questa guida, comunque.
  • PACKAGE_NAME (stringa) – il nome del package che sta effettuando la richiesta

Quindi supponiamo che sia il pcakage name e la versione delle API che vogliamo usare siano sempre le stesse,  l’unico campo che varierá per le richieste sará BILLING_REQUEST.

Continue reading In-App billing per comuni mortali puntata 3 – Le richieste

In-app billing per comuni mortali – puntata 2

In questa seconda puntata spieghiamo brevemente come funziona l’architettura del billing in-app e cominciamo a inserire i primi metodi e classi nel nostro progetto.

L’Architettura

La gestione delle richieste dall’in-app billing utiliza principalmente una sequenza di messaggi asincroni per soddisfare le richieste fra l’applicazione e i server di google. Tutte le richieste che fa la nostra applicazione relative agli acquisti, non interagiscono direttamente con i server di google, bensí inviano le loro richieste tramite IPC al servizio relativo nell’applicazione del Google Play store.  Ovviamente se noi vogliamo possiamo interagire con dei nostri server per gestire gli acquisti, una volta effettuati, degli utenti. Ma mai la nostra applicazione, ne il nostro server entreranno nel merito della transazione (tranne per i suoi contenuti quali risultato, oggetti ordinati, etc).

Come detto precedentemente i componenti fondamentali su cui si basa una implementazione dell’in-app billing sono il Servizio, il BroadCastReceiver e una componente relativa alla sicurezza.

Ovviamente se necessario la nostra applicazione deve gestire anche il salvataggio delle impostazioni dopo l’acquisto.

Lo schema in figura rappresenta brevemente come avviene la comunicazione fra il servizio in-app di google play e la nostra applicazione.

Continue reading In-app billing per comuni mortali – puntata 2

In-app billing per comuni mortali – puntata 1

Iniziamo questa nuova serie di articoli a puntate dedicata all’utilizzo del nuovo servizio di in-app billing di google per i telefonini android che ci consente di ricevere pagamenti direttamente all’interno della nostra applicazione.  Inizialmente questa guida avrei voluto farla in un unico post, ma arrivato alla decima pagina e ancora non avevo finito, mi sono reso conto che forse sarebbe stato meglio suddividerla in piú articoli. E quindi iniziamo questa prima puntata introducendo le caratteristiche del servizio, vedendo quali pacchetti andranno installati e quali sono i primi passi da fare per abilitarlo all’interno della nostra applicazione.

Il billing in-app per le applicazioni android come detto precedentemente permette all’utente di effettuare degli acquisti direttamente dalla nostra applicazione, utilizzando i servizi del Play store senza doverci piú preoccupare della gestione delle transazioni, il tutto avverrá in maniera molto simile a quanto accade gia per l’acquisto di un app, utilizzando anche le stesse informazioni finanziarie, fornendo cosí anche agli utenti una discreta sicurezza sul sistema che si sta adottando per gestire le transazioni. Come tutte le cose ci sono dei pro e dei contro, vediamoli brevemente:

Continue reading In-app billing per comuni mortali – puntata 1

Gentoo: Subclipse errore: “Failed to load JavaHL Library”

Se dopo aver installato il plugin subclipse nel vostro eclipse ricevete il messaggio di errore:

“Failed to load JavaHL Library.”

Questo dipende dal fatto che probabilmente avete installato subversion senza lo use flag  java. Quindi prima di tutto controllate se gli use flag del vostro subversion (spero che subversion lo avevate gia installato ) e vedete se java e’ attivato con il comando:

emerge --info subversion

Ora se lo avete installato senza modificare i flag use probabilmente l’opzione java e’ disabilitata (in emerge le opzioni disabilitate sono precedute da un -, quindi dovreste vedere -java). Vi basta editare il vostro file package.use (se non lo avete createne uno) in /etc/portage, e aggiungere la seguente linea:

#SVN with java
>=dev-vcs/subversion-1.6.17-r7 java

E ora reinstallate subversion con il comando:

emerge --newuse subversion

Aspettate, e una volta terminata la reinstallazione di subversion al prossimo riavvio di eclipse non dovrete piu avere problemi.

 

Android Lezione 8 – L’Options Menu

Dopo aver visto nella lezione 5 il context menu, che normalmente si utilizza quando vogliamo aprire un menu specifico per un oggetto (casella di testo, bottone, immagine, etc), ora introduciamo un nuovo tipo di menu che invece é piú legato all’applicazione, e si tratta per la precisione di quel menu che si ottiene premendo il pulsante del menu sul telefono. Un esempio e’ mostrato in figura:

Continue reading Android Lezione 8 – L’Options Menu

Android Lezione 6 – Le caselle di testo

In questa lezione vedremo come inserire e utilizzare una casella di testo per le nostre applicazioni. Grazie a questo componente potremo prendere del testo in input ed elaborarlo secondo le nostre esisgenze.

Come al solito l’applicazione di esempio si basa su quella delle lezioni precedenti, quindi se volete scaricatela da qua. Proseguiremo il progetto di esempio da dove lo abbiamo lasciato, aggiungendo una casella di testo nella quale inseriremo il nostro nome e modificheremo il comportamento del tasto Greetings, che ora ci saluterà chiamandoci per nome.

Anche in questo caso la dichiarazione dell’oggetto puo essere fatta sia a livello di XML che a livello di Codice runtime.

La classe che andremo ad utilizzare è la EditText. Vediamo subito cosa dobbiamo importare:

import android.widget.EditText

Continue reading Android Lezione 6 – Le caselle di testo

La mia prima app android!

Beh, in tutto questo studiare android come funziona e come si sviluppa, ho deciso di rendere disponibile la prima app che ho sviluppato , si tratta di una semplice applicazione che illumina e spenge lo schermo (io la trovo utilissima come torcia).

Questa applicazione non la trovate sull’android market (ancora mi ci devo iscrivere) quindi se siete interessati a scaricarla ecco qua il qr-code:

E l’url diretto invece: http://italialinux.altervista.org/Files/LightDroid.apk

Piu in la penso che rilascero anche i sorgenti, magari al termine delle lezioni androdi che sto portando avanti potrebbe essere la base di un applicazione di esempio finale, per far vedere un intero progetto Android come portarlo avanti.

Per ora se vi va potete scaricarla (mi farete un grande piacere :D). Se ci sono problemi o malfunzionamenti lasciate un commento e vi risponderò!

Android Lezione 5 – Il Context Menu

In questa lezione introduciamo un nuovo oggetto dell’interfaccia di Android: il Context Menu.

Si tratta di uno dei menu messi a disposizione dal sistema android, e viene chiamato quando l’utente tocca per qualche secondo una View, per la quale è stato registrato un oggetto appunto di tipo Context Menu.

Questo menu può essere utilizzato in vari contesti, per esempio si potrebbero voler mostrare delle opzioni se un utente tiene premuto il dito su una casella di testo, magari mostrando un elenco di opzioni disponibili, oppure durante la visualizzazione di un immagine per mostrare delle opzioni relative ad essa, etc.

Passiamo ora a vedere come implementarlo. Per riempire le voci del menu sono disponibili diverse modalità, in questa guida vedremo principalmente quella basata sul file xml. Se state seguendo i tutorial aprite il progetto ItalialinuxExample che abbiamo iniziato durante le lezioni precedenti, altrimenti potete scaricarlo da qua

Prima di tutto (per comodità) creiamo una cartella “menu” all’interno di res:

Qui andremo a mettere tutti i file xml relativi alle voci di menu. Ogni file indicherà un menù. Quindi creiamo un nuovo menu, clickando col destro sul folder appena creato selezionando: New -> Android XML File. Si aprirà una schermata simile alla seguente:
Continue reading Android Lezione 5 – Il Context Menu

Android Lezione 4 – I bottoni

Nella lezione abbiamo visto come far scrivere del testo alla nostra applicazione, ora introduciam un altro degli oggetti base delle interfacce grafiche per android: I bottoni.

In questa lezione spieghermo come inserirli nel progetto, e come gestire gli eventi di pressione del bottone. Modificheremo l’applicazione di esempio aggiungendo 2 pulsanti che modificheranno il testo visualizzato nella TextView creata nell’articolo precedente.

Continue reading Android Lezione 4 – I bottoni