- Intrduction
- L'exécution de l'Android Studio
- La création de votre premier projet
- L'exécution de l'application
- La vue d'ensemble de la structure de projet Android
- Le Cycle de vie de l'Android Activity
- Comment fonctionne l'application Android?
- Qu'est-ce qui rend l'interface d'utilisateur?
- Le prochain tutoriel d'Android (suivant)
Le Tutoriel Android pour débutant - Hello Android
1. Intrduction
Ce document contient des directives sur la programmation d'Android pour les débutants. Il utilise l'outil Android Studio. Assurez-vous que vous avez installé Android Studio, si vous ne l'avez pas déjà installé, vous pouvez consulter les instructions à l'adresse suivante:
2. L'exécution de l'Android Studio
Dans la première exécution, Android Studio vous demandera si vous avez le mot de passe des paramétrages de la version Android Studio que vous pouvez être avoir installé avant ou pas. Vous pouvez sélectionner NO.
Sélectionnez un Theme que vous préférez:
Lors de la première exécution, Android doit télécharger certains composants. Vous devez attendre que le processus de téléchargement et d'installation soit terminé.
3. La création de votre premier projet
Tout d'abord, vous devez créer et exécuter avec succès un premier projet.
Saisissez:
- Name: HelloAndroid
- Package name: org.o7planning.helloandroid
Le projet a été créé.
4. L'exécution de l'application
Make sure you have installed a virtual device (An emulator phone), which is necessary to deploy your application.
If you do not see any virtual devices on the drop-down list, you need to create one, see the instructions below:
La simulation d'écran a montré le téléphone, et écrit les mots "Hello World".
Si l'erreur d'exécution (ou le périphérique simulé ne s'ouvre pas), ou si vous voyez le message ci-dessous, cela signifie que vous n'avez pas installé Intel Emulator Accelerator, vous devez l'installer.
Vous devez installer le logiciel de gestion de l'accélération le matériel de Intel:
5. La vue d'ensemble de la structure de projet Android
Voici est l'image de votre projet sur Android Studio:
Fichier ou répertoire | Description |
AndroidManifest.xml | C'est un fichier manifest qui décrit les caractéristiques fondamentales de l'application et définit chacune de ses composantes. |
java | Cela contient les fichiers sources .java pour votre projet. Par défaut, il comprend un fichier source MainActivity.java ayant une classe d'activité (activity) qui s'exécute lorsque votre application est lancée à l'aide de l'icône de l'application. |
res/drawable | La version antérieure d'Android a utilisé ce dossier pour stocker des images, la version actuelle est remplacée par le dossier mipmap pour les images. Ce répertoire n'est presque plus utilisé. |
res/layout | Il s'agit d'un répertoire pour les fichiers qui définissent l'interface d'utilisateur de votre application. |
res/menu | Ce dossier comprend des fichiers XML définit des menu qui apparaîtront sur Action Bar |
res/mipmap | Est utilisé pour contenir des images 'mipmap'. |
res/values | Il s'agit d'un répertoire pour les autres fichiers XML qui contiennent une collection de ressources, telles que les définitions de chaînes (String) et de couleurs. |
AndroidManifest.xml
Quel que soit le composant que vous développez comme une partie de votre application, vous devez déclarer tous ses composants dans un AndroidManifest.xml. Ce fichier fonctionne comme une interface entre le système d'exploitation Android et votre application, donc, si vous ne déclarez pas votre composant dans ce fichier, il ne sera pas considéré par le système d'exploitation. Par exemple, un fichier de manifest par défaut ressemblera à un fichier suivant
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.o7planning.helloandroid" >
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
res/mipmap
Vous devez en savoir plus sur les images dans le dossier mipmap, voir l'image ci-dessous, il existe un fichier image dans le dossier mipmap.
L'un des problèmes que j'ai occasionnellement rencontré lors de l'utilisation d'applications Android est que je vois des images qui sont floues, pixelées ou étirées maladroitement. La solution à ce problème est de créer un dossier déplaçable mipmap pour chacune des densités (density) supportées par Android et de placer l'image correcte dans chaque dossier. Il existe 6 gammes de densité différentes (mesurées en points par inch) compatibles avec Android:
- ldpi: Des écrans à faible densité; Environ 120dpi
- mdpi: Des écrans à moyenne densité (sur HVGA traditionnel); Environ 160dpi
- hdpi: Des écrans à haute densité; Environ 240 ppp
- xhdpi: Des écrans extra haute densité; Environ 320dpi. Ajouté en API Niveau 8
- nodpi: Cela peut être utilisé pour les ressources bitmap que vous ne souhaitez pas minimiser en fonction de la densité du périphérique
- tvdpi: Des écrans quelque part entre mdpi et hdpi; Environ 213dpi. Ceci n'est pas considéré comme un groupe de densité "primaire". Il est principalement destiné aux télévisions et la plupart des applications ne devraient pas en avoir besoin. Les ressources mdpi et hdpi sont suffisantes pour la plupart des applications et le système les modélisera selon les besoins. Ce qualificatif a été introduit avec le niveau API 13.
6. Le Cycle de vie de l'Android Activity
Tout d'abord, qu'est-ce que Activity?
Activity est un code Java qui prend en charge un écran ou une interface d'utilisateur. En d'autres termes, le bloc de construction de l'interface d'utilisateur est Activity. La classe Activity est une classe prédéfinie dans Android et chaque application qui a UI doit l'hériter pour créer une fenêtre.
Par exemple, la classe MainActivity est un Activity qui étend provenant d'un Activity disponible dans des bibliothèques Android. La figure ci-dessous illustre le cycle de vie d'un Activity.
Un cycle de vie de Activity décrit les processus d'un Activity depuis son lancement (Launched), jusqu'à ce que les applications soient arrêtées. Y compris les processus dont Activity s'est arrêtée temporairement, reprendre (resume), ..
Pour comprendre plus facilement, vous pouvez modifier le code de la classe MainActivity, remplacer les méthodes onStart(), onResume(), .., Ajouter le message (message) qui démontre que la méthode a été exécutée. Réexécutez l'application et voyez ce qui se passe dans le cycle de vie de Activity.
MainActivity.java
package org.o7planning.helloandroid;
import androidx.appcompat.app.AppCompatActivity;
import android.util.Log;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
public static final String TAG ="MyMessage";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Print Log
Log.i(TAG,"onCreate");
}
@Override
protected void onStop() {
super.onStop();
// Print Log
Log.i(TAG,"onStop");
}
@Override
protected void onDestroy() {
super.onDestroy();
// Print Log
Log.i(TAG,"onDestroy");
}
@Override
protected void onPause() {
super.onPause();
// Print Log
Log.i(TAG,"onPause");
}
@Override
protected void onResume() {
super.onResume();
// Print Log
Log.i(TAG,"onResume"); }
@Override
protected void onStart() {
super.onStart();
// Print Log
Log.i(TAG,"onStart");
}
@Override
protected void onRestart() {
super.onRestart();
// Print Log
Log.i(TAG,"onRestart");
}
}
Réexécutez votre application, et vous voyez les message enregistrés sur la fenêtre du registre.
Vous pouvez configurer le filtre sur logcat uniquement pour afficher votre message.
Saisissez:
- Filter Name: My Filter
- Log Tag (regex): MyMessage
Maintenant, la fenêtre logcat n'affiche que votre message.
L'écran de votre téléphone:
7. Comment fonctionne l'application Android?
Vous avez exécuté avec succès la première application Android, et maintenant nous allons regarder comment Android a été exécuté depuis que l'application est appelée.
Ce que vous voyez sur la fenêtre Projet ne sont pas tous des composants impliqués, créant votre application. Certains composants sont automatiquement générés par le programme de compilation. Et il ne s'affiche pas dans la fenêtre Projet. Par exemple, en fonction de la structure des fichiers sources de votre projet, le compilateur crée un fichier source R.java qui définit des constantes pour les ressources du projet.
Pour afficher le fichier R.java sur Android Studio, ouvrez la classe MainActivity, cliquez avec le bouton droit sur R.layout.main_activity et sélectionnez Go To/Implementation(s)
Note: Android Studio> = 2.0 no longer allows you to view R.java file, because this is an automatically generated file and does not allow modifications.
Les constantes définies dans la classe R.java sont créées correspondant aux ressources du Project:
Donc, quelque part dans le projet, vous pouvez utiliser les constantes pour référencer les ressources dans le projet. Par exemple, R.layout.activity_main est une constante qui renvoie le fichier activity_main.xml dans le dossier res/layout.
Le principe de fonctionnement:
8. Qu'est-ce qui rend l'interface d'utilisateur?
Peut-être que vous pensez maintenant que activity_main.xml est le fichier qui crée une interface d'application. C'est vrai 50%. Principalement, activity_main.xml est un fichier qui définit les entités impliquées dans l'interface de l'application, et comment elles sont organisées sur l'écran. Activity lira ce fichier et établira l'interface de l'application. Ainsi, l'interface des applications essentiellement créée par Activity
Voici est le code Activity qui lit le fichier main_activity.xml pour créer l'interface.
MainActivity.java
package org.o7planning.helloandroid;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
public class MainActivity extends AppCompatActivity {
public static final String TAG ="MyMessage";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Read activity_main.xml to draw user interface.
setContentView(R.layout.activity_main);
}
// .....
}
Activity peut ne pas avoir besoin de lire le fichier xml pour créer l'interface de l'application:
MainActivity.java
package org.o7planning.helloandroid;
import androidx.appcompat.app.AppCompatActivity;
import android.graphics.Color;
import android.os.Bundle;
import android.widget.Button;
import android.widget.RelativeLayout;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Layout
RelativeLayout layout = new RelativeLayout(this);
layout.setBackgroundColor(Color.GREEN);
// Tạo Button
Button button = new Button(this);
button.setText("My Button");
// Add button to Layout
layout.addView(button);
// Content View
setContentView(layout);
}
}
Et réexécutez l'application:
La version actuelle de Android Studio ne vous soutient pas dans la conception d'une interface intuitive sur Java. Cependant, il prend en charge efficacement dans la conception de l'interface intuitive sur les fichiers xml, Android Studio générera le code XML pour vous. En fait, la conception d'interface sur XML rendra vos applications plus faciles.
Retournez à activity_main.xml, vous pouvez facilement concevoir l'interface de l'application:
The XML code is automatically generated:
Tutoriels de programmation Android
- Configurer Android Emulator en Android Studio
- Le Tutoriel de Android ToggleButton
- Créer un File Finder Dialog simple dans Android
- Le Tutoriel de Android TimePickerDialog
- Le Tutoriel de Android DatePickerDialog
- De quoi avez-vous besoin pour démarrer avec Android?
- Installer Android Studio sur Windows
- Installer Intel® HAXM pour Android Studio
- Le Tutoriel de Android AsyncTask
- Le Tutoriel de Android AsyncTaskLoader
- Tutoriel Android pour débutant - Exemples de base
- Comment connaître le numéro de téléphone d'Android Emulator et le changer?
- Le Tutoriel de Android TextInputLayout
- Le Tutoriel de Android CardView
- Le Tutoriel de Android ViewPager2
- Obtenir un numéro de téléphone dans Android à l'aide de TelephonyManager
- Le Tutoriel de Android Phone Call
- Le Tutoriel de Android Wifi Scanning
- Le Tutoriel de programmation de jeux Android 2D pour débutant
- Le Tutoriel de Android DialogFragment
- Le Tutoriel de Android CharacterPickerDialog
- Le Tutoriel Android pour débutant - Hello Android
- Utiliser Android Device File Explorer
- Activer USB Debugging sur un appareil Android
- Le Tutoriel de Android UI Layouts
- Le Tutoriel de Android SMS
- Le Tutoriel de Android et SQLite Database
- Le Tutoriel de Google Maps Android API
- Le Tutoriel de texte pour parler dans Android
- Le Tutoriel de Android Space
- Le Tutoriel de Android Toast
- Créer un Android Toast personnalisé
- Le Tutoriel de Android SnackBar
- Le Tutoriel de Android TextView
- Le Tutoriel de Android TextClock
- Le Tutoriel de Android EditText
- Le Tutoriel de Android TextWatcher
- Formater le numéro de carte de crédit avec Android TextWatcher
- Le Tutoriel de Android Clipboard
- Créer un File Chooser simple dans Android
- Le Tutoriel de Android AutoCompleteTextView et MultiAutoCompleteTextView
- Le Tutoriel de Android ImageView
- Le Tutoriel de Android ImageSwitcher
- Le Tutoriel de Android ScrollView et HorizontalScrollView
- Le Tutoriel de Android WebView
- Le Tutoriel de Android SeekBar
- Le Tutoriel de Android Dialog
- Le Tutoriel de Android AlertDialog
- Tutoriel Android RatingBar
- Le Tutoriel de Android ProgressBar
- Le Tutoriel de Android Spinner
- Le Tutoriel de Android Button
- Le Tutoriel de Android Switch
- Le Tutoriel de Android ImageButton
- Le Tutoriel de Android FloatingActionButton
- Le Tutoriel de Android CheckBox
- Le Tutoriel de Android RadioGroup et RadioButton
- Le Tutoriel de Android Chip et ChipGroup
- Utilisation des Image assets et des Icon assets d'Android Studio
- Configuration de la Carte SD pour Android Emulator
- Exemple ChipGroup et Chip Entry
- Comment ajouter des bibliothèques externes à Android Project dans Android Studio?
- Comment désactiver les autorisations déjà accordées à l'application Android?
- Comment supprimer des applications de Android Emulator?
- Le Tutoriel de Android LinearLayout
- Le Tutoriel de Android TableLayout
- Le Tutoriel de Android FrameLayout
- Le Tutoriel de Android QuickContactBadge
- Le Tutoriel de Android StackView
- Le Tutoriel de Android Camera
- Le Tutoriel de Android MediaPlayer
- Le Tutoriel de Android VideoView
- Jouer des effets sonores dans Android avec SoundPool
- Le Tutoriel de Android Networking
- Analyser JSON dans Android
- Le Tutoriel de Android SharedPreferences
- Le Tutorial de stockage interne Android (Internal Storage)
- Le Tutoriel de Android External Storage
- Le Tutoriel de Android Intents
- Exemple d'une Android Intent explicite, appelant une autre Intent
- Exemple de Android Intent implicite, ouvrez une URL, envoyez un email
- Le Tutoriel de Android Service
- Le Tutoriel Android Notifications
- Le Tutoriel de Android DatePicker
- Le Tutoriel de Android TimePicker
- Le Tutoriel de Android Chronometer
- Le Tutoriel de Android OptionMenu
- Le Tutoriel de Android ContextMenu
- Le Tutoriel de Android PopupMenu
- Le Tutoriel de Android Fragment
- Le Tutoriel de Android ListView
- Android ListView avec Checkbox en utilisant ArrayAdapter
- Le Tutoriel de Android GridView
Show More