Deblan blog

Tag #Android

Utiliser la console de débug sous Firefox mobile

La vue adaptative de Firefox est très intéressante mais je ne couvre pas tous les problèmes d'affichage d'un Firefox mobile. En effet, j'ai déjà rencontré des cas où Firefox mobile ne réagissait pas du tout pareil que sur la vue adaptative.

Il est possible d'utiliser la console de débug de votre Firefox PC pour inspecter votre Firefox mobile. Ça fonctionne à l'aide d'ADB. Ainsi, la première chose à faire est d'installer le SDK Android sur votre machine. Vous le trouverez ici et vous aurez simplement à décompresser l'archive quelque part.

Une fois le SDK disponible sur votre machine, activez le débogage USB sur votre terminal Android (Paramètre > Option de développement > Débogage USB). Branchez votre terminal sur votre machine et lancez Firefox mobile. Dans les paramètres, allez dans "Outils de développement" et cochez "Débogage distant".

Pour tester si l'Android est détecté, lancez cette commande :

$ /chemin/vers/sdk/platform-tools/adb devices

La sortie devrait ressembler à ça :

List of devices attached   
xxxxxxxxxxxxx	device

Ouvrez la console de débug et activez le débogage distant (à gauche de l'onglet "Console").

La dernière étape de configuration consiste à forwarder le port 6000 de votre machine vers le terminal Android :

$ /chemin/vers/sdk/platform-tools/adb forward tcp:6000 tcp:6000

En plus de message de confirmation d'ADB, on pourra s'assurer que ça fonctionne avec netstat :

$ netstat -nl | grep 6000
tcp        0      0 127.0.0.1:6000          0.0.0.0:*               LISTEN

Ouvrez une page sur votre Firefox mobile, puis, dans votre Firefox PC, allez dans Outils > Développeur Web > Se connecter. Une demande confirmation s'affichera sur votre terminal Android. Vous pouvez à présent débugger plus facilement vos sites web sur Firefox mobile :)


Android : partage de connexion internet

Les locaux de l'UTBM où je fais mes cours du CNAM fournit le nécessaire pour se connecter à Internet. Cependant, il y a de fortes restrictions sur le réseau (le débit et les ports ouverts vers l'extérieur). Comme je dois être capable d'intervenir sur l'ensemble des services hébergés par l'agence, j'ai du utiliser la connexion 3G de mon Android pour accéder à Internet.

Les étapes de configurations sont simples et ne nécessitent pas des Km de documentation.

La première étape est la configuration de l'Android :

  • Télécharger et installer l'application EasyTether Lite pour la version gratuite et limitée ou bien EasyTether Pro qui est la version payante (moins de 10 euros)
  • Dans Paramètres » Applications » Développement, cochez la case « Débogage USB »
  • Lancer l'application EasyTether et activer l'USB

Du coté de votre machine, il faudra installer le driver adéquate et le reste de la configuration relève des outils presque basiques de votre système.

De mon coté, j'utilise Debian et la démarche est la suivante :

Note : l'ensemble des commandes ci-dessous est exécuté en root

prompt> wget "https://sites.google.com/site/easytether/easytether/easytether_0.7.1-3_i386.deb?attredirects=0&d=1" -O easy.deb
# version amd64 : https://sites.google.com/site/easytether/easytether/easytether_0.7.1-3_amd64.deb?attredirects=0&d=1
# @see: http://easytether.blogspot.com/2010/10/easytether-drivers.html
# @important: le driver n'est pas libre, c'est donc un potentiel danger pour la sécurité votre système
prompt> dpkg -i easy.deb
# brancher l'Android via l'USB est récupérer la sortie de la commande suivante :
prompt> easytether enumerate # Sortie similaire à "SH0B2PL08690"
prompt> screen easytether connect SH0B2PL08690
prompt> dhclient easytether0

Si vous souhaitez partager cette connexion internet via l'ethernet ou bien le wifi, vous devrez monter un réseau local entre les machines :

# Chez vous
prompt> ifconfig <INTERFACE RESEAU> 192.168.0.1 netmask 255.255.255.0
# Sur l'autre machine
prompt> ifconfig <INTERFACE RESEAU> 192.168.0.2 netmask 255.255.255.0
prompt> route add default gw 192.168.0.1

Puis vous devrez activer le routage de paquets sur l'interface adéquate :

# Cette commande n'est pas forcément nécessaire
prompt> /sbin/modprobe iptable_nat
# man sysctl pour rendre cette configuration permanente 
prompt> echo 1 > /proc/sys/net/ipv4/ip_forward 
prompt> iptables -A POSTROUTING -t nat -o easytether0 -j MASQUERADE

Les applications (de geek) utiles d'Android

Ça fait quelques semaines que je tourne avec un Android sur un HTC Desire. Comme la configuration de la machine me le permet, j'ai testé pas mal de choses et aujourd'hui j'ai une liste d'applications que je trouve intéressante d'avoir.

