ANDROID:
Programmez avec Processing pour votre téléphone portable
processing_android.pdf (2563767)
Comment programmer avec Processsing une application pour Android
Vous pouvez programmer des applications sur Processing et les utiliser sur un téléphone Android. Ci-dessus un accéléromètre, une application pour apprendre à gérer les rebonds d'image ou de balle et l'écran d'un smartphone montrant les applications Processing installées.
Pour le protocole complet, voir le fichier pdf ci-dessus.
1- Installer la dernière version de JAVA
L'écriture des applications Java nécessite l'utilisation d'outils de développement tels que le kit JDK. Ce dernier comprend l'environnement JRE, le compilateur Java et les API Java. Les programmeurs expérimentés comme les débutants peuvent s'essayer à cette tâche.
Tout d’abord télécharger la dernière version de Java SE Development Kit 8 Downloads
pour votre système et installez la.
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2- Installer la dernière version de Processing
Processing est un langage et un environnement de programmation open-source (c'est aussi le nom du compilateur). Il est employé par des étudiants, des artistes, des créateurs, des chercheurs, et des amateurs. Ce langage basique offre de très nombreuses possibilités, et laisse libre cours à votre imagination, notamment grâce à sa centaine de librairies disponibles. Le logiciel fonctionne sur Macintosh, sous Windows et sous Linux. Il est basé sur la plate-forme Java.
Processing offre la possibilité de faire de la 3D, des jeux en réseau, des effets de son et lumière mais aussi bien d'autres possibilités. Pour vous familiariser avec son fonctionnement exécutez des exemples de sketch par Fichier Exemples
https://processing.org/download/?processing
3- Installer le mode Android et le SDK,
Le kit de développement (SDK) d'Android est un ensemble complet d'outils de développement1. Il inclut un débogueur, des bibliothèques logicielles,un émulateur.
Le mode JAVA est sélectionné par défaut. Choisir le mode Android.
Un écran apparaît. Cliquer sur Dowload SDK Automatically.
4- Exécuter son premier sketch
Il y a deux possibilités pour exécuter vos programmes: un téléphone Android ou un émulateur. La solution la plus simple et efficace est le téléphone.
Tapez le sketch suivant comme premier exemple (ou un autre sketch du dossier exemple) et enregistrer le.
int x = 50;
int y = 50;
int R = 20;
int vitesse = 10;
int tir = 0;
void setup(){
size(500,300);
}
void draw(){
background(0);
if ( x > 450){ vitesse = - vitesse;}
if (x<50){vitesse = - vitesse;}
println(x);
ellipse(x,y,R,R);
x=x+vitesse;
}
Une balle rebondit horizontalement sur l’écran.
4.1 Avec un smartphone Android
Pour pouvoir exécuter vos applications sur votre téléphone, il doit être paramétré en mode développeur. Pour un Samsung Galaxy J3, allez dans Paramètres, puis A propos de l’appareil, infos logicielles et cliquez 7 fois sur Numéro de version (l’appareil vous indique le nombre de clics restants). Dans Paramètres, Système vous disposez maintenant de l’onglet Option de développement. Il faut activer le Débogage USB, qui se lance automatiquement lors de la connexion USB à un ordinateur. Avec un autre téléphone Android, vous trouverez facilement le protocole sur Internet.
Le téléphone apparaît maintenant dans le menu Android Select device.
Cliquez maintenant sur sketch, Run on device. En quelques secondes, vous obtenez le message
L’application est installée sur le téléphone et fonctionne. Vous pouvez voir son icône avec des autres applications sur votre téléphone.
Attention certaines applications fonctionnant sur Processing en mode Java ne fonctionne pas en mode Android.
4.2 Avec l’émulateur par défaut
Lancer l’exécution dans l'émulateur (Sketch et Run in Emulator). Le logiciel vous propose de le télécharger automatiquement. Puis il lance l'émulateur et le sketch.
Attention : L'émulateur par défaut peut être très très lent dans certains cas.
Plus de 20 minutes peuvent être nécessaire pour passer d'un écran noir à l’exécution de l’application.
(par exemple avec un ACER Windows 10 1,70 GHz 64 bits et 6,00 GO RAM)
Un message d'erreur peut apparaître au lancement de l'émulateur:
While initializing emulator-5566: java.lang.IllegalStateException: Adding [AndroidDevice emulator-5566], which already exists!
Relancez alors l’exécution du sketch. Vous pouvez obtenir l'écran suivant. Il peut falloir beaucoup de temps pour obtenir cet écran lors du premier lancement. Ne vous inquiétez pas et allez faire autre chose en attendant.
Il peut être difficile d'éteindre l'émulateur. Si c'est le cas: CTRL ALT SUPPR.
Il est possible de configurer votre émulateur pour qu'il soit beaucoup plus rapide. Il existe aussi l'iPhone Simulator. Voir :
https://jolicode.com/blog/configurez-votre-android-emulator-pour-qu-il-soit-rapide
5- Manipuler des images
Téléchargez une image de Tux par exemple Tux graduate. Il vous sera peut être nécessaire de la redimensionner. Puis jeter la sur le sketch. Elle sera ainsi intégrée au dossier data.
Essayez le sketch suivant. Vous rencontrerez des problèmes d’exécution si l’image n’est pas nommée dans le sketch comme dans le dossier data.
int rad = 50; // Width of the shape
float xpos, ypos; // Starting position of shape
float xspeed = 2.5; // Speed of the shape
float yspeed = 2.2; // Speed of the shape
int xdirection = 1; // Left or Right
int ydirection = 1; // Top to Bottom
PImage img; // Declare variable "a" of type PImage
void setup()
{
size(640, 360);
noStroke();
frameRate(30);
ellipseMode(RADIUS);
// Set the starting position of the shape
xpos = width/2;
ypos = height/2;
size(640, 360);
img = loadImage("tux.png"); // Load the image into the program
}
void draw()
{
background(#FF12E8);
// Update the position of the shape
xpos = xpos + ( xspeed * xdirection );
ypos = ypos + ( yspeed * ydirection );
// Test to see if the shape exceeds the boundaries of the screen
// If it does, reverse its direction by multiplying by -1
if (xpos > width-rad || xpos < 0) {
xdirection *= -1;
}
if (ypos > height-rad || ypos < 0) {
ydirection *= -1;
}
// Draw the shape
//rect(xpos, ypos, rad, rad);
// Displays the image at its actual size at point (0,0)
image(img, -340,-200, img.width/2, img.height/2);
// Displays the image at point (0, height/2) at half of its size
image( img, xpos, ypos, img.width/40, img.height/40);
}
Ce sketch est facilement modifiable avec votre image rebondissante et le logo du lycée.
6- Aller plus loin
Vous pouvez utiliser les capteurs de vos téléphones et par exemple l’accéléromètre. Un exemple est fourni par Processing, mais doit être modifié.