J’expliquais, lors de mes premières impressions d’Android 2 sur le Motorola Milestone, qu’il était impossible d’installer un fichier .apk sans accepter les conditions d’utilisation du market ni configurer un compte gmail.
C’est en fait possible, grâce à l’outil adb du SDK Android, à partir la connexion USB de l’ordinateur.
Configurer le téléphone
Pour que l’outil d’installation puisse fonctionner, il faut activer l’option Paramètres > Applications > Développement > Débogage USB sur le téléphone.
Configurer l’ordinateur
Il faut télécharger Android SDK, malheureusement non libre.
Sous GNU/Linux (plus précisément Ubuntu 9.10, adaptez selon votre distribution), voici comment l’installer et permettre la reconnaissance du Motorola Milestone (plus d’infos ici) :
sudo tar xzf android-sdk_r04-linux_86.tgz -C /opt
sudo ln -s /opt/android-sdk-linux_86/tools/adb /usr/bin
echo 'SUBSYSTEM=="usb", SYSFS{idVendor}=="22b8", MODE="0666"' | sudo tee /etc/udev/rules.d/51-android.rules
sudo service udev reload
Si vous utilisez un système 64 bits, vous aurez besoin également besoin de ia32-libs :
sudo apt-get install ia32-libs
Vous pouvez maintenant brancher votre téléphone sur le PC en USB. Pour vérifier que tout fonctionne :
$ adb devices List of devices attached 040140621600C00D device
Installer une application
En ligne de commande
Pour installer une application à partir de l’ordinateur, rien de plus simple :
$ adb install -r ConnectBot-svn-r466-all.apk 2343 KB/s (642578 bytes in 0.267s) pkg: /data/local/tmp/ConnectBot-svn-r466-all.apk Success
(-r permet d’écraser si l’application est déjà installée)
À partir d’un gestionnaire de fichiers
Vous pouvez ensuite ajouter la possibilité d’installer les .apk graphiquement à partir de votre gestionnaire de fichiers. Si vous utilisez nautilus, vous pouvez jouer avec nautilus-actions :

Voici la commande de mon action nautilus (j’ouvre un xterm pour avoir le résultat de l’installation, si vous avez mieux, n’hésitez pas) :
xterm -T adb -e 'cd "%d" && /usr/bin/adb install -r "%f"; sleep 5'
Conclusion
J’ai réinitialisé mon téléphone, il n’a plus de compte gmail associé et je n’ai pas accepté les conditions du market, ce qui ne m’empêche donc plus d’installer les applications dont j’ai besoin.
Même pour ceux qui veulent garder leur compte ou utiliser le market, c’est quand même plus rapide d’installer un .apk grâce à un clic-droit, « installer » à partir du gestionnaire de fichiers plutôt que de copier le .apk sur la carte SD, débrancher le câble USB, aller dans une appli qui va chercher le fichier et cliquer sur « installer ».

