Les opérateurs s’empressent d’interdire l’utilisation des smartphones en tant que modem. Effectivementy vu sous l’angle de l’escroquerie [le préféré des opérateurs], comment vendraient-ils ensuite leurs abonnements clef 3G (pourris) si les clients utilisaient directement leur mobile comme un modem internet???
Devant cette situation, il m’a paru naturel d’aider les utilisateurs d’Android à utiliser pleinement le potentiel de leur smartphone.
Plusieurs approches existent: je parlerai ici du WIFI Tethering et du proxy via usb.
Les techniques de Wifi Tethering transforment votre androphone en routeur wifi 3G. 2 inconvénients: primo le téléphone mobile doit être rooté, secundo la consommation électrique de ce genre de montage est sidérante (j’ai vidé ma batterie en 1 heure), avec en corollaire une surchauffe du téléphone.
Pour les amateurs, je conseillerai les 2 applis gratuites: WIFI Thether et Barnacle Wifi Tether
Théoriquement Android 2.2 (Froyo) permet nativement de faire du Tethering, sans application supplémentaire. Sauf que les mobiles « personnalisés » par nos opérateurs, ne garantissent pas le bon fonctionnement de cette fonctionnalité!!
Bien que très aisé à mettre en oeuvre (puisque votre mobile devient un hotspot wifi comme un autre) le Wifi Tether ne fonctionne pas sur tous les téléphones, et pour tout dire je n’ai pas réussi à obtenir une connexion durable et reproductible.
Tout cela m’a donc amené à la 2ème technique, consistant à transformer l’androphone en Seveur Proxy via le port USB. Pour réaliser cette opération j’ai utilisé l’application open source Proxoid
Attention dans tout ce qui suit le mobile Android doit être banché en USB mode debug (paramètres>applications>développement>cocher débogage USB)
- Sous Windows suivre ce tutoriel: avec mon Samsung TEOS je n’ai pas eu à faire les étapes 3.1 à 3.7, car les drivers fournis par Samsung (en installant Kies) suffisent à ce qu’adb reconnaisse le téléphone.
- Sous Linux, c’est un peu moins simple (mais on a l’habitude hein???) , voir le tutoriel Proxoid Linux
Pour l’étape 1, j’ai fait un peu différemment:
dans le fichier /etc/udev/rules.d/09-android.rules , j’ai saisi les 2 lignes suivantes:SUBSYSTEM== "usb", ATTR{idVendor}== "votreidvendor" , ATTR{idProduct}== "votreidproduct" , MODE= "0666",USER= "votrenomutilisateur" SUBSYSTEM== "usb",SYSFS{idVendor}== "votreidvendor" , SYSFS{idProduct}== "votreidproduct" , MODE= "0666", USER= "votrenomutilisateur"on trouve votreidvendor et votreidproduct en branchant le téléphone sur le port USB en mode debug, puis en tapant la commande:
lsusb
Ensuite il faut installer le sdk android, sous Ubuntu la manip est la suivante (extrait de http://doc.ubuntu-fr.org/android ) :
« Installation du SDK
Commencez par télécharger le SDK pour Linux sur le site d’Android.
Puis décompresser dans un dossier et mettez à jour la variable d’environnement PATH pour accéder au programme duSDK :tar -zxvf android-sdk_r*-linux_x86.tgz cd android-sdk-linux_x86/tools/ echo "export PATH=$(pwd):${PATH}" >> ~/.bashrc cd ../android-sdk-linux_x86/platform-tools/ echo "export PATH=$(pwd):${PATH}" >> ~/.bashrc . ~/.bashrcLes deux dernières commandes ajoutent le chemin courant (pwd) au PATH, donc permet d’exécuter les binaires qui setrouvent dans « android-sdk-linux_x86/tools. »
fin de l’extrait de http://doc.ubuntu-fr.org/android
Enfin je me suis fait un petit script pour lancer « proprement » le mode proxy sur le PC
(il faut remplacer « /home/votrenomutilisateur/android-sdk-linux_x86 » par l’endroit où vous avez installé le sdk android
(edit du 21/04/2010: il semble que désormais l’exécutable adb ne soit disponible qu’après mise à jour du SDK
lancer donc:
tools/android
mettre à jour le SDK via l’interface, à présent adb est dans le répertoire
/home/votrenomutilisateur/android-sdk-linux_x86/platform-tools
il faut donc modifier dans le script qui suit.
fin edit du 21/04/2010)
#! /bin/sh
sudo /home/votrenomutilisateur/android-sdk-linux_x86/tools/adb kill-server
sudo /home/votrenomutilisateur/android-sdk-linux_x86/tools/adb start-server
/home/votrenomutilisateur/android-sdk-linux_x86/tools/adb devices
/home/votrenomutilisateur/android-sdk-linux_x86/tools/adb forward tcp:8080 tcp:8080
- Enfin, sous Windows ou Linux configurer le navigateur pour qu’il utlise une connexion proxy localhost port 8080:
sous Firefox http://code.google.com/p/proxoid/wiki/installationLinux (étape3),
IE sousWindows http://code.google.com/p/proxoid/wiki/installationWindowsVista (étape4),
ou alors l’excellent Proxy Switchy sous Chrome (créer ensuite un profil qui utilise le proxy localhost sous le port 8080) - Sur le téléphone, lancer l’appli Proxoid et cocher « Start Proxoid »

La configuration de Proxoid sous Linux peut effrayer, mais elle est finalement assez simple. Sous Windows tout est déjà fourni pour faciliter les choses au maximum. Alors restez connectés!
2. J’ai suivi le tuto pour « windows » sur mon Samsung Galaxy S de chez Virgin android 2.2 version FRYO XWJPA, cela fonctionne a priori comme indiqué jusqu’à « check.bat » et « start-tunnel.bat » sauf qu’à la fin je ne suis pas connecté et donc pas de « enjoy » du tout !
Proxoid ne fonctionnera que si le PC voit le téléphone branché en USB
le téléphone doit être en mode debug USB
si c’est un Samsung, Kies doit être installé sur le PC car c’est lui qui embarque les drivers USB du téléphone.
Sur le PC en ligne de commande (depuis le répertoire ou se trouve check.bat et donc adb.exe), tape:
adb devices
normalement on obtient quelque chose du style:
List of devices attached
HT851N003417 device
sinon c’est que cela ne fonctionne pas, et que le téléphone n’est pas reconnu par le PC
Au pire restera alors le point d’accès wifi:
As-tu essayé la fonction native de Froyo
Paramètres>sans fils et réseau>Point d’accès mobile?
Smartphone Android , ne soyez pas sur le smartphone (Samsung Teos) en mode WIFI, car seul le mode WIFI fonctionnera et pas le 3G.
Installez le en mode 3G et cela fonctionnera en mode 3G et en plus WIFI . Pour resumer :
Installer KIES , et desinstaller le tres vite ( une daube) en gardant juste les drivers …
Procedez à la maj du driver x86.. installez le tunnel : tres simple .
Mode d’emploi :
sur TEOS: passer en mode debug demarrer proxoid
sur PC ouvrir le tunnel check.bat , et lancer Mozilla qui attaque Localhost port 8080
Et ça marche à tous les coups !!!
Parmi les opérateurs, il en est un plus habitué que les autres à harceler. Celui-ci vous envoie la page d’abonnement au surcoût dès que vous êtes en train de surfer avec un navigateur d’ordinateur (Firefox, Chrome, Opéra, IE, et j’en passe).
CHANGEZ LE USER-AGENT de votre browser, de sorte qu’il se présente comme un téléphone. J’ai personnellement choisi l’extension User Agent Switcher sous Firefox. Ainsi, l’opérateur pense voir un iPhone ou un Android.
Bon surf !
Bien sûr, c’est gratuit, et multi-plateforme.
Peut-on code pour Android depuis Android ou utiliser un ADB sur une tablette Android pour utiliser un téléphone comme modem?
Merci
Pingback: Meilleures applications Android, mon market à moi! | Geek01