La première application, en quelque sorte maitresse de mon HTC, est le launcher. Suite à des conseils d'un ami mais aussi après quelques tests, il s'avère que Go Launcher est quasiment parfait. Il permet un affichage en portrait et en paysage du Home. La gestion des dossiers d'applications est simple et complète. Qui plus est, le panel d'applications est super ergonomique.

La suite d'applications associée est elle aussi nickelle chrome : Go Contacts, Go Dialer et Go SMS Pro.

  • Go Launcher
  • Go Launcher
  • Go Contact
  • Go Dialer
  • Go SMS Pro

Mon Android est rooté. Il se peut donc que certaines applications citées ne fonctionnent pas chez tout le monde.

Pour lancer en root des applications, j'utilise "Permission Super Utilisateur". Dans le cas où une appli a besoin des droits root, je lui autoriserai (ou pas) via ce soft.

Pour la navigation internet, je n'utilise qu'Opéra. Simple, complet et rapide, il est sans nul doute le meilleurs dans sa catégorie.

Pour la gestion des fichiers de mon système, j'ai deux outils : File Expert et QuickSSHd. File Expert embarque une série d'outils pour la gestion des fichiers. Il permet également de les partager soit via une appli installée, en HTTP et en FTP. Il a aussi le gros intéret de pouvoir monter des système de fichiers distants via Samba. QuickSSHd est quant à lui un serveur SSH qui, rooté, me permet d'accéder à tout mon système et faire par exemple du SFTP (et accéssoirement de péter mon système).

Pour accéder à mes machines, j'utilise l'excellent client SSH ConnectBot. Il gère les clés et permet de faire de la redirections de ports en interne et en externe.

  • QuickSSHd
  • ConnectBot
  • Permission Super Utilisateur
  • File Expert
  • Opéra

App 2 SD permet de déplacer les applications qui sont installées sur la mémoire du système vers la carte SD. Si comme moi vous n'avez que 150Mo de disponible et une carte SD de 15Go, il est vite frustrant de ne plus pouvoir installer quoique ce soit alors que des Gigas dont disponibles ailleurs.

PicMe est l'outil que j'utilise pour les capture Android. C'est aussi un VNC Like qui me donne la possibilité d'intéragir sur mon android depuis mon PC.

Enfin, si vous êtes en panne de souris mais que vous avez votre Android sous la main (et une connexion Wifi), Pointer est fait pour vous ! Sur votre OS (Linux, Windows, Mac Os, peu importe), vous devez lancer un serveur java qui sera la passerelle pour Android. Via l'ip de la machine et depuis l'Android, vous pourrez vous y connecter et utiliser votre smartphone comme une souris ou un pad de portable. Vous aurez aussi accès à un clavier.

En terme "d'imagerie", pour décoder les QR Code, c'est Barcode Scanner qui a été élu. Pour recadrer rapidement des photos, c'est CamScanne qui m'a séduit !

  • App 2 SD
  • Pointer
  • PicMe
  • CamScanne

Android Blog Manager, le blog

Un blog de suivie de projet a été installé pour Android Blog Manager.

Il vous permettra de suivre l'avancement du développement et d'accéder aux sources complètes de l'application.

Un autre intérêt de ce blog est de vous présenter les outils que nous utilisons comme par exemple Subversion et AjaXplorer.

WebSVN

J'espère que les articles vous plairont et que notre retour d'expérience aidera les personnes à se lancer eux aussi dans des projets de ce type.

Plusieurs articles sont déjà en lignes alors prenez un peu de temps pour les lires et discuter avec nous de nos choix ^^

Accéder au blog du projet « Android Blog Manger »


Android Blog Manager, notre projet !

C'est officiel, le projet Android pour contrôler son blog dont j'avais parlé sera notre sujet d'étude pour les quelques mois qui suivent cet article.

Comme dans tout projet qui se respect, on essaye de cerner les fonctionnalités que nous souhaitons pour l'application. Cependant, ce concept de blogging par mobile étant relativement peu répandu, nous avons besoin d'avis de potentiels utilisateurs.

Pour l'instant, nous avons pensé à :

Créations et modification d'articles (envoi et réception) :
  • Éditer du texte
  • Gestion des images (+ vidéos ?)
  • Gestion des catégories et tags
Ajout et modification de commentaires (tri par article)

Permettre de modérer les commentaires d'articles dont nous sommes l'auteur, et bien sûr, d'en ajouter.

Notifications de mise à jour en fonction du compte

L'idée d'être "connecté" à son blog. On devrait pouvoir recevoir un message de notification quand un commentaire (ou une action du type) est effectuée sur le blog.

Gestion des BlogRoll

De la même manière que la gestion des tags et des catégories, on devrait avoir la possibilité d'ajouter un lien dans une liste (genre mon "A visiter" juste à droite ^^).

Modularité de l'application

Permettre le développement de plugins pour les ajouter à l'application.

Quelques contraintes :
  • Authentification sécurisée (pas forcement du ssl)
  • Transaction sécurisée (pas forcement du ssl)
  • Les fonctionnalités impliquent le développement d'une API coté serveur

Vous avez des idées ?