Come creare un'app Android: tutto ciò che devi sapere

Come creare un'app Android: tutto ciò che devi sapere
Questa guida è disponibile per il download come PDF gratuito. Scarica questo file ora . Sentiti libero di copiarlo e condividerlo con i tuoi amici e familiari.

Benvenuto nella guida di MakeUseOf per creare la tua app Android. In questa guida daremo un'occhiata al motivo per cui vorresti creare una tua applicazione Android, alcune opzioni che hai per crearla e come renderla disponibile ad altri.





Introduzione allo sviluppo Android

Esistono due modi principali per sviluppare un'app Android. Il primo è scriverlo da zero, molto probabilmente in Java. Ma questo, ovviamente, presuppone che tu sia già sapere Java o abbi la pazienza di impararlo prima di immergerti. Ma cosa succede se hai voglia di iniziare subito?





L'altra opzione è uno dei costruttori di app point-and-click sul mercato. Molti di questi si rivolgono a utenti aziendali (e vengono forniti con un cartellino del prezzo aziendale). Ma il MIT offre il suo 'App Inventor', uno strumento online che ti consente di creare visivamente la tua app. Puoi realizzare alcune cose carine con App Inventor, che ti terrà occupato finché non potrai scavare in Java e accedere a tutte le potenti funzionalità della piattaforma Android.





Nelle sezioni seguenti, creeremo una versione prototipo di una semplice applicazione 'scratchpad', che memorizzerà il testo digitato al suo interno. Lo faremo prima in App Inventor e visualizzare in anteprima i risultati in un emulatore Android. Quindi estenderemo questa applicazione con la possibilità di selezionare tra più file, rendendola più simile a un 'blocco note'. Per questo tipo di miglioramento, dovremo immergerci in Java e Android Studio.

Pronto? Andiamo ad esso.



Perché sviluppare per Android?

Ci sono diversi motivi per cui vorresti creare la tua app Android, tra cui:

  • Necessità : Dopotutto è la madre dell'invenzione. Forse dopo aver cercato nel Play Store l'app dei tuoi sogni, ti rendi conto che è qualcosa che dovrai costruire da solo perché nessun altro l'ha ancora fatto.
  • Comunità : Sviluppare qualcosa di utile e renderlo disponibile gratuitamente (in particolare come open source) è un modo eccellente per partecipare alla comunità Android e/o FOSS. Senza contributi open source, non ci sarebbe Linux e senza Linux non ci sarebbe Android (o almeno nessun Android come lo conosciamo). Quindi considera di restituire!
  • Apprendimento : Ci sono pochi modi migliori per acquisire una comprensione di una piattaforma che svilupparla. Potrebbe essere per la scuola o per la tua curiosità. E hey, se alla fine riesci a farci un paio di dollari, tanto meglio.
  • Monetizzazione : D'altra parte, forse stai andando a fare soldi fin dall'inizio. Mentre Android una volta era considerato il distretto 'a basso costo' dei ricavi delle app, questo si è lentamente invertito. Business Insider segnalato a marzo che i ricavi di Android dovrebbero superare per la prima volta iOS nel 2017.
  • Aggiungi su : gli sviluppatori spesso creano app in generale come un modo per promuovere, accedere o integrare in altro modo un prodotto o servizio esistente, come le app associate alla console e l'app di MakeUseOf (non più disponibile).

Qualunque sia la tua ragione, lo sviluppo di app metterà alla prova le tue capacità progettuali, tecniche e logiche. E il risultato di questo esercizio (un'applicazione funzionante e utile per Android) è un grande risultato che può fungere da pezzo di portfolio.





Esistono molti modi per creare la tua app, inclusi diversi toolkit, linguaggi di programmazione e punti vendita editoriali . Ad un livello elevato, questi si suddividono nelle due categorie seguenti.

App punta e clicca

Se sei un principiante assoluto dello sviluppo, ci sono ambienti che ti consentono di creare un'app Android nello stesso modo in cui creeresti una presentazione Powerpoint. Puoi selezionare controlli come pulsanti o caselle di testo, rilasciarli su uno schermo (come mostrato nell'immagine sotto) e fornire alcuni parametri su come dovrebbero comportarsi. Il tutto senza scrivere alcun codice.





Questi tipi di applicazioni hanno il vantaggio di una curva di apprendimento superficiale. In genere puoi saltare direttamente e almeno iniziare a disporre lo schermo. Inoltre, riducono notevolmente la complessità dell'applicazione, poiché sono progettati per gestire i dettagli tecnici (come i tipi di oggetti o la gestione degli errori) dietro le quinte. D'altra parte, quella semplicità significa che sei alla mercé del creatore dello strumento per quanto riguarda le funzionalità supportate. Inoltre, molti di questi strumenti sono destinati a grandi aziende e possono essere costosi.

Un'eccezione è l'applicazione web App Inventor del MIT, che è funzionale e gratuita. Dopo aver effettuato l'accesso con un account Google, puoi fare clic su un'app in un paio di minuti e visualizzarne l'anteprima sul telefono o tramite un emulatore Android.

Scrivi da zero

L'altra opzione è scrivere la tua applicazione da zero. Questo è probabilmente diverso da quello che stai immaginando: non è come i film lo descrivono.

Sta digitando il codice una riga alla volta nei file sorgente, quindi compilandoli in un'applicazione eseguibile. Anche se può sembrare noioso, in realtà, molto più del tuo tempo nella programmazione viene speso in design , o pensando a come dovrebbero funzionare le cose. Chiedi alla maggior parte degli sviluppatori e diranno che dedicano solo il 10-15% del loro tempo all'immissione del codice. Quindi trascorrerai la maggior parte del tuo tempo a sognare ad occhi aperti (in modo produttivo) su cosa dovrebbe fare la tua app.

Puoi codificare le applicazioni Android in un paio di modi diversi. Il modo 'standard' è scrivere app in Java, costantemente uno dei linguaggi più popolari al mondo, sebbene Google aggiunga Kotlin come un'altra opzione. Per le app ad alte prestazioni come i giochi, hai la possibilità di scrivere in un linguaggio 'nativo' come C++. Queste app vengono eseguite direttamente sull'hardware del tuo dispositivo Android, al contrario delle 'normali' app basate su Java che vengono eseguite sulla Dalvik Virtual Machine . Infine, ci sono modi per 'concludere' le applicazioni web (usando toolkit come Xamarin di Microsoft o Native React di Facebook) per la distribuzione come app mobili che sembrano 'native'.

Sebbene gli ambienti di sviluppo integrati (IDE) gestiscano alcuni degli elementi di routine della programmazione, tieni presente che la curva di apprendimento per questo metodo è ripida. Qualunque lingua tu scelga, dovrai essere esperto nelle sue basi. Investire questo tempo in anticipo è uno svantaggio di questo metodo, nel senso che non sarai in grado di entrare subito nello sviluppo della tua app. Ma è un vantaggio a lungo termine, poiché le abilità apprese possono essere applicate altrove. Impara Java e puoi sviluppare applicazioni desktop e lato server (incluse quelle basate sul Web) oltre alle app Android.

Quale opzione è la migliore per il tuo progetto?

Quindi quale strada è la 'migliore?' Questo è troppo soggettivo per rispondere a tutti, ma possiamo generalizzarlo come segue. Se sei curioso ma stai solo 'giocando', segui i creatori di app point-and-click. Ti aiuteranno a grattare quel prurito creativo senza richiedere alcun 'corsi'. Ma se l'idea di quel corso non ti spaventa, prendi in considerazione la possibilità di intraprendere il percorso più lungo e imparare un linguaggio di programmazione. L'investimento ripagherà in molti altri modi lungo la linea.

Inoltre, considera l'utilizzo di entrambi! I costruttori point-and-click sono un modo eccellente per mettere insieme rapidamente un prototipo o 'prova di concetto'. Usali per elaborare alcuni dettagli (come il layout e il flusso dello schermo), così come sono tanto più veloce da spostare in un ambiente guidato dal mouse. Quindi implementali nuovamente in Java, se necessario, per sfruttare la sua flessibilità.

Adotteremo proprio questo approccio in questa guida. Noi:

  1. Prototipo la nostra applicazione, un 'blocco per appunti' che memorizzerà del testo in un file per te, utilizzando l'App Inventor del MIT.
  2. Re-implementare questo in Java (con un piccolo aiuto dall'IDE Android Studio di Google), quindi vai a estendere l'app per consentirti di selezionare tra più file, rendendolo più simile a un 'blocco note'.

Va bene, basta parlare. Nella prossima sezione, ci prepareremo al codice.

Prepararsi a creare la tua app

Non tuffarti subito: prima hai bisogno di un po' di conoscenza e di un po' di software.

Conoscenza di cui avrai bisogno

Prima di iniziare l'installazione di alcuni software, è necessario avere alcune conoscenze prima di iniziare. Innanzitutto è, 'Cosa dovrebbe fare?' Aspettare di avere un concetto chiaro per la tua app prima di iniziare lo sviluppo può sembrare scontato, ma rimarrai sorpreso. Quindi prenditi del tempo per elaborare questo concetto, anche annotando alcune note sul comportamento e disegnando alcune schermate. Avere prima un'immagine relativamente completa della tua app.

Quindi, esamina cosa è possibile. Ad esempio, immagina che l'immagine ideale della tua app sia qualcosa che ti consente di registrare in video tutta la tua vita per i posteri. Voi Potere creare un'app che acquisisca video. Voi non posso creane uno che memorizzi ogni momento della tua vita sul tuo dispositivo (memoria insufficiente). Tuttavia, tu Potere prova a scaricare parte di questo spazio di archiviazione sul cloud, anche se ci vorrà del tempo per svilupparlo e questo ha i suoi limiti (cosa succede quando non hai accesso alla rete?). Qui è dove esaminerai alcuni dettagli tecnici e potrai prendere decisioni come se codificherai da zero o meno.

Infine, vale la pena saperlo cosa c'è là fuori? già. Se stai solo cercando di imparare o contribuire alla comunità, esiste un progetto open source esistente come il tuo? Potresti sfornare quel progetto come punto di partenza? O ancora meglio, sviluppa il tuo miglioramento e contribuisci? Se stai cercando di fare soldi, com'è la tua concorrenza? Se scrivi una semplice app sveglia e ti aspetti di guadagnare un milione di dollari, faresti meglio a portare qualcosa di speciale in tavola.

Come discusso, costruiremo un semplice blocco per appunti, che raccoglie e contiene del testo che ci hai inserito. E così facendo, infrangeremo le regole di cui sopra, dal momento che ci sono già molte app Android per prendere appunti, sia aperte che fonte chiusa . Ma facciamo finta che questa diventerà un'app molto più complessa in seguito. Devi iniziare da qualche parte.

Ora avremo parte del software di cui avrai bisogno.

Preparazione allo sviluppo con App Inventor

Non è necessario installare nulla per utilizzare lo strumento App Inventor. È un'applicazione web e puoi accedervi interamente tramite il browser. Quando visiti il ​​sito, vedrai un pulsante nell'angolo in alto a destra per Crea app! Se non hai attualmente effettuato l'accesso a un account Google, facendo clic su questo verrai indirizzato a una pagina di accesso.

Altrimenti dovresti andare direttamente all'App Inventor's I miei progetti pagina.

A questo punto, considera dove vuoi testare la tua app. Se sei avventuroso, puoi provarlo sul tuo telefono o tablet installando l'app Companion dal Play Store . Quindi per ora è tutto pronto: avrai bisogno di un progetto in esecuzione per vedere effettivamente qualcosa sul tuo dispositivo, ma ci arriveremo più tardi.

In alternativa, puoi utilizzare l'emulatore per testare la tua app sul tuo computer. Scarica e installa l'emulatore per il tuo sistema operativo da questa pagina . L'immagine seguente mostra l'installazione dell'app su Linux, ma la versione appropriata dovrebbe essere installata senza problemi anche su Windows o Mac.

Puoi avviare l'emulatore eseguendo il comando 'aiStarter'. Questo inizia un processo in background che collega il tuo emulatore (locale) all'App Inventor (basato su cloud). I sistemi Windows forniranno un collegamento per esso, mentre si avvierà automaticamente per gli utenti Mac al momento dell'accesso. Gli utenti Linux dovranno eseguire quanto segue in un terminale:

non so cosa cercare
/usr/google/appinventor/commands-for-appinventor/aiStarter &

Una volta in esecuzione, puoi testare la connessione facendo clic sul pulsante Emulatore elemento nel Collegare menù. Se vedi l'emulatore girare (come mostrato nell'immagine qui sotto), sei a posto.

Installazione di Android Studio

Se hai intenzione di sviluppare alcuni semplici programmi, App Inventor potrebbe essere tutto ciò di cui avrai bisogno. Ma dopo averci giocato per un po', potresti sbattere contro un muro o potresti sapere che utilizzerai alcune funzionalità che App Inventor non supporta (come la fatturazione in-app). Per questo, dovrai avere installato Android Studio.

Ora l'ambiente di sviluppo ufficiale come sancito da Google, Android Studio è una versione del IntelliJ IDEA IDE Java di JetBrains. Puoi scaricare una copia per il tuo sistema operativo da La pagina degli sviluppatori Android di Google qui . Gli utenti Windows e Mac possono avviare il programma di installazione utilizzando rispettivamente un file EXE o un'immagine DMG.

Gli utenti Linux possono utilizzare il file ZIP, scompattarlo dove preferisci ed eseguire Android Studio da lì (anche gli utenti Windows/Mac possono farlo). Altrimenti, puoi usare Ubuntu Make per scaricare e installare il pacchetto per te. Se utilizzi la versione LTS più recente (16.04 al momento della stesura di questo documento), dovrai aggiungere Ubuntu Make PPA al tuo sistema per accedere ad Android Studio:

sudo add-apt-repository ppa:ubuntu-desktop/ubuntu-make

Quindi aggiorna il tuo sistema con quanto segue.

sudo apt update

Infine, installa Ubuntu Make con questo comando:

sudo apt install umake

Una volta installato, puoi indicare a Ubuntu Make di installare Android Studio per te con il seguente comando:

umake android android-studio

Dopo aver visualizzato il contratto di licenza, inizierà il download e l'installazione dell'applicazione di base. Una volta completato e avviato Android Studio, una procedura guidata ti guiderà attraverso un altro paio di passaggi.

Innanzitutto, potrai scegliere se desideri un'installazione 'Standard' o qualcosa di personalizzato. Seleziona l'installazione standard qui, ti consentirà di iniziare più rapidamente.

Quindi riceverai un messaggio che ti informa che devi scaricare alcuni componenti aggiuntivi e probabilmente ci vorrà del tempo.

Una volta installato tutto, otterrai una piccola schermata iniziale che ti consentirà di creare un nuovo progetto, aprirne uno esistente o accedere alle tue impostazioni.

So che sei pronto a sporcarti le mani. Senza ulteriori indugi, costruiamo qualcosa.

Costruire un semplice blocco note per Android

Poiché (ovviamente) ci siamo seduti e ci abbiamo pensato prima di lanciarci, sappiamo che la nostra app Android sarà composta da due schermi.

Uno consentirà all'utente di 'modificare ora' o uscire, e l'altro eseguirà la modifica effettiva. La prima schermata può sembrare inutile, ma può tornare utile in seguito quando aggiungeremo funzionalità. Il testo catturato nella schermata 'modifica' verrà archiviato in un file di testo normale, perché le regole del testo normale. I seguenti wireframe ci danno un buon punto di riferimento (e ci sono voluti solo 5 minuti per montarli):

Nella prossima sezione, lo costruiremo con App Inventor del MIT.

Iniziare con MIT App Inventor

Il primo passo è creare un nuovo progetto. Accedi ad App Inventor, quindi fai clic su Inizia un nuovo progetto pulsante a sinistra (disponibile anche nel Progetti menù).

Avrai una finestra di dialogo per dargli un nome.

Ma ora sei caduto nella vista Designer di App Inventor e c'è molto da prendere in considerazione. Prendiamoci un momento per esaminare ogni sezione.

  1. La barra del titolo in alto mostra il nome del progetto ( muoScratchpad ); ti consente di aggiungere, rimuovere e passare da una schermata all'altra dell'app (ad es. Schermo 1 ); e alterna tra App Inventor's progettista e blocchi viste all'estrema destra.
  2. Il Tavolozza a sinistra contiene tutti i controlli e i widget che utilizzerai. Sono divisi in sezioni come Interfaccia utente e Magazzinaggio ; useremo entrambi nella nostra app. Vedremo come Tavolozza contiene diversi oggetti nel blocchi Visualizza.
  3. Il Spettatore ti mostra cosa stai costruendo in modo WYSIWYG.
  4. Componenti è un elenco di elementi che fanno parte della schermata corrente. Quando aggiungi pulsanti, caselle di testo, ecc., verranno visualizzati qui. Alcuni elementi 'nascosti', come i riferimenti ai file, verranno visualizzati anche qui, anche se in realtà non fanno parte dell'interfaccia utente.
  5. Il Metà ti consente di caricare risorse che utilizzerai nel tuo progetto, come immagini o clip audio. (Non avremo bisogno di questo.)
  6. Infine, il Proprietà riquadro consente di configurare il widget attualmente selezionato. Ad esempio, se stai selezionando un widget immagine, puoi modificarne l'altezza e la larghezza.

Disposizione della prima schermata: 'Schermata principale'

Mettiamo insieme il layout per la schermata 'principale' in Designer prima di andare avanti. Guardando lo schizzo, avremo bisogno di un'etichetta per il nome dell'app, una riga di testo di aiuto, un pulsante per passare alla schermata 'modifica' e un pulsante per uscire. Puoi vedere il Interfaccia utente la tavolozza ha tutti gli elementi di cui abbiamo bisogno: due etichette , e due pulsanti . Trascinali in una colonna verticale nella parte superiore dello schermo.

Successivamente configureremo ciascuno di essi. Per le etichette, puoi impostare elementi come il testo, il colore di sfondo e l'allineamento. Centreremo entrambe le nostre etichette ma imposteremo lo sfondo del nome dell'app su nero con testo bianco.

È ora di vedere come appare effettivamente su un dispositivo. Quando costruisci cose, fallo a piccoli passi. Non posso sottolineare abbastanza questo.

Non creare un lungo elenco di cose nella tua app in una volta sola, perché se qualcosa si rompe, ci vuole un lungo tempo per capire perché. Se stai cercando di testare su un telefono reale, puoi avviare la tua app AI2 Companion e connetterti ad App Inventor con il codice QR o il codice a sei caratteri fornito.

Per visualizzare l'anteprima utilizzando l'emulatore, assicurati di aver avviato il programma aiStarter descritto sopra, quindi seleziona il pulsante Emulatore articolo di nuovo dal Collegare menù. Ad ogni modo, dopo una breve pausa, dovresti vedere la tua app apparire, con un aspetto simile a quello che hai nel Visualizzatore (il layout effettivo può dipendere dalle dimensioni del tuo dispositivo e dell'emulatore).

Visto che il titolo sembra buono, cambiamo anche il testo sugli altri e allineiamoli al centro (questa è una proprietà dello schermo, AllineaOrizzontale , non il testo/i pulsanti). Ora puoi vedere uno degli aspetti davvero interessanti di App Inventor: tutte le tue modifiche vengono eseguite in tempo reale! Puoi vedere il testo cambiare, i pulsanti regolare il loro allineamento, ecc.

Rendendolo funzionale

Ora che il layout è terminato, aggiungiamo alcune funzionalità. Clicca il blocchi pulsante in alto a sinistra. Vedrai un layout simile alla vista Designer, ma avrai alcune scelte diverse disposte in categorie. Questi sono concetti di programmazione piuttosto che controlli di interfaccia, ma come l'altra vista, utilizzerai il trascinamento della selezione per metterli insieme come parte della tua app.

La tavolozza di sinistra contiene categorie come Controllo , Testo , e Variabili nella categoria 'Incorporato'. I blocchi in questa categoria rappresentano funzioni che avverranno in gran parte dietro le quinte, come il Matematica elementi che possono eseguire calcoli. Sotto c'è un elenco degli elementi nelle tue schermate e i blocchi disponibili qui influenzeranno quegli elementi. Ad esempio, facendo clic su una delle nostre etichette vengono visualizzati i blocchi che possono modificare il testo di quell'etichetta, mentre i pulsanti hanno blocchi per definire cosa succede quando si fa clic su di essi.

Oltre alla loro categoria (rappresentata dal colore), ogni blocco ha anche una forma che ne rappresenta lo scopo. Questi possono essere grossolanamente suddivisi come segue:

  • Puoi pensare agli elementi con un grande spazio nel mezzo, come il blocco 'se-allora' mostrato sopra, come a quelli che gestiscono eventi . Quando si verifica qualcosa all'interno dell'app, le altre cose all'interno di quel vuoto verranno eseguite.
  • I blocchi piatti con connettori sono una delle due cose. I primi sono dichiarazioni , che sono l'equivalente dei comandi, gli elementi che si adatteranno ai flussi sopra. Nell'esempio sopra, il fare un elenco block è un'istruzione, così com'è chiudi l'applicazione .
  • L'altra opzione è espressioni , che differiscono solo leggermente dalle dichiarazioni. Laddove un'istruzione potrebbe dire 'imposta questo su '42', un'espressione potrebbe essere qualcosa come 'aggiungi 22 a 20 e restituiscimi il risultato'. In quanto sopra, è in lista è un'espressione che restituirà il valore vero o falso. Anche le espressioni sono blocchi piatti, ma probabilmente hanno una linguetta sul lato sinistro e una tacca sulla destra.
  • Infine, valori includere numeri ('17' e '42' sopra), stringhe di testo ('cosa 1' e 'cosa 2') o vero/falso. In genere hanno una scheda solo a sinistra, poiché sono qualcosa che fornisci a un'affermazione o un'espressione.

Puoi certamente passare attraverso tutti i guide e tutorial su App Inventor. Tuttavia, è progettato per farti iniziare a fare clic e (letteralmente) vedere cosa si adatta. Nella nostra pagina iniziale, abbiamo due elementi che richiedono attenzione (i pulsanti), quindi vediamo cosa possiamo inventare. Uno di questi (pulsante2) chiuderà l'app quando viene cliccato. Poiché si tratta di un'interazione con il pulsante. Possiamo controllare i Blocchi pulsanti e scoprire che ce n'è uno che inizia con quando Button2.click (o quando si fa clic sul pulsante 1). Questo è esattamente ciò che vogliamo, quindi lo trascineremo nel visualizzatore.

Ora, quando viene fatto clic, vogliamo che l'app si chiuda, il che suona come una funzione di flusso dell'app complessiva. Dare un'occhiata al Integrato > Controllo sezione, vediamo infatti a chiudi l'applicazione Bloccare. E trascinandolo nello spazio nel primo blocco, scatta in posizione. Successo!

Ora quando fai clic sul pulsante, l'app si chiuderà. Proviamolo nell'emulatore. Ci mostra un errore che la chiusura dell'app non è supportata nell'ambiente di sviluppo, ma vedere questo significa che funziona!

Costruzione della seconda schermata: schermata dell'editor

Ora rivolgiamo la nostra attenzione a Button1.

Questo dovrebbe aprire il nostro editor, quindi è meglio assicurarci che l'editor esista! Torniamo al Designer e creiamo una nuova schermata con la stessa Etichetta della prima schermata, a Casella di testo (impostato su 'riempi genitore' per Larghezza, 50% per Altezza , e con multilinea abilitato) per contenere i nostri contenuti e un altro pulsante (etichettato '<< Save'). Now check that layout in the emulator!

cose interessanti da fare con un proiettore

Prima di andare avanti, sappiamo che vorremo riporre il contenuto dal TextBox, che suona come Magazzinaggio . Abbastanza sicuro, ci sono un paio di opzioni lì dentro.

Di questi, File è il più semplice, e poiché vogliamo il testo normale, andrà bene. Quando lo inserisci nel visualizzatore, noterai che non viene visualizzato. File è un non visibile componente, poiché funziona in background per salvare il contenuto in un file sul dispositivo. Il testo della guida ti dà un'idea di come funziona, ma se vuoi che questi elementi siano visibili, controlla il Visualizza i componenti nascosti nel visualizzatore casella di controllo.

Passa alla visualizzazione Blocchi ora: è il momento di programmare. L'unico comportamento di cui abbiamo bisogno è quando il '<< Save' button is clicked, so we'll grab our quando Button1.click Bloccare. Ecco dove App Inventor inizia davvero a brillare.

Innanzitutto, salveremo il contenuto del TextBox afferrando il chiama File1.saveFile blocco e fornendogli il testo che vogliamo (usando TextBox1's TextBox1.text , che recupera il suo contenuto) e un file per archiviarlo (fornisci semplicemente un percorso e un nome file con un Blocco di testo: l'app creerà il file per te se non esiste).

Impostiamo anche lo schermo per caricare il contenuto di questo file quando si apre ( Editor > quando Editor.initialize Bloccare). Dovrebbe chiama File1.ReadFrom che punta al nostro nome file. Possiamo catturare il risultato della lettura del file di testo usando File > quando File1.GotText , assegna quel contenuto al TextBox usando il TextBox > imposta TextBox.Text su bloccare e consegnarlo al ottieni testo valore. Infine, dopo aver salvato, vogliamo che un clic di Button1 ci rimandi alla schermata principale (a chiudi lo schermo Bloccare).

L'ultimo passo è tornare alla schermata principale e programmare il primo pulsante. Vogliamo che ci mandi alla schermata Editor, che è un gioco da ragazzi con il Controllo > apri un'altra schermata blocco, specificando 'Editor'.

Quello che viene dopo?

Ora che hai qualcosa che funziona, cosa viene dopo? Per valorizzarlo ovviamente! App Inventor ti dà accesso a una vasta gamma di funzionalità Android. Oltre alle semplici schermate che abbiamo appena creato, puoi aggiungere funzionalità tra cui la riproduzione di contenuti multimediali, l'invio di testi o persino una visualizzazione Web dal vivo alla tua app.

Uno dei primi miglioramenti che mi vengono in mente è la possibilità di selezionare tra più file. Ma un veloce ricerca Internet rivela che ciò richiede un po 'di hackeraggio supremo in App Inventor. Se vogliamo questa funzione, dovremo scavare in Java e nell'ambiente Android Studio.

Sviluppo in Java con Android Studio

Le sezioni seguenti descriveranno, a un livello molto alto, lo sviluppo della nostra app scratchpad in Java. Vale la pena ripeterlo ancora: sebbene possa ripagare grandi dividendi lungo la strada, l'apprendimento di Java e Android Studio richiede un notevole investimento di tempo.

Quindi non ci saranno tante spiegazioni su cosa significa il codice sotto, né dovresti preoccupartene molto. L'insegnamento di Java va oltre lo scopo di questo articolo. Cosa noi andrà bene è esaminare quanto è vicino il codice Java alle cose che abbiamo già costruito in App Inventor.

Inizia avviando Android Studio e seleziona Avvia un nuovo progetto Android Studio articolo. Verrai guidato attraverso un mago che ti chiederà un paio di cose. La prima schermata richiede un nome per la tua app, il tuo dominio (questo è importante se invii all'app store, ma non se stai solo sviluppando per te stesso) e una directory per il progetto.

Nella schermata successiva, imposterai la versione di Android come target. La selezione di una versione più recente ti consentirà di includere le funzionalità più recenti della piattaforma, ma potrebbe escludere alcuni utenti i cui dispositivi non sono aggiornati. Questa è un'app semplice, quindi possiamo restare con Ice Cream Sandwich.

Successivamente selezioneremo l'impostazione predefinita Attività per la nostra applicazione. Le attività sono un concetto fondamentale nello sviluppo di Android, ma per i nostri scopi possiamo definirle come schermate. Android Studio ha un numero tra cui puoi scegliere, ma inizieremo con uno vuoto e lo creeremo noi stessi. La schermata successiva ti consente di dargli un nome.

Una volta avviato il nuovo progetto, prenditi un momento per familiarizzare con Android Studio.

  1. La barra degli strumenti in alto ha pulsanti per un'ampia varietà di funzioni. Quello che è più importante per noi è il Correre pulsante, che creerà l'app e la lancerà nell'emulatore. (Vai avanti e provalo, si costruirà bene.) Ce ne sono altri come Salva e Trova , ma funzionano tramite le scorciatoie da tastiera a cui siamo tutti abituati (Ctrl+S e Ctrl+F, rispettivamente).
  2. La mano sinistra Progetto riquadro mostra il contenuto del tuo progetto. Puoi fare doppio clic su di essi per aprirli per la modifica.
  3. La regione centrale è il tuo editor. A seconda di cosa esattamente stai modificando, questo può essere basato su testo o grafico, come vedremo tra un momento. Questo potrebbe visualizzare anche altri riquadri, come un riquadro Proprietà a destra (di nuovo, come App Inventor).
  4. I bordi destro e inferiore hanno una selezione di altri strumenti che appariranno come riquadri quando selezionati. Ci sono cose come un terminale per l'esecuzione di programmi da riga di comando e il controllo della versione, ma la maggior parte di questi non è importante per un programma semplice.

Portare la schermata principale in Java

Inizieremo ricostruendo lo scratchpad in Java. Guardando la nostra app precedente, possiamo vedere che per la prima schermata abbiamo bisogno di un'etichetta e due pulsanti.

Negli anni passati, la creazione di un'interfaccia utente su Android era un processo meticoloso che coinvolgeva XML realizzato a mano. Al giorno d'oggi, lo fai graficamente, proprio come in App Inventor. Ciascuna delle nostre attività avrà un file di layout (fatto in XML) e un file di codice (JAVA).

Fai clic sulla scheda 'main_activity.xml' e vedrai la schermata sottostante (molto simile a Designer). Possiamo usarlo per trascinare e rilasciare i nostri controlli: a TextView (come un'etichetta) e due pulsanti .

Colleghiamo il Uscita pulsante. Abbiamo bisogno di creare un pulsante nel codice oltre che graficamente, a differenza di App Inventor che gestisce quella contabilità per noi.

Ma Come AI, l'API Java di Android utilizza il concetto di 'onClickListner'. Reagisce quando un utente fa clic su un pulsante proprio come il nostro vecchio amico il blocco 'quando Button1.click'. Useremo il metodo 'finish()' in modo che quando l'utente fa clic, l'app verrà chiusa (ricorda, prova questo nell'emulatore quando hai finito).

Aggiunta della schermata dell'editor

Ora che possiamo chiudere l'app, ripercorreremo i nostri passi. Prima di collegare il pulsante 'Modifica', eseguiamo l'attività dell'editor (schermata). Fare clic con il pulsante destro del mouse su Progetto riquadro e selezionare Nuovo > Attività > Attività vuota e chiamalo 'EditorActivity' per creare la nuova schermata.

Quindi creiamo il layout dell'Editor con un Modifica casella di testo (dove andrà il testo) e un pulsante. Aggiusta il Proprietà di ciascuno a proprio piacimento.

Ora passa al file EditorActivity.java. Codificheremo alcune funzioni simili a quelle che abbiamo fatto in App Inventor.

Uno creerà il file per memorizzare il nostro testo se non esiste, o leggerà il suo contenuto se lo fa. Un paio di righe creeranno il Modifica casella di testo e caricarci il nostro testo. Infine, un po' più di codice creerà il Button e il suo onClickListener (che salverà il testo nel file, quindi chiuderà l'attività).

Ora, quando lo eseguiamo nell'emulatore, vedremo quanto segue:

  1. Prima dell'esecuzione, non è presente alcuna cartella in '/storage/emulated/0/Android/data/[your domain and project name]/files', che è la directory standard per i dati specifici dell'app.
  2. Alla prima esecuzione, la schermata principale apparirà come previsto. Ancora nessuna directory come sopra, né il nostro file scratchpad.
  3. Facendo clic su Modificare pulsante, la directory viene creata, così come il file.
  4. Al clic Salva , qualsiasi testo inserito verrà salvato nel file. Puoi confermare aprendo il file in un editor di testo.
  5. Al clic Modificare di nuovo, vedrai il contenuto precedente. Modificandolo e facendo clic su Salva lo memorizzerà e facendo clic su Modificare lo ricorderò di nuovo. E così via.
  6. Al clic Uscita , l'app verrà completata.

Miglioramento dell'app: seleziona il tuo file di archiviazione

Ora abbiamo una versione funzionante del nostro blocco per appunti di App Inventor originale. Ma l'abbiamo portato su Java per migliorarlo. Includiamo la possibilità di selezionare tra più file in quella directory standard. Una volta fatto questo, lo renderemo davvero più di un bloc notes di un semplice blocco appunti, quindi creeremo una copia del progetto corrente usando le istruzioni qui .

Abbiamo utilizzato un intento Android per chiamare la nostra attività di editor da quella principale, ma sono anche un modo conveniente per chiamare altre applicazioni. Aggiungendo un paio di righe di codice, il nostro Intento invierà una richiesta per applicazioni per la gestione dei file rispondere. Ciò significa che possiamo rimuovere una buona parte del controllo del codice per la creazione del file, poiché l'intento ci consentirà solo di sfogliare/selezionare uno che esiste effettivamente. Alla fine, la nostra attività di editor rimane esattamente la stessa.

Ottenere il nostro Intento per restituirci una Stringa (oggetto di testo Java) che possiamo inserire nel nostro Intento è stata una sfida. Fortunatamente, quando si tratta di domande sulla programmazione, Internet è tuo amico. UN ricerca rapida ci offre un paio di opzioni, incluso il codice che possiamo incollare nella nostra app.

Codice per gentile concessione di StackOverflow

E con questa piccola modifica e un po' di codice preso in prestito, possiamo utilizzare un'applicazione browser/gestore di file sul dispositivo per selezionare il file per l'archiviazione dei nostri contenuti. Ora che siamo in 'modalità di miglioramento', è facile trovare un paio di miglioramenti più utili:

  • Noi possiamo scegliere tra i file esistenti, ma per il momento abbiamo rimosso la nostra struttura per creare loro. Avremo bisogno di una funzione per consentire all'utente di fornire un nome file, quindi creare e selezionare quel file.
  • Potrebbe essere utile fare in modo che la nostra app risponda alle richieste 'Condividi', in modo da poter condividere un URL dal browser e aggiungerlo a uno dei tuoi file di note.
  • Qui abbiamo a che fare con testo normale, ma contenuti più ricchi con immagini e/o formattazione sono piuttosto standard in questi tipi di app.

Con la possibilità di attingere a Java, le possibilità sono infinite!

Distribuire la tua app

Ora che la tua app è completa, la prima domanda che dovrai porti è se vuoi distribuirla! Forse hai creato qualcosa di così personale e personalizzato che sembra non andrebbe bene per nessun altro. Ma ti esorto a non pensarla così. Probabilmente sarai sorpreso di quanto sia utile per gli altri; se non altro, è almeno un'esperienza di apprendimento che mostra cosa può fare un nuovo programmatore.

Ma anche se decidi di tenere per te la tua nuova creazione, avrai comunque bisogno di alcuni dei passaggi seguenti per installarla effettivamente sul tuo dispositivo. Quindi impariamo come impacchettare la tua app da condividere sotto forma di codice sorgente e un pacchetto installabile.

Distribuzione del codice sorgente

Indipendentemente dal metodo che hai usato fino a questo punto, hai modificato il codice soure lungo la strada.

Mentre App Inventor fa un buon lavoro nel nascondere il codice effettivo dietro le quinte, i blocchi e i widget dell'interfaccia utente che hai spostato rappresentano tutti il ​​codice. E il codice sorgente è un modo perfettamente valido di distribuire software, come può ben attestare la comunità open source. Questo è anche un ottimo modo per coinvolgere gli altri nella tua applicazione, poiché possono prendere ciò che hai fatto e costruire su di esso.

Otterremo il codice sorgente da entrambi gli ambienti in un formato strutturato. Quindi qualcuno (noi inclusi) può facilmente importarlo di nuovo nello stesso programma e farlo funzionare rapidamente.

Esportazione della sorgente da App Inventor

Per esportare da App Inventor, è sufficiente aprire il progetto, quindi dal Progetti menu, selezionare il Esporta il progetto selezionato (.aia) sul mio computer .

Questo scaricherà il suddetto file .AIA (presumibilmente 'App Inventor Archive'). Ma questo è in realtà un file ZIP; prova ad aprirlo nel tuo gestore di archivi preferito per ispezionarne il contenuto.

dove dovrei comprare il mio iphone?

Si noti che il contenuto di appinventor/ai_[ID utente]/[nome progetto] sono un file SCM e BKY. Questa non è la sorgente JAVA che abbiamo visto in Android Studio, quindi non sarai in grado di aprirli in nessun vecchio ambiente di sviluppo e compilarli. Tuttavia, tu (o qualcun altro) puoi reimportarli in App Inventor.

Sorgente di archiviazione da Android Studio

Ottenere il tuo progetto Android Studio in un formato di archivio è facile come comprimere la cartella del progetto. Quindi spostalo in una nuova posizione e aprilo dal solito File > Apri voce nel menu principale.

Android Studio leggerà le impostazioni del tuo progetto ( workspace.xml ) e tutto dovrebbe essere come prima.

Vale la pena notare che l'archiviazione dell'intera cartella volere includi alcuni cruft, in particolare i file dell'ultima build del tuo programma.

Questi verranno cancellati e rigenerati durante la build successiva, quindi non sono necessari per mantenere l'integrità del progetto. Ma non fanno neanche male, ed è più facile (soprattutto per gli sviluppatori principianti) non iniziare a scherzare su quali cartelle dovrebbero essere presenti e quali no. Meglio prendere tutto piuttosto che perdere qualcosa di cui hai bisogno in seguito.

Distribuzione dei pacchetti Android

Se vuoi dare una copia della tua app a qualcuno solo per provarla, un file APK è la soluzione migliore. Il formato standard del pacchetto Android dovrebbe essere familiare a coloro che sono usciti dal Play Store per ottenere software.

Ottenere questi è facile come archiviare il sorgente in entrambi i programmi. Quindi puoi pubblicarlo su un sito Web (come F-Droid) o consegnarlo ad alcune persone amichevoli per ottenere il loro feedback. Questo è un ottimo test beta per le app che intendi vendere in seguito.

Creazione di un APK in App Inventor

Dirigiti verso il Costruire menu e selezionare App (salva .apk sul mio computer) articolo. L'app inizierà a essere compilata (evidenziata da una barra di avanzamento) e, una volta completata, verrà visualizzata una finestra di dialogo per salvare il file APK. Ora puoi copiarlo e inviarlo a tuo piacimento.

Per installare l'app, gli utenti dovranno consentire l'installazione di software di terze parti nelle impostazioni del dispositivo come descritto qui .

Creare un APK in Android Studio

Creare un pacchetto Android è altrettanto facile in Android Studio. Sotto il Costruire menu, selezionare Crea APK . Una volta completata la compilazione, un messaggio di notifica ti fornirà un collegamento alla cartella sul tuo computer contenente l'app.

Distribuzione Google Play

Configurarsi come sviluppatore Google è un po' un processo. Anche se dovresti assolutamente considerarlo una volta che hai un po' di esperienza alle spalle, non è qualcosa che devi affrontare subito.

Prima di tutto, ha una quota di iscrizione di $ 25. Ha anche una serie di dettagli tecnici che sono alquanto difficili da modificare in un secondo momento. Ad esempio, dovrai generare una chiave crittografica per firmare le tue app e, in caso di smarrimento, non potrai aggiornare l'app.

Ma ad un livello elevato, ci sono tre processi principali che devi eseguire per portare la tua app nel Play Store:

  1. Registrati come sviluppatore: Puoi impostare il tuo profilo sviluppatore (basato su un account Google) su questa pagina . La procedura guidata ti guida attraverso un processo di registrazione abbastanza semplice, che include la suddetta commissione di $ 25.
  2. Prepara l'app per il negozio: Anche le versioni dell'emulatore dell'app che hai testato lo sono debug versioni. Ciò significa che hanno molto codice aggiuntivo relativo alla risoluzione dei problemi e alla registrazione che non è necessario e potrebbero persino rappresentare un problema di privacy. Prima di pubblicare nello Store, dovrai produrre un versione di rilascio seguendo questi passaggi . Ciò include la firma della tua app con la chiave crittografica di cui abbiamo parlato prima.
  3. Configura la tua infrastruttura: Dovrai anche configurare la pagina Store per la tua app. Google fornisce una lista di consigli per la creazione di un elenco che ti porterà installazioni (e vendite!). La tua infrastruttura potrebbe includere anche server con cui si sincronizzerà la tua app.
  4. Infine, se vuoi essere pagato, avrai bisogno di un profilo di pagamento. Questo è uno di quelli una volta finito dettagli, quindi assicurati di sapere come tutto si adatterà prima di andare avanti.

Riepilogo e lezioni apprese

Siamo arrivati ​​alla fine della guida. Speriamo che questo abbia suscitato il tuo interesse per lo sviluppo di Android e ti abbia dato una motivazione per prendere la tua idea e svilupparla effettivamente. Ma prima di abbassare la testa e iniziare a costruire, diamo un'occhiata ad alcune delle lezioni chiave che abbiamo imparato nelle sezioni precedenti.

  • Abbiamo guardato due percorsi per creare la tua app: builder point-and-click e codifica da zero in Java. Il primo ha una curva di apprendimento inferiore e offre un discreto (ma ancora limitato) assortimento di funzionalità. Il secondo ti consente di costruire praticamente tutto ciò che ti viene in mente e offre vantaggi oltre lo sviluppo di Android, ma richiede più tempo per imparare.
  • Mentre ognuno ha i suoi pro e contro, puoi usare entrambi i percorsi! Gli ambienti point-and-click offrono una rapida inversione di tendenza per prototipare la tua app, mentre il secondo ti consente di ricostruirla per miglioramenti a lungo termine.
  • Sebbene sia allettante iniziare subito a lavorare sull'app stessa, sarai molto felice in seguito se ti prenderai del tempo per progetta la tua app , inclusi schizzi dell'interfaccia e/o documentazione informale sulle sue funzioni. Questo può anche aiutarti a determinare se uno o entrambi i metodi di cui sopra sono buone opzioni.
  • Un modo semplice per iniziare a sviluppare è disporre gli elementi dell'interfaccia utente, quindi 'cablarli' programmandone le funzionalità. Mentre gli sviluppatori esperti possono iniziare a codificare i componenti 'in background', per i neofiti è utile essere in grado di visualizzare tutto.
  • Quando ti immergi nel codice, non aver paura di cercare risposte nel web. Eseguendo una ricerca su Google con un paio di parole chiave e 'esempio di codice' alla fine otterrai dei buoni risultati.
  • Mentre costruisci, metti alla prova il tuo lavoro un po' alla volta. In caso contrario, sarà molto difficile determinare quale delle azioni delle ultime due ore ha danneggiato la tua app.

Con questi in mente, entra e inizia a realizzare i tuoi sogni di sviluppo di app. E se decidi di sporcarti le mani, facci sapere come va nei commenti (adoriamo i link agli screenshot, tra l'altro). Costruzione felice!

Condividere Condividere Tweet E-mail Come accedere alla livella a bolla integrata di Google su Android

Se hai mai avuto bisogno di assicurarti che qualcosa sia livellato in un pizzico, ora puoi ottenere una livella a bolla sul tuo telefono in pochi secondi.

Leggi Avanti
Argomenti correlati
  • Android
  • Giava
  • Programmazione
  • Sviluppo di app
  • Forma lunga
  • Guida lunga
  • Android
Circa l'autore Aaron Peters(31 articoli pubblicati)

Aaron è stato un appassionato di tecnologia come analista aziendale e project manager per quindici anni, ed è stato un fedele utente di Ubuntu per quasi lo stesso tempo (dal Breezy Badger). I suoi interessi includono l'open source, le applicazioni per piccole imprese, l'integrazione di Linux e Android e l'informatica in modalità testo.

Altro da Aaron Peters

Iscriviti alla nostra Newsletter

Iscriviti alla nostra newsletter per consigli tecnici, recensioni, ebook gratuiti e offerte esclusive!

Clicca qui per iscriverti