Pingback: Motorola Milestone avec Android 2, mes premières impressions « ®om's blog
#1 par vilraleur à 10 janvier 2010 - 17 h 29 min
Citation
C’est bien. L’astuce peut être pratique pour faire des sauvegardes de ses application …
Mais dans ton cas tu installe des programmes non acheté …
Pas très sympathique pour les Dev …
#2 par ®om à 10 janvier 2010 - 17 h 38 min
Citation
Ah bon, et pourquoi cela? Je n’installe que des programmes sous licence libre, comme sur mon PC…
Pour toi, un programme doit être propriétaire, payant et fermé?
#3 par diogene à 10 janvier 2010 - 17 h 58 min
Citation
Dommage. Ça ne marche pas avec mon Samsung Galaxy Spica. J’ai pourtant modifié le code « Vendor » mais adb devices me revoie une liste vide.
#4 par Chriss à 10 janvier 2010 - 18 h 14 min
Citation
Le problème par rapport au Market, c’est que même si celui ci est bordélique, il centralise tous les programmes.
Mais je ne crois pas qu’il existe de dépôt ou autre permettant de trouver des .apk, il faut donc se frapper de chercher sur des sites pour les récupérer, du moins quand on sait ce qu’on cherche.
Et ça, c’est pas pratique.
#5 par MAIDEN à 10 janvier 2010 - 18 h 53 min
Citation
Rôôôh tu t’es fait avoir par un troll aussi évident ?!
#6 par flem à 10 janvier 2010 - 20 h 00 min
Citation
Hello, comment fais tu pour recuperer les .apk dans ce cas ?
#7 par LordPhoenix à 10 janvier 2010 - 21 h 15 min
Citation
C’est dingue ces app-store et compagnies. Il ne reste plus que Windows Mobile sur lequel on peut encore installer les applications que l’on veut.
#8 par ®om à 10 janvier 2010 - 21 h 31 min
Citation
Ils sont dispos sur le site du programme en question. Par exemple : connectbot, beem, jabiru, k9mail…
#9 par regala à 14 janvier 2010 - 17 h 54 min
Citation
> Ah bon, et pourquoi cela? Je n’installe que des
> programmes sous licence libre, comme sur mon PC…
> Pour toi, un programme doit être propriétaire, payant et
> fermé?
parce que selon toi payant = pas libre ? tu te trompes lourdement. Un développeur de logiciel libre a aussi besoin de manger, et placer le code en licence libre n’empêche pas ce développeur de pouvoir vouloir être _justement_ rémunéré pour le travail fourni. Va relire la GPL.
#10 par ®om à 14 janvier 2010 - 18 h 02 min
Citation
Je n’ai pas dit le contraire regala.
Mais la phrase à laquelle j’ai répondu disait que « pas acheté » implique « pas sympathique pour les dév », ce qui sous-entend que pour respecter le développeur, et donc la licence qu’il a utilisée (quelqu’elle soit), il faut avoir « acheté » son programme. Ce qui est faux.
@MAIDEN: oui, je suis tombé dans le troll, et je continue ^^
#11 par regala à 15 janvier 2010 - 13 h 39 min
Citation
@®om: mouais. désolé, le développeur peut avoir à vivre de ça, et quelle que soit la licence qu’il a pu choisir pour distribuer son soft, c’est irrespectueux vis-à-vis de ce développeur que d’utiliser une méthode permettant d’éviter de lui reverser son dû. ce que je soulignais, mais très mal
, c’est que ce n’est aucunement un problème de licence, mais un problème de respect moral.
#12 par Hell Pé à 16 janvier 2010 - 19 h 41 min
Citation
Mec, je crois que t’as oublié de fermer une balise italique :p
#13 par ®om à 17 janvier 2010 - 11 h 15 min
Citation
Merci, j’ai corrigé (c’est quand j’ai rajouté une petite ligne en italique dans l’article).
#14 par huguenant à 7 février 2010 - 21 h 55 min
Citation
Bon, j’ai fait et refait tout cela, mais impossible de trouver mon milestone sur la prise usb, même quand il est relié. adb ne trouve aucun device, alors que lsusb le trouve bien !
Si quelqu’un pouvait me donner une piste.
J’utilise Ubuntu 8.10 LTS, et j’ai acquis le motorola milestone.
Merco
#15 par ®om à 7 février 2010 - 21 h 58 min
Citation
@huguenant, pour les versions avant la 9.10, le fichier doit peut-être s’appeler 50-android.rules au lieu de 51 :
sudo mv /etc/udev/rules.d/5{1,0}-android.rulesÀ tester…
#16 par huguenant à 8 février 2010 - 20 h 08 min
Citation
Merci de la proposition, mais hélas, cela ne change rien. Rien dans la « list of device attached »,
et « can’t find ‘ConnectBot-svn-r466-all.apk’ to install », sur la commande :
« adb install -r ConnectBot-svn-r466-all.apk »
Bizarre, bizarre.
#17 par Remi à 19 mars 2010 - 22 h 37 min
Citation
Salut rome, j’ai un lg android mais les application que j’ai spnt des fichiers APk et lorsque je les passe sur ma carte SD, et que je linsert sur mon prtable, je ne retrouve aucunes des applications et je ne comprend pas vraiment ce qu’es sudo echo et les truk ecrit en petit :S merci de m’aider …
#18 par ®om à 28 mars 2010 - 0 h 43 min
Citation
@Remi, es-tu sous GNU/Linux déjà?
Pingback: Le Repaire du Sanglier des Ardennes » Blog Archive » [Android] Environnement de développement
#19 par ®om à 30 août 2010 - 20 h 38 min
Citation
Pour ceux qui ont un téléphone non reconnu par
adb devices, mettez à jour le SDK : sur un téléphone sur lequel je viens de tester, une ancienne version du SDK ne le reconnaissait pas, alors que le nouveau si.Il se peut aussi qu’il faille redémarrer l’ordinateur après la modification du fichier de règles (chez moi un simple
reloadourestartdu serviceudevne suffit pas).