Android : Installer le SDK et installer les applis directement sur la SDCard

Si vous êtes utilisateurs d’Android, vous avez probablement remarqué que les applis Android s’installent sur la mémoire interne du téléphone et qu’on doit ensuite les déplacer vers la carte mémoire.

Il faut avouer que c’est plutôt désagréable quand on doit déplacer 20-30 applications, sachant que les stocks ROM ne proposent toujours pas le traitement par lots par lots pour cette tâche, de plus dans les paramétrages par défaut d’Android, Une partie des applications ne peuvent êtres stockées ailleurs que sur la mémoire interne de l’appareil.

Bien sûr, il y’a des applications qui permettent un déplacement vers la sdcard par lots, mais je déconseillerai leurs utilisations car elles demandes des permissions dont elles n’ont pas, c’est typique des développeurs qui veulent faire du fric en jouant à Big Brother à l’insu des utilisateurs imprudentss je vois pourquoi ce genre d’application aurait besoin d’avoir accès à Internet, d’utiliser la géolocalisation ou des fonctions téléphoniques (numéro et identifiant de l’appareil, appel actif… )

Par contre si vous trouver une appli de ce genre en plus fiable, de préférence sous licence libre, ça m’intéresserait.

Bien sûr, il y’a la “solution” de ne pas s’en préoccuper, le problème c’est que si votre mémoire système se remplit, votre terminal deviendra plus lent, on peut penser qu’on a de la marge pour atteindre les 16 GB standard d’un smartphone/une tablette Android de qualité correcte mais on est jamais trop prudent.

ll reste  reste cependant quelques terminaux avec une mémoire interne faible, ou tout simplement les Nexus qui ont la mémoire interne divisée en deux parties :

  •   La première partie considérée comme interne avec les applis réinstallées et celles qui pas défaut ne peuvent être mises sur une carte mémoire externe, environ, environs 1 GB utilisables sur le Nexus S
  • Le reste de la mémoire (14 GB sur le Nexus S), considérée par Android comme étant externe, d’ailleurs sur le Nexus S et le Galaxy Nexus (il me semble aussi), elle s’appelle sdcard dans l’arborescence

La méthode suivante qui s’applique aussi bien aux sdcard physiques que les partitions sdcard des Nexus Devices et permet aussi de forcer le déplacement de la plupart des applications qui ne le supportent pas par défaut

Il faut savoir que certains applications ne seront pas déplacées entièrement mais seulement partiellement (ce qui ne nuit pas à leurs fonctionnement) mais ça permet déjà un gain de place non négligeable

Certains d’autres applications peuvent ne plus fonctionner ou fonctionner partiellement (une appli liée à un widget doit être installé sur la mémoire interne pour que le widget puisse fonctionner)

Maintenant place aux choses sérieuses

Prérequis :

  • Android 2.2 ou plus
  • Java JDK d’Oracle
  • Android SDK de Google bien sûr
  • Android Debug Bridge, à installer depuis le SDK
  • Drivers du smartphone pour les utilisateurs de Windows uniquement

Mac OS X et Linux détecteront les smartphones Android sans drivers à installer normalement

 

Sous Linux le SDK peut être télécharger depuis la page de Google ou via PPA pour les distrib Ubuntu (et certainement ses dérivés comme Linux Mint), ou encore avec wget

 

Pour un installation via PPA

Lancer le terminal et ajouter le dépot de upubuntu :

sudo add-apt-repository ppa:upubuntu-com/devel

Mettez à jour la liste des fichiers disponibles dans les dépôts APT :

sudo apt-get update

Installez enfin le SDK avec atp-get :

sudo apt-get install android-sdk

 

J’ai lancé l’installation depuis mon Nexus S via SSH avec ConnectBot

Il faut ensuite installer les outils manquants, et surtout platform-tools qui contient ADB (Android Debug Bridge)

Lancez le SDK Manager (Applications/Accessoires/Android SDK Manger)

Suffit de cliquer sur le dossiers Tools, cliquer sur le bouton Install packages -> Accept All -> Install

Si vous êtes sous Windows et que c’est pas encore fait, installez vos drivers quand l’installation précédente sera finie

Vous noterez que juste en dessus du menu Packages dans la fenêtre de SDK Manager, il y’a noté SDK PATH suivi du chemin d’accès complet du SDK dans un espace de formulaire grisé : normalement /usr/bin/android-sdk-linux pour l’installation via PPA, le chemin peut changer si vous installer le SDK “manuellement” en téléchargeant l’archive depuis les serveurs de Google avec wget

Il faut ensuite activer le USB Debugging

Menu Button -> Settings -> Development (nom utilisé pour Android GB et précédent)

Menu Button -> Settings -> Developer Options (nom utilisé depuis Android ICS sur les smartphones)

Pour lancer ADB

  • Windows

Lancer l’outil Exécuter et taper cmd.exe ou lancer l‘invité de commande depuis le menu démarrer

cd chemin\access\complet\vers\sdk à remplacer par le vrai chemin d’accès vers le SDK

Tapez adb shell

  • Linux

Méthode 1 : tapez sur le terminal : cd /usr/bin/android-sdk-linux/platform-tools

puis tapez ./adb shell

Méthode 2 : éditer la variable $PATH pour pouvoir lancer ADB depuis n’importe quel dossier de arborescence

Soit une édition pour une utilisation ponctuelle, la variable revient à son contenu par défaut une fois le terminal fermé

On utilise la commande export PATH=$PATH:/usr/bin/android-sdk-linux/platform-tools

Soit vous comptez réutiliser ADB souvent pour d’autres besoins (développement Android)

Dans ce cas il faut modifier le .bashrc avec la commande suivante

sudo gedit ~/.bashrc

gedit à remplacer votre éditeur de texte favori, disons VI ou Ed :)

Il faut rajouter les lignes

export PATH=${PATH}:/usr/bin/android-sdk-linux/tools
export PATH=${PATH}:/usr/bin/android-sdk-linux/platform-tools

 

  • Mac OS X

Mêmes méthodes que Linux, avec le nom de l’éditeur de texte, le fichier qui définit le contenu de la variable $PATH, le chemin d’accès correspondants et syntaxe à adapter Mac OS X bien entendu
J’ai pas de machine sous OS X donc je connais pas la syntaxe exacte, je sais juste qu’il y’a des similitudes avec Linux

 

maintenant que ADB est lancé, vouvez pas lancer tapez adb devices, il devrait vous retourner la liste des terminaux connectés et reconnus
Ubuntu à tendance à retourner une liste vide même s’il reconnaît le terminal, mais passons…

 

Avant d’aller plus loin, encore une fois, certaines applications ne supportent pas d’êtres stockées sur la SD Card, si ça vous arrive, pensez à remettre l’application concernée dans la mémoire interne avant de penser à une panne grave…

Les commandes pour la gestion de l’installation sont :

pm get-install-location: retourne la configuration actuelle
    0 [auto]: Le système décide de ou mettre l’applicatio (généralement mémoire interne)
    1 [internal]: Installation dans la mémoire interne
    2 [external]: Installation dans la mémoire externe

pm set-install-location x : défini la configuration spécifiée avec x un chiffre compris ente 0 et 2

    0 [auto]: Le système décide de ou mettre l’applicatio (généralement mémoire interne)
    1 [internal]: Installation dans la mémoire interne
    2 [external]: Installation dans la mémoire externe

Une fois que vous avez fini, il faut toujours désactiver l’USB Debugging : laisser l’USB Debugging actif = terminal vulnérable

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>