Sobes.tech
Junior

Qu'est-ce qu'une activité dans une application mobile?

sobes.tech IA

Réponse de l'IA

Une activité (Activity) sur Android est un écran distinct de l'application qui interagit avec l'utilisateur. Chaque activité représente un composant d'interface utilisateur séparé et possède son propre cycle de vie. L'application peut contenir plusieurs activités qui peuvent être liées entre elles.

Chaque activité a un cycle de vie géré par le système Android :

État Description
onCreate() L'activité est créée. L'initialisation est effectuée.
onStart() L'activité devient visible pour l'utilisateur.
onResume() L'activité reçoit le focus et est prête pour l'interaction.
onPause() L'activité perd le focus, mais est encore visible. Peut être partiellement couverte.
onStop() L'activité n'est plus visible pour l'utilisateur.
onDestroy() L'activité est détruite.
onRestart() L'activité en état onStop(), redevient visible.

Exemple de structure d'un projet Android avec des activités :

// MainActivity.java
package com.example.myapp;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.content.Intent;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main); // Lien avec le fichier layout

        Button nextButton = findViewById(R.id.next_button);
        nextButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // Transition vers une autre activité
                Intent intent = new Intent(MainActivity.this, SecondaryActivity.class);
                startActivity(intent);
            }
        });
    }
}

// SecondaryActivity.java
package com.example.myapp;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;

public class SecondaryActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_secondary); // Lien avec le fichier layout
    }
}

Le manifeste de l'application (AndroidManifest.xml) définit toutes les activités et points d'entrée :

<!-- AndroidManifest.xml -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.example.myapp">

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/Theme.MyApp">

        <!-- Déclaration de l'activité principale -->
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>

        <!-- Déclaration de la deuxième activité -->
        <activity android:name=".SecondaryActivity"/>

    </application>
</manifest>

Ainsi, les activités sont les blocs de construction de l'interface utilisateur dans les applications Android.