Il existe plusieurs solutions pour faire des applications pour ANDROID
MIT App Inventor repris par le MIT reprend les blocs comme Scratch ou Ardublock pour Arduino.
Objectifs : Faire des applications simples pour piloter en bluetooth une carte Arduino
MIT App Inventor est sous licence Apache Version 2.0
La licence Apache est une licence de logiciel libre et open source.
Pourquoi en local ?
Tout simplement dans certains lieux comme des lycées , l'accès au serveur de Google MIT App Inventor n'est pas autorisé.
On peut ne pas vouloir travailler sur le serveur de Google.
Il existe plusieurs solutions sur internet pour installer MIT App Inventor en local, dont des solutions prêtes à l'emploi.
J'ai choisi d'utiliser le github de MIT pour être indépendant et avoir une version que je pourrais mettre à jour.
https://github.com/mit-cml/appinventor-sources
Lire la doc qui explique tout
Installation sur une Debian 8 ( Jessie)
Prérequis :
On se place à la racine de votre dossier utilisateur
cd # la commande cd sans rien , vous place à la racine de votre dossier utilisateur : HOME wget https://storage.googleapis.com/appengine-sdks/featured/appengine-java-sdk-1.9.17.zip git clone https://github.com/mit-cml/appinventor-sources.git
cd appinventor-sources/appinventor/ ant # attendre BUILD SUCCESSFUL
depuis $HOME/appinventor-sources/appinventor
../../appengine-java-sdk-1.9.17/bin/dev_appserver.sh --port=8888 --address=0.0.0.0 appengine/build/war/
cd buildserver ant RunLocalBuildServer
Ce fichier est dans $HOME/appinventor-sources
Il contient ce fichier en texte et 4 fichiers pour une utilisation simple par n'importe qui.
Les 4 fichiers créés dont 3 dans $HOME/appinventor-sources/appinventor et un dans $HOME/Bureau
Les 3 fichiers serveurprincipal.sh , serveurcreation.sh et LocalAppInventor.sh doivent être exécutables.
Une fois copié et créé, il faut les rendre executable avec la commande chmod.
chmod u+x serveurprincipal.sh chmod u+x serveurcreation.sh chmod u+x LocalAppInventor.sh
cat serveurprincipal.sh »../Sources_AppInventor
#!/bin/bash # serveurprincipal.sh # dans le dossier appinventor-sources/appinventor ../../appengine-java-sdk-1.9.17/bin/dev_appserver.sh --port=8888 --address=0.0.0.0 appengine/build/war/
cat serveurcreation.sh »../Sources_AppInventor
#!/bin/bash #serveurcreation.sh # dans le dossier appinventor-sources/appinventor cd buildserver ant RunLocalBuildServer
cat LocalAppInventor.sh »../Sources_AppInventor
#!/bin/bash # répertoire de travail ~/appinventor-sources/appinventor echo "APP INVENTOR en local avec les sources AppInventor" dossier=$(dirname $0) # $0 c'est le fichier lui-même avec son chemin voir Exec dans AppInventor.desktop echo $dossier #dirname ne prend que le chemin qui est ici affiché puis cd $dossier #on va dans ce dossier (cd : change directory) a=$(/sbin/ifconfig |grep Bcast |cut -d: -f2|cut -d ' ' -f1) # la commande ifconfig nous donne l'adresse ip de notre carte réseau echo $a # on affiche ici l'adresse ip de notre carte réseau à condition de n'avoir qu'une carte réseau xterm -e "./serveurprincipal.sh" & # on lance le serveur principal dans une fenêtre spécifique et on garde la main avec "&" xterm -e "./serveurcreation.sh" & # on lance le serveur de création dans une fenêtre spécifique et on garde la main avec "&" # firefox "http://localhost:8888" & echo "Lancer firefox sur ce poste adresse web http://localhost:8888" echo "Sur un autre ordinateur dans firefox http://$a:8888" echo echo "Taper a pour arrêter" while read c && [[ "$c" != "a" ]] # on lit le clavier tant que on n'a pas tapé 'a' do echo "mauvaise touche" done echo "arret" # sortie de boucle kill %1 %2 # on arrête les 2 serveurs
cd ../../Bureau/
cat AppInventor.desktop »../appinventor-sources/Sources_AppInventor
#!/usr/bin/env xdg-open [Desktop Entry] Version=1.0 Type=Application Terminal=true Icon[fr_FR]=/home/per/appinventor-sources/appinventor/appengine/war/images/myprojects.png Name[fr_FR]=AppInventor Exec=/home/per/appinventor-sources/appinventor/LocalAppInventor.sh Name=AppInventor Icon=/home/per/appinventor-sources/appinventor/appengine/war/images/myprojects.png
Lanceur créé sur le Bureau :
Vous pouvez changer l'image évidemment.
Il faut évidemment remplacer /home/per/ par votre $HOME personnel
echo $HOME # si vous avez un doute
Prérequis : aucun.
Après avoir démarrer l'ordinateur et mis votre login
Vous trouverez sur le Bureau un icône AppInventor
Lancez cette application avec un double clic
3 terminaux doivent alors s'afficher, dont deux peuvent être superposés.
La fenêtre principale vous indiquera la solution pour utiliser cette application avec firefox.
Lancer firefox sur ce poste adresse web http://localhost:8888 Sur un autre ordinateur dans firefox http://192.168.0.10:8888
Pour cet ordinateur sous Debian 8, il faut remplacer firefox par Iceweasel.
L'adresse est donnée à titre d'exemple, vous devrez copier l'adresse indiquée.
L'autre ordinateur peut fonctionner aussi bien sous GNU-Linux que Windows XP par exemple.
Chaque utilisateur remplacera test@example.com par sonprenom@example.com
N'oubliez pas d'enregistrer votre travail sur votre ordinateur !
Pour terminer, placez-vous sur la fenêtre principale et taper 'a', les 3 terminaux doivent se fermer.
Vous pouvez éteindre l'ordinateur.