Android – Lezione 2: Creiamo il primo progetto

Bene dopo aver installato l’SDK per sviluppare con Android, é giunta l’ora di creare il nostro primo progetto. In questa guida vedremo passo passo come fare a creare e lanciare un progetto.

Ovviamente, non c’e bisogno che lo dica, lanciamo Eclipse. Andiamo su File -> New -> Android Project. Questo apre una finestra di dialogo che ci consente di scegliere i parametri iniziali del progetto,  come mostrato in figura:

Spieghiamo brevemente i campi (nel nostro esempio utilizzeremo l’opzione “Create a new project in workspace”) :

  • Project Name: Nome che vogliamo dare al progetto (Nel nostro esempio: ItaliaLinuxExample)
  • Build Target: L’SDK build che vogliamo utilizzare (Nel nostro esempio Android 2.3)
  • Application Name: Il nome che vogliamo dare all’applicazione (Possiamo lasciarlo vuoto, io comunque ho messo “Italialinux First Example”)
  • Package Name: Il nome del package del quale fará parte la nostra applicazione, é obbligatorio specificarlo, il formato deve essere nome1.nome2 e deve avere almeno due componenti (se seguite questa guida io ho messo: italialinux.example)
  • Create Activity: Il nome dell’activity che vogliamo creare (Nome usato nell’esempio: FirstActivity ). Cosa sono le activity lo vedremo piu avanti
  • Min SDK Version: La versione minima dell’SDK. Lo potete lasciare Bianco.

A questo punto possiamo premere Finish, e verrá creato il nostro progetto.

Espandiamo la cartella src all’interno é stato creato il package che avevamo definito in fase di creazione del progetto (quindi: italialinux.example) e all’interno del package ci sará la classe FirstActivity.java (il nome che avevamo definito per l’activity), con gia qualche riga di codice al suo interno. Si tratta di uno scheletro di applicazione, che si limita a mostrare una schermata nera appena l’applicazione viene lanciata. Quindi prima di vedere il codice proviamo subito a lanciarla.

Premiamo il pulsnate per lanciare le applicazioni dalla barra degli strumenti, essendo la prima volta che avviamo questa applicazione ci verranno richieste alcune informazioni, la prima schermata che ci si presenterá chiederá in che modo vogliamo lanciare il progetto:

Ovviamente noi dobbiamo scegliere l’opzione Android Application. Dopo di che se abbiamo creato almeno un device per l’emulatore (vedi lezione 1) questo dovrebbe lanciarsi e caricare la nostra applicazione, come in figura:

Bene abbiamo creato la nostra prima applicazione Android!!!! (Attenzione: Per caricarsi l’emulatore android impiega qualche minuto, quindi siate pazienti).

Ora che abbiamo visto il primo progetto funzionare, andiamo ad analizzare la classe FirstActivity che si trova in src/italialinux.example/FirstActivity.java:

package italialinux.example;
 
import android.app.Activity;
import android.os.Bundle;
 
public class FirstActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

Ovviamente la classe FirstActivity fa parte del package che abbiamo creato: italialinux.example.

FirstActivity come possiamo vedere estende la classe Activity. Questa classe rappresenta l’oggetto fondamentale di un applicazione android. Essa viene lanciata quando si lancia l’applicazione, e resta in esecuzione fino al suo termine. Si occupa di gestire il comportamento dell’interfaccia utente e altre cose. Questa classe ha anche un suo lifeCycle, come illusstrato in figura, quindi l’applicazione é una specializzazione di tale classe:

Activity Lifecycle
Il ciclo di vita di un applicazione

Come possiamo vedere dalla figura, il primo metodo che viene invocato quando si lancia un activity é appunto il metodo on create!

Che come vediamo abbiamo ridefinito nella nostra classe. Il metodo onCreate() é la prima funzione ad essere lanciata quando l’Activity viene creata. Normalmente in in questa funzione vengono fatte tutte le configurazioni statiche dell’applicazione, ed eventuali inizializzazioni. E attualmente per noi questo é piu che sufficiente.

Vediamo ora cosa c’é in questa funzione:

        super.onCreate(savedInstanceState);

con questa chiamiamo la onCreate della classe padre di FirstActivity (dunque di Activity), mentre savedInstanceState, contiene i dati dell’attivita nel caso questa fosse stata sospesa. Altrimenti questa variabile vale null.

Infine

        setContentView(R.layout.main);

Con questo metodo settiamo il contenuto  dell’Activity  ad una view esplicitá (in questo caso R.layout.main).

Ma cosa é R.layout.main? Si tratta di una classe creata di default da eclipse, e che é una rappresentazione compilata del layout contenuto dentro il file res/layout/main.xml, ogni oggetto che inseriamo in main.xml viene automaticamente inserito anche in questa classe. Normalmente non dovremo avere bisogno di modificarla a mano. E main.xml conterrá il layout dell’applicazione appena lanciata.

Il sorgente di questa classe lo troviamo in gen/italialinux.example/R.java.

Con questo abbiamo commentato spero in maniera abbastanza dettagliata il codice del progetto di esempio. Se ora navighiamo fra le cartelle del progetto, vediamo che molti altri files sono stati creati oltre a quelli commentati fin qua, li vedremo nelle prossime lezioni.

Se volete potete scaricare il progetto eclipse fin qui creato clickando qua

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.