Pages: [1] 2   Bas de page
Imprimer
Auteur Fil de discussion: [Android] Tuto : Ma première application sous Android  (Lu 58620 fois)
0 Membres et 1 Invité sur ce fil de discussion.
smartis Hors ligne
Newser
*****
Messages: 179


Voir le profil
« 29 Mai 2009, 18:32:08 »

Bonjour,

Déjà je tiens à préciser dés le début : ce n'est pas moi qui es réalisé ce tutorial, il a été écrit par Julien Gouesse, je le remercie grandement d'avoir fait cela pour l'ouverture de la section Android de Dev-fr.

Le but du tutorial est d'expliquer les bases du développement sur Android : Les outils/prérequis, l'installation du SDK ainsi que la création de sa première application : Hello World.

Voici le tutorial :

Ma première application sous Android


Introduction

Android est un système d'exploitation pour téléphones mobiles et PDA (voire netbooks) basé sur un noyau Linux conçu par une jeune pousse éponyme racheté par Google et développé par l'Open Handset Alliance. Il est actuellement installé sur les téléphones HTC Dream et HTC Magic vendus en France.

Google fournit un kit de développement très simple d'utilisation et très complet s'appuyant sur la plateforme Java. Il comprend plusieurs bibliothèques, un débogueur, un profileur, un émulateur et des exemples de code pour pouvoir démarrer. Par contre, l'utilisation du langage C est fortement déconseillée sur ce système car Android utilise une bibliothèque C non standard (on peut s'en sortir avec GCC) et Google ne supporte officiellement pas cette voie.

Les principaux avantages d'Android sont :

- la machine virtuelle performante et complète (la DVM, ce qui évite les railleries du genre “Write Once Debug Everywhere”) qui simplifie énormément le développement par rapport à J2ME

- le catalogue d'applications Android Market afin de mettre ses applications (gratuites et payantes) à disposition des utilisateurs

- le support de nombreux formats d'images, de vidéos et de sons ce qui évite le casse-têtes de la gestion des configurations très hétérogènes d'un téléphone mobile à l'autre

- OpenGL-ES pour disposer de l'accélération graphique 2D/3D

Prérequis


Avant d'installer le SDK Android, veuillez vérifier que vous avez la configuration requise :

- système d'exploitation Linux, Mac (sous architecture Intel uniquement), Windows

