Android
Android è un sistema operativo sviluppato da Google, progettato principalmente per dispositivi mobili come smartphone e tablet. È basato su una versione modificata del kernel Linux ed è open source, il che significa che il suo codice sorgente è disponibile per chiunque voglia studiarlo, modificarlo e distribuirlo
Android Vs iOS
Aspetto | Android | iOS |
---|---|---|
Software | Android Studio | Xcode |
Linguaggio di programmazione | Java | Swift |
Estensione del file | .apk | .ipa |
Ciclo di distribuzione | Google Play Store | App store di Apple |
Che cos’è una "Activity"?
Una "Activity" è un componente di una applicazione che rappresenta una singola schermata di interfaccia per l’utente.
Ogni schermata dell'applicazione è gestita da una Activity. Le Activities sono fondamentali per la navigazione e l'interazione dell'utente con una app Android.
Ogni Activity ha il proprio ciclo di vita, che comprende eventi come la creazione, la distruzione, la pausa e la ripresa, che consentono all'applicazione di rispondere dinamicamente a determinati input dell'utente e ad altre situazioni, come per esempio il cambio di orientamento del dispositivo.
Il ciclo di vita di una Activity

Il ciclo di vita di una Activity comprende una serie di stati attraversati durante il suo ciclo di vita.
Questi stati includono:
Questo metodo viene chiamato quando una Activity viene avviata per la 1° volta. Qui vengono inizializzati gli elementi dell'interfaccia utente e vengono effettuate le operazioni di inizializzazione
Dopo il metodo onCreate(), l'Activity passa allo stato di avvio, dove diventa visibile all'utente, ma non è ancora in primo piano. Durante questo stato viene richiamato il metodo onStart()
Quando l'Activity viene resa visibile e viene portata in primo piano, passa allo stato di "Resuming". Durante questo stato, l'Activity è attiva e pronta per l'interazione dell'utente
Quando un'altra Activity viene avviata l'Activity corrente perde il focus passando allo stato di "Pausa". In questo stato, l'Activity è ancora visibile, ma non si trova più in primo piano
Quando una Activity non è più visibile all'utente, entra nello stato di "Sospensione". Questo accade quando un'altra Activity prende il suo posto o quando l'utente esce dall'applicazione. Durante questo stato, vengono liberate risorse non essenziali.
Quando una Activity viene terminata o distrutta dal sistema operativo, passa allo stato di "Distruzione". Questo accade quando l'utente chiude l'applicazione o quando il sistema operativo libera risorse dalle applicazioni che si trovano nello stato di sospensione.
4 Tipi di listener
1 - Direttamente sul pulsante
Posso impostare un listener direttamente sul pulsante nel codice Java utilizzando il metodo setOnClickListener(). Ad esempio, all'interno del metodo onCreate() di una Activity
Button myButton = findViewById(R.id.my_button);
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//Qui gestisco l'evento del click
}
});
2 - Nel file .xml dei componenti
Posso impostare un onClick listener direttamente nel file XML del layout semplicemente aggiungendo l'attributo “android:onClick” al pulsante, specificando il nome del metodo che gestirà l'evento
<Button
android:id="@+id/my_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click Me"
android:onClick="myButtonClickHandler" />
3 - Istanziando un metodo
Posso impostare un onClick listener richiamando un metodo direttamente all'interno del codice Java. In questo caso, il metodo è definito nella stessa classe dell'Activity che contiene il pulsante
Button myButton = findViewById(R.id.my_button);
myButton.setOnClickListener(this::myButtonClickHandler);
4 - Implementando OnClickListener nell'Activity
Infine, come 4° modo posso implementare l'interfaccia direttamente nella classe Activity e gestire l'evento direttamente all'interno di essa
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button myButton = findViewById(R.id.my_button);
myButton.setOnClickListener(this);
}
@Override
public void onClick(View v) {
//Qui gestisco l'evento del click
}
}
Il comando "Intent"
Il comando "Intent" in Android è un meccanismo fondamentale per consentire alle diverse componenti dell'applicazione di comunicare e interagire tra loro e con altre applicazioni sul dispositivo.
Gli Intent possono essere utilizzati per:
Gli Intent possono essere:
StartActivity e StartAcitivtyForResult
startActivity
startActivityForResult