TESTARE E CREARE APPLICAZIONI TESTUALI JAVA PER ANDROID CON ANDROID



Похожие документы
COMUNICAZIONE UTENTI SISTEMI-PROFIS INSTALLAZIONE GE.RI.CO e PARAMETRI2015

NOZIONI BASE PER ESERCITAZIONI

Programmare in Java. Olga Scotti

Modulo. Programmiamo in Pascal. Unità didattiche COSA IMPAREREMO...

filrbox Guida all uso dell interfaccia WEB Pag. 1 di 44

Joomla: Come installarlo e come usarlo. A cura di

DOCUMENTO ESPLICATIVO

Per effettuare la stampa di una cartella di lavoro si accede al comando. Stampa dal menu File o si utilizza il pulsante omonimo sulla barra

File, Modifica, Visualizza, Strumenti, Messaggio

Istruzioni per la configurazione di IziOzi

Guida all utilizzo del compilatore lcc-win32 per creare una applicazione console

COME SCARICARE GLI EBOOK E COME USARLI CONSIGLI PASSO PER PASSO. Prendere l'elenco dei libri di testo adottati e che dovrete comprare

Servizio Feed RSS del sito CNIT

Corso Eclipse. Prerequisiti. 1 Introduzione

Appunti di Informatica 1

Modulo 4 Il pannello amministrativo dell'hosting e il database per Wordpress

Guida per la registrazione alla piattaforma di Gestione dei Corsi per il Consulente Tecnico Telematico

INDICE. Accesso al Portale Pag. 2. Nuovo preventivo - Ricerca articoli. Pag. 4. Nuovo preventivo Ordine. Pag. 6. Modificare il preventivo. Pag.

Office 2007 Lezione 02. Le operazioni più

Tools For Autism 1.0. Manuale d uso

MANUALE PARCELLA FACILE PLUS INDICE

Tutorial sugli ambienti di sviluppo: Eclipse e NetBeans

ACQUISTI MASSIVI SU SCUOLABOOK

ISTRUZIONI XCODE. Autore: Luca Florio (luca.florio<at>polimi.it)

Innanzitutto andiamo sul sito ed eseguiamo il download del programma cliccando su Download Dropbox.

PORTALE CLIENTI Manuale utente

Dropbox. Quando qualcuno ci invita a condivide con noi una cartella, veniamo avvisati via mail.

POSTA ELETTRONICA Per ricevere ed inviare posta occorrono:

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template.

Configurazione di Java per poter utilizzare l applet JEsMS.

GESTIONE NEWSLETTER 2 CREAZIONE NEWSLETTER

Guida alla configurazione della posta elettronica dell Ateneo di Ferrara sui più comuni programmi di posta

Introduzione. Installare EMAS Logo Generator

Modelli Computazionali per Sistemi Complessi

Tale attività non è descritta in questa dispensa

1. ACCESSO AL DATABASE

ISTRUZIONI PER L INSTALLAZIONE DI MINGW

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

il modulo copia commissione digitale su tablet

Guida all uso di Java Diagrammi ER

APRIRE UN PROGRAMMA DI FOGLIO ELETTRONICO

TEST: Hardware e Software

Corso base Percorso 2

MANUALE UTENTE. Computer Palmare WORKABOUT PRO

Manuale d uso Lexun Area Riservata proprietà di logos engineering - Sistema Qualità certificato ISO 9001 Det Norske Veritas Italia

Dipartimento di Ingegneria Civile e Ambientale TYPO 3 MANUALE UTENTE

WORD per WINDOWS95. Un word processor e` come una macchina da scrivere ma. con molte più funzioni. Il testo viene battuto sulla tastiera

GestVetrine 1.1 versione novembre 2014

Dispositivo Firma Digitale

WinRAR: Guida alla compressione dei files

LA CONDIVISIONE ONLINE DEGLI ARCHIVI CONTABILI TRAMITE DROPBOX

I M P O S T A R E U N A C C O U N T D I P O S T A C O N M O Z I L L A T H U N D E R B I R D

Manuale LiveBox APPLICAZIONE ANDROID.

Manuale LiveBox APPLICAZIONE ANDROID.

GESCO MOBILE per ANDROID

Breve guida a Linux Mint

Corso di formazione CerTICTablet

Come gestire le directory con R

Esercitazione 4 JDBC

CREARE UNA TAB DI FACEBOOK SULLA PAGINA AZIENDALE

Tutte le interrogazioni possono essere condotte su qualsiasi campo della banca dati (ad esempio, Forma, Frequenza, Lunghezza, ecc...).

Mappe concettuali con Cmap Istruzioni base

IMPORTANTE PER ESEGUIRE QUESTA INSTALLAZIONE NEI SISTEMI OPERATIVI NT-2000-XP, BISOGNA AVERE I PRIVILEGI AMMINISTRATIVI.

TUTORIAL PUBBLICARE e INVIARE CIRCOLARI (v 1.5) -- PRIMA FASE -- PUBBLICAZIONE DI UNA CIRCOLARE (e suoi eventuali allegati)

D R O P B O X COS È DROPBOX:

Office 2007 Lezione 08

A tal fine il presente documento si compone di tre distinte sezioni:

Guida all uso dell ambiente di sviluppo 1 integrato o IDE. JCreator LE 4.50

Introduzione all uso di Eclipse

Per effettuare la registrazione al sito bisogna cliccare sul link registrati in alto a destra del sito (Vedi Fig.1).

GESTIONE LISTE R VIRTUALI

FtpZone Guida all uso

Guida alla registrazione on-line di un DataLogger

FOXWave Gestione gare ARDF IZ1FAL Secco Marco Sezione ARI BIELLA

L interfaccia utente di Office 2010

Guida Avanzata. 1. Convertire un gioco da ISO a GOD. 2. Trasferire i giochi da HD Esterno/Chiavetta a HD Interno Xbox

1. FileZilla: installazione

Questa guida vi illustrerà i principali passaggi da eseguire per l'inserimento dei Bandi di gara.

UTILIZZO REGISTRO ELETTRONICO

Studio Legale. Guida operativa

TRUCCHI PER GIMP - Elemento a colori in foto bianco e nero

Guida operativa. My Legal Corner. BestSoft SOFTWARE IN SANITÀ

Nuovo server E-Shop: Guida alla installazione di Microsoft SQL Server

GB informazioni e freeware

Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti

Backup e Aggiornamenti

Manuale LiveBox APPLICAZIONE WINDOWS PHONE V (465)

Registrazione nuovo utente. Per registrare un nuovo utente cliccare sul link Registrazione

NOZIONI BASE SHELL E SCRIPT LINUX

COME ELIMINARE PARTI DEL TEMPLATE IN PAGINE SINGOLE

Guida all utilizzo. Rif. File: Pag. 1 / 14

TUTORIAL PER PRINCIPIANTI Installazione Locomotive

GUIDA AL SITO DELLE RIPARAZIONI BARWARE SOMMARIO

Olga Scotti. Basi di Informatica. File e cartelle

MAUALE PIATTAFORMA MOODLE

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE

FtpZone Guida all uso Versione 2.1

DINAMIC: gestione assistenza tecnica

Транскрипт:

TESTARE E CREARE APPLICAZIONI TESTUALI JAVA PER ANDROID CON ANDROID Ho deciso di scrivere questa guida per tre motivi principali: 1) Avendo un tablet che ha la possibilità di essere usato per programmare, mi sembra improponibile non poter creare delle applicazioni testuali in Java in Android. 2) Se devo testare delle classi in Java, mi pare un po' troppo dover creare un'applicazione grafica. 3) Rendere Android il più possibile separato dal pc, perché mi sembra cosa buona e giusta poter creare applicazioni per Android direttamente su Android. Bado alle ciance, cominciamo. REQUISITI MINIMI: Per prima cosa assicuratevi di avere abilitato la spunta Origini sconosciute da Impostazioni Sicurezza in Android. Dopo aver fatto questo, installate dal PlayStore le seguenti applicazioni: AIDE Android Java Editor cmdconsole

ESEMPIO: JCalc Fingiamo che vogliamo fare una semplice calcolatrice, che scelta un'operazione, dati due numeri in input, ne sputa fuori il risultato, il tutto come programma testuale. Prima però scaricate questo.zip: https://dl.dropbox.com/u/15801118/consoletemplate.zip Potete scegliere di estrarre i dati da qualche parte della vostra /sdcard e poi di aprire direttamente il progetto con AIDE posizionandovi al suo interno (quando sarete all'interno del progetto, comparirà una voce chiamata Open this App Project ). Io vi consiglio un altro metodo. Ovvero, estraete il contenuto dello zip da qualche parte in Dropbox, e poi aprite AIDE. Posizionatevi dove volete salvare il vostro progetto e cliccate su Download Dropbox Folder here..., entrate nella directory che volete scaricare e cliccate Download. Dopo aver fatto ciò cancellate il file.aidedropbox così da rimuovere la sincronizzazione con Dropbox. In questo modo potrete avere un template per la vostra App sempre a portata di mano. Ora dobbiamo personalizzare il nostro progetto, ovvero: a) cambiare il nome del progetto da ConsoleTemplate in JCalc b) rinonimare la directory template in jcalc (e quindi tutti i suoi riferimenti) Per il primo punto basta rinonimare la directory principale. Per il secondo punto invece, dobbiamo fare un paio di modifiche e rinonimazioni.

Aprite il file AndroidManifest.xml. Modificate la seguente riga: package= com.console.template in: package= com.console.jcalc Fatto questo entrare in res/raw, da qui aprite il file entrypoint.txt. Dopo aver aperto il file, cambiate l'unica riga: com.console.template.main in: com.console.jcalc.main

Torniamo all'inizio del progetto (che ora si chiama JCalc) ed entriamo in src/com/console. Da qui cambiamo il nome della directory template in jcalc. Entriamo nella rinonimata jcalc e vedremo che al suo interno di sono due file.java. Il primo, CmdApp.java è la classe che ci darà i metodi che ci permetteranno la lettura e scrittura nella console, mentre la seconda è il Main.java, ovvero il programma principale che verrà lanciato all'avvio dell'applicazione. Prima di cominciare a scrivere il codice, dobbiamo vedere i metodi di input e output. Il metodo di input è console.readln() e restituisce un oggetto di tipo String (ovvero la stringa letta). I metodi di output sono richiamabili attraverso console.stdout, e sono tali e quali a quelli di System.out. Come vedete da voi, l'applicazione è di una semplicitià triviale. Stamperà a video una riga con gli output, quindi mostrerà il prompt, ed infine richiederà l'input. Letto l'input sarà trasformato in un valore intero. Stessa operazione per i due numeri. Infine, a variazione del caso scelto, stamperà il risultato (o non lo stamperà, nel caso della divisione per 0).

Ora è tempo di compilare e lanciare l'applicazione. Dal menù a destra cliccate Run. Alla fine della compilazione (se non sono presenti errori di vario tipo) vi verrà chiesto se volete installare l'app. Ovviamente dite di no. Come no direte? Semplicemente perché a noi basta avere l'apk, non l'app installata nel nostro dispositivo. È quindi tempo di aprire cmdconsole. Come potete vedere cmdconsole si comporta come una qualunque console, tipo bash di Linux (per maggiori informazioni sui comandi vedere la sezione Approfondimenti). Il nostro file.apk si troverà dentro JCalc/bin/. Raggiunta quella posizione, per lanciarla ci basterà digitare il seguente comando: > run JCalc.apk E tadà, come vedete, la nostra applicazione funziona meravigliosamente. Ora mi chiederete, perché non possiamo usare System.out? Il motivo è semplice, perché System.out non reindirizza l'output e l'input da cmdconsole, ma bensì nella shell sh di Android. Per visualizzare ciò bisognerebbe lanciare le nostre applicazioni con la dalvikvm, e vi posso assicurare che è diventa un pelino più complicato. ; ) Se lo ritenete necessario, è possibile chiamare la classe Main.java con nome differente, l'importante è che il nome della classe di lancio (ovvero quella che contiene lo static void main(hashmap<integer, Object> args) ) sia referenziata nel file entrypoint.txt (senza l'estensione.java!).

RIASSUNTO Legenda: <ProjectName> nome del progetto <projectname> nome della cartella contenente i sorgenti del progetto <main> il nome della classe che lancia static void main(hashmap<integer, Object> args) Per la creazione di una applicazione testuale dobbiamo: 1) scaricare ed estrarre i file del template 2) rinonimare ConsoleTemplate in <ProjectName> 3) rinonimare template in <projectname> 4) modificare i riferimenti a template in AndroidManifest.xml ed entrypoint.txt: AndroidManifest.xml : package= com.console.template package= com.console.<projectname> entrypoint.txt: com.console.template.<main> com.console.<projectname>.<main> 5) usare console.stdout invece di System.out per l'output. Usare console.readln() invece per l'input (dove console è l'oggetto di tipo CmdApp). 6)??? 7) Profitto!

APPROFONDIMENTI Come funziona cmdconsole. Il modo più semplice per capirlo è vedere questo schema: La GUI di cmdconsole genera un thread a variazione del comando digitato. Se il comando digitato è run, allora viene lanciata la nostra applicazione testuale. Ora vediamo il contenuto di HashMap<Integer, Object> args che viene passato al main da parte di cmdconsole: Indice Tipo Contenuto args.get(0) android.app.application Dati dell'applicazione args.get(1) String[ ] Lista di comandi passati dopo il nome dell'applicazione. Lo zeresimo elemento non è il nome dell'applicazione! args.get(2) java.io.inputstream Si comporta come stdin per cmdconsole args.get(3) java.io.printstream Si comporta come stdout per cmdconsole args.get(4) String Specifica il tipo di encoding dell'input. È preferibile accedere ai contenuti di args attraverso l'oggetto di tipo CmdApp (console nell'esempio).

Ora vediamo i comandi di cmdconsole (i principali): Comando Descrizione Sintassi help Mostra una descrizione accurata dei vari comandi help ls Mostra una lista dei file e della directory ls pwd Mostra la posizione attuale pwd clear Pulisce lo schermo della cmdconsole clear cd Passa ad un'altra directory cd <dir> run Lancia un'applicazione testuale.apk run <app>.apk history Mostra gli ultimi comandi dati history del Elimina un file del <file> mkdir Crea una directory mkdir <dir> cp Copia un file/directory nella posizone dopo cp <src> <dest> fontsize Aumenta la dimesione del font di cmdconsole fontsize <size> exit Esce da cmdconsole exit Qual'ora la vostra applicazione vada in loop, basta premere il tasto menù e scegliere Kill Running App.

DOWNLOAD Qui troverete i link dove scaricare il software necessario: AIDE: https://play.google.com/store/apps/details?id=com.aide.ui cmdconsole: https://play.google.com/store/apps/details?id=com.sss.cmdconsole ConsoleTemplate.zip: https://dl.dropbox.com/u/15801118/consoletemplate.zip BIBLIOGRAFIA Guida alla creazione di una app testuale in Java scritta dall'autore di cmdconsole: http://www.codeproject.com/articles/202996/write-a-console-app-on-android-using-java Tutorial testato su: Dispositivo: ASUS Transformer Prime TF201 Sistema Operativo: Android Ice Cream Sandwich 4.0.3 Autore: Claudio Borsato Data: 12/9/2012