- Java SDK 1.5 minimum (celui de Sun ou l'OpenJDK mais pas GCJ)

- Eclipse 3.3 minimum (préférez Eclipse 3.4) ou ANT

Par la suite, j'utiliserai Eclipse 3.4 et le plugin ADT (Android Development Tools).

Installation

La première étape consiste à installer le SDK :

- Rendez-vous sur le site http://developer.android.com dans la rubrique “Download” pour télécharger le SDK d'Android

- Décompressez l'archive

- Ajoutez dans le chemin du répertoire contenant les outils du SDK (commençant par android_sdk_***/tools) dans la variable d'environnement PATH.
Sous Mac et Linux, éditez le fichier .bash_profile de votre home, créez-le si nécessaire, ajoutez export PATH=${PATH}: <chemin_du_sdk>/tools, entrez source ~/.bash_profile; sous Windows, faîtes clic droit → Propriétés → onglet “Avancé” → bouton “Variables d'environnement” → rubrique des variables système et ajoutez le chemin <chemin_du_sdk>/tools à la variable PATH

La seconde étape consiste à installer le plugin Eclipse :

- Démarrez Eclipse et choisissez le menu Help → Software Updates... → onglet Available Software → bouton Add Site...

- Entrez l'URL https://dl-ssl.google.com/android/eclipse/

- Cliquez sur le bouton “OK”

- Si ça ne marche pas, entrez plutôt http://dl-ssl.google.com/android/eclipse/

- Maintenant, cochez la case de la rubrique Development Tools

- Cliquez sur le bouton “Install...”

- A ce moment, Eclipse prend un peu de temps pour calculer les dépendances, veuillez patienter

- Vous voyez alors les cases des rubriques Android DDMS et Android Development Tools cochées

- Cliquez sur le bouton “Next >”

- Acceptez la licence en cliquant sur le bouton radio “I accept the terms of the license agreements”

- Cliquez sur le bouton “Finish”

- Là, l'installation peut prendre plusieurs minutes

- Redémarrez Eclipse en cliquant sur le bouton “Yes” à la fin de l'installation

- Vous disposez désormais dans la barre d'outils tout en haut d'un bouton pour lancer l'émulateur,
un bouton pour créer un nouveau projet Android et un bouton pour lancer l'éditeur de fichier XML pour Android

N.B: Si vous avez une erreur du genre “[2009-05-29 15:21:58 - adb]Failed to get the adb version: Cannot run program "/home/jgouesse/android-sdk-linux_x86-1.0_r2/tools/adb": java.io.IOException: error=2, No such file or directory”, vérifiez que vous avez bien installé le SDK d'Android avant d'installer le plugin et que vous avez bien mis à jour la variable d'environnement PATH pour que votre système d'exploitation puisse trouver les outils du SDK

Premier projet :

- Cliquez sur le bouton avec une icone en forme de téléphone dans la barre d'outils d'Eclipse pour lancer l'AVD manager
La première fois, vous devez le configurer, vous voyez ceci :

http://img4.hostingpics.net/thumbs/mini_53224Google_Android_Devices_Manager.png
   
- Entrez un nom dans le champ “Name” et cliquez sur le bouton “Finish”
Ainsi, vous avez créé un AVD qui représente l'appareil ciblé sous Android, ce sera utile pour l'émulation.

- Cliquez sur le bouton en forme de dossier ouvert avec un “a” dans la barre d'outils d'Eclipse
   Remplissez les champs comme ci-dessous:

http://img4.hostingpics.net/thumbs/mini_605409Google_Android_New_Project.png
   
- Cliquez sur le bouton “Finish”
- Allez dans l'explorateur de package → HelloAndroid → src → com.example.helloandroid
- Ouvrez le fichier HelloAndroid.java et remplacez-le par :

Code
(java):
package com.example.helloandroid;
 
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
 
public class HelloAndroid extends Activity {
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      TextView tv = new TextView(this);
      tv.setText("Hello, Android");
      setContentView(tv);
  }
}
 

Compilez le projet
- Sélectionnez votre projet, faîtes clic droit → Run As → Android Application

Et voila ! vous avez votre Hello World.

Je tiens encore une fois à remercier Julien Gouesse pour la réalisation de ce tutorial.

N'hésitez pas à donner votre avis ainsi qu'a poser des questions, Julien essaiera d'y répondre selon son temps libre.

Bon dev Android à tous !.

à bientôt

Cordialement Adrien
 
« Dernière édition: 30 Mai 2009, 08:26:46 par smartis » Journalisée
Minishlink Hors ligne
Mega Member
***
Messages: 1439


Voir le profil WWW
Quand on veut, on peut !

« Réponse #1 : 29 Mai 2009, 18:49:39 »

Ça serait sympa de mettre en page tout ça quand même shocked
Journalisée

t4ils Hors ligne
Branleur
Elite Member
**
Messages: 961


Voir le profil WWW
« Réponse #2 : 29 Mai 2009, 20:49:04 »

rah dis donc, je code comme un fou en java, je fais des petits jeux par çi par là donc ce langage je connais pas mal
ça me dirait bien de me lancer la dedans dis donc Azn
Journalisée

Le codage amateur ? Parce que je le veux bien.
unkwar Hors ligne
Hero Member
*****
Messages: 767


Voir le profil
Oeil de L1NX

« Réponse #3 : 30 Mai 2009, 08:18:30 »

tres bonne initiative , merci pour ce tuto Cheesy
Journalisée

gouessej Hors ligne
Newbie
*
Messages: 14


Voir le profil WWW
« Réponse #4 : 04 Juin 2009, 10:42:15 »

Bonjour

rah dis donc, je code comme un fou en java, je fais des petits jeux par çi par là donc ce langage je connais pas mal
ça me dirait bien de me lancer la dedans dis donc Azn
Qu'est-ce que tu attends alors?

tres bonne initiative , merci pour ce tuto Cheesy
De rien. J'espère qu'il vous sera utile.
Journalisée

t4ils Hors ligne
Branleur
Elite Member
**
Messages: 961


Voir le profil WWW
« Réponse #5 : 04 Juin 2009, 11:09:59 »

J'attends que pour le moment je suis sur un projet sur wii Azn
Que le xna me fait aussi de l'oeil, et que je n'ai pas de quoi tester en hardware les applis android Smiley (lez émulateurs ça va 5 minutes, on peut jamais vraiment tester ce que ça donne sur hardware Azn)
Journalisée

Le codage amateur ? Parce que je le veux bien.
gouessej Hors ligne
Newbie
*
Messages: 14


Voir le profil WWW
« Réponse #6 : 04 Juin 2009, 15:28:36 »

J'attends que pour le moment je suis sur un projet sur wii Azn
Que le xna me fait aussi de l'oeil, et que je n'ai pas de quoi tester en hardware les applis android Smiley (lez émulateurs ça va 5 minutes, on peut jamais vraiment tester ce que ça donne sur hardware Azn)
Avec JOGL 2, tu peux développer des jeux à la fois pour PC (Linux, Solaris, Mac, Windows) et pour téléphones mobiles compatibles OpenGL-ES y compris Android. De plus, Android n'est pas concerné par le problème de la fragmentation des plateformes J2ME et disons qu'on peut mieux se reposer sur l'émulateur même si ce n'est jamais suffisant. Tu n'as pas de licence à payer, pas de frais alors que c'est pas tout à fait ça pour XBLA. Si tu es déjà familier à Java et OpenGL, fais comme Ankama Games, opte pour Java + JOGL Wink ( + JMonkeyEngine 2 dont je maintiens le gestionnaire de rendu JOGL si c'est pas suffisant).

Moi j'ai eu mon HTC Dream chez Orange pour - 60 euros (vous avez bien lu), c'est à dire qu'on m'a payé 60 euros pour accepter ce téléphone. Tu peux t'arranger pour l'avoir gratuitement.
Journalisée

t4ils Hors ligne
Branleur
Elite Member
**
Messages: 961


Voir le profil WWW
« Réponse #7 : 04 Juin 2009, 16:00:57 »

ça peut m'intéresser le htc dream pas cher Smiley
mais le truc, c'est qu'en allant sur orange.fr, opération changer de mobile,ça coûte la peau des fesses de se procurer un htc (HTC Touch blanc  à  186.50€, et je vois pas le htc dream dans la liste des mobiles )
Journalisée

Le codage amateur ? Parce que je le veux bien.
Cobain Hors ligne
Mega Member
***
Messages: 1131


Voir le profil WWW
mes talents de graphiste lol

« Réponse #8 : 04 Juin 2009, 18:04:08 »

ouai comment tu as fait ça m'intéresse aussi d'avoir ce téléphone le miens commence à dater un peu
Journalisée

Mes Projets || Mon Blog
Citation
Honey bunny : I love you, pumpkin.
Pumpkin : I love you, honey bunny.
Pumpkin : Everybody be cool this is a robbery!
Honey bunny : Any of you fuckin' pricks move and i'll execute every motherfucking last one of you
gouessej Hors ligne
Newbie
*
Messages: 14


Voir le profil WWW
« Réponse #9 : 08 Juin 2009, 09:44:05 »

ça peut m'intéresser le htc dream pas cher Smiley
mais le truc, c'est qu'en allant sur orange.fr, opération changer de mobile,ça coûte la peau des fesses de se procurer un htc (HTC Touch blanc  à  186.50€, et je vois pas le htc dream dans la liste des mobiles )
Le HTC Touch n'a rien à voir avec le HTC Dream. Le téléphone dont tu parles tourne sous Windows Mobile et non sous Android. Inscris-toi au programme "Davantage Mobile", il arrive que ça déconne et que ça te donne un tas de points en plus que tu peux échanger contre des réductions de 20 euros. Enfin, à certaines périodes, Orange glisse un coupon de remboursement de 60 euros dans le coffret, il faut le renvoyer sous 15 jours.
Journalisée

Reppa Hors ligne
Administrateur
*****
Messages: 378


Voir le profil WWW
« Réponse #10 : 26 Novembre 2009, 15:48:03 »

Cool je vais commencer à dev sur mon HTC Magic avec tout ca Smiley
Journalisée

valeuf Hors ligne
Full Member
***
Messages: 145


Voir le profil WWW
Vive le dev Washable

« Réponse #11 : 26 Novembre 2009, 16:11:12 »

Citation
Avec JOGL 2, tu peux développer des jeux à la fois pour PC (Linux, Solaris, Mac, Windows) et pour téléphones mobiles compatibles OpenGL-ES y compris Android.

Hum je connais pas trop Android, encore moins JOGL, mais de ce que j'ai vu cela semble être seulement pour Java. Donc ça veut dire qu'en aucun cas ton application tourneras sous des téléphones avec Windows Mobile ou iPhone OS ?

Sinon concernant le C sur android, tu as des sources et des liens pour commencer à chercher ? Cela serait beaucoup plus interessant que du JAVA.

Merci Smiley
Journalisée

Codons washable !
Tiwaz Hors ligne
Full Member
***
Messages: 125


Voir le profil
« Réponse #12 : 02 Décembre 2009, 13:30:33 »

Je viens de terminer le codage rapide de deux petites applications pour Android 1.5. ( Un multiple compte à rebours, et un jeu d'othello/reversi), juste pour tester.

Et dire que je suis moyennement satisfait est un doux euphémisme. Déjà, pour faire du temps réel, des animations, et tout le reste, c'est pas super intuitif, mais lorsque même les timers font des leurs, c'est carrément agaçant.
Sans parler du débuggage en mode freelance (mais bon, j'admet ne pas m'être penché sur le débuggage en profondeur, il existe peut être de bon outils).
Et je ne parle même pas du focus des TextEdit qui sont carrément fantaisiste. Et le bluetooth, je peux aussi oublier.

Vouloir concurrencer l'iPhone et Symbian, c'est bien, mais se donner les moyens de sortir un truc complet du premier coup, c'est mieux.

Bref, assez déçut, mais c'est un début, je verrais par la suite.
Journalisée

"Le jeu est la forme la plus élevée d'apprentissage"
Golork Hors ligne
Newbie
*
Messages: 22


Voir le profil
« Réponse #13 : 10 Décembre 2009, 10:15:24 »

Salut, étant intéressé par l'achat d'un téléphone Android et connaissant un peu le Java j'aurais voulut connaitre la difficulté de développer des appli Android ?

Tiwaz, tu pourrais montrer le code et quelques images des applis que tu as fait sur Android ?

Autre chose, a t'on accès à tous les boutons d'un téléphone Android genre le trackball sur un HTC ?
Ou est que l'interaction avec le futur programme est assez limité ?
Journalisée
Tiwaz Hors ligne
Full Member
***
Messages: 125


Voir le profil
« Réponse #14 : 11 Décembre 2009, 14:48:43 »

Oui, je peux montrer les applis sans problème, que ce soit l'appli en elle même ou simplement le code(*). Le code est très cracra, parcequ'en fait, je répondais au concours fait par Archos pour gagner une tablet Archos IT5 pour tous ceux qui posteront une application.

J'ai donc gagné une réduction de 228€ pour l'othello sur une tablette archos à 299€. J'attend plus que de la recevoir. Cette tablette est assez spéciale du fait qu'elle outrepasse pas mal de truc d'android 1.5 (la résolution surtout), donc les applis ne sont pas convertible sur téléphone mobile directement, et surtout, ce n'est pas un téléphone (pas de fonction GSM). Par contre, à 240€ pour le modèle 8Giga qui doit sortir en Janvier, c'est vraiment pas mal.

Mais au travail, j'ai aussi accès à deux mobiles Android, et je peux te garantir qu'on a accès à tout (boussole, trackball, boutons, ...), on peut même intercepter un SMS (genre, lancer une application spécifique si tu recois un SMS spécifique, imaginez toutes les possbilités). C'est quand même très très souple

Désolé de ne pas avoir fait partager l'offre ici, mais j'avoue l'avoir vu trop tard (la veille en fait), et donc coder toute la journée pour proposer l'application.

(*) Réflexion faite, je viens de voir le code. J'attend de recevoir ma tablette pour améliorer ca et le montrer, j'ai trop honte Langue. Les screenshots arriveront dès que j'aurais le temps (de lancer l'émulateur Android et de faire le screen)
Journalisée

"Le jeu est la forme la plus élevée d'apprentissage"
Pages: [1] 2   Haut de page
Imprimer

Aller à: