Une fois les bons outils en main, le bidouillage d'un androphone est un véritable plaisir, pour peu que l'on s'y retrouve dans les multiples conversations dans la myriade de forums qui explique chacune un bout du sujet. L'objectif de ce tutoriel de regrouper les étapes qui mènent à la connaissance de ces outils avec comme but "ultime" l'installation d'un bootstrap magique qui permet de tout faire, ou presque, avec son téléphone.

Depuis, le CEO de cette société est devenu le directeur de la section "plateformes mobiles" de Google et Android est progressivement monté en puissance avec l'objectif clair de dégommer l'iPhone OS d'Apple, le WebOS de Palm, le Windows Mobile de MicroSoft, etc. Et pour arriver à ses fins, Google a réuni un ensemble de partenaires (HTC, LG, Motorola, Samsung, Sony, etc.) sous la bannière de l'Open Handset Aliance. Pour l'heure ce n'est clairement pas Apple qui souffre le plus de la multitude d'annonce de nouvelles plate-formes tournant sous Android, et malgré la petite guerre qui semble s'engager, il ne faut pas oublier qu'Eric Schmidt est toujours au board de la marque à la pomme, compliqué cette affaire
Du point de vue utilisateur, Android est donc un OS, une interface (avec bureaux virtuels et widgets) et une série d'applications clef en main (gmail, gmap, etc.). Du point de vue développeur, Les applications pour Android se basent sur un kit de développement Java. Plus exactement, Android embarque une machine virtuelle Java optimisée appelée Dalvik, le langage Java et un sous-ensemble de ses librairies. A ce titre, et contrairement à beaucoup de téléphones du marché, Android n'est pas une mouture de J2ME (Java Mobile Edition) mais une toute nouvelle plateforme Java, ce qui ne l'empêche cependant pas de pouvoir exécuter des applications J2ME sous réserve d'installer une JVM compatible (ex. JBed).
Donc ce qui nous intéresse avec ce système d'exploitation c'est que, contrairement à celui de l'iPhone, il est disponible sous licence Apache (version 2) et peut donc être considéré comme libre. En fait il est même carrément libre (basé sur un linux kernel) au delta de ce que l'on appelle les Google Bits (Google Map, GMail, etc...) dont on peut techniquement se passer...

D'un point de vue hardware, le Hero dispose d'un processeur Qualcomm MSM 7201A (architecture ARMv6) à 528Mhz, de 288Mo de RAM et 512Mo de flash. Cela peut sembler peu par rapport à l'iPhone, mais ce serait sans compter le slot microSD qui permet d'embarquer jusqu'à 32Go de flash supplémentaire. Côté périphérique nous avons un écran multi-touche (320x480), un trackall, une caméra 5 mpixels, un GPS, une boussole 3D et un accéléromètre 3D. En explorant la configuration interne j'ai aussi trouvé un capteur de température mais rien ne semble en faire état dans la doc officielle.
Pour ce qui est de la connectivité c'est plus que complet avec bien évidement le Quadri bande GPS et le Drual Band UMTS (3G), le Wifi (b et g) et le Bluetooth. L'appareil est en outre doté d'un connecteur Jack 3.5 pour le casque-micro et d'une prise mini USB standard. Cette dernière intègre des extensions HTC permettant notamment de faire passer l'audio (aucune idée pour la vidéo).
Maintenant physiquement, le Hero un appareil un peu plus épais que l'iPhone (14.35mm) mais moins large (56.2 mm) et de même hauteur (112mm) pour 135g, batterie comprise.
Le kit de développement pour Android ne sert pas qu'aux développeurs. Il permet de compiler soit même des applications Andoid (par exemple la dernière version du client Funambol), ou encore de bénéficier d'outils bien pratiques comme l'émulateur d'Android (une sorte de VirtualBox pour cette plate-forme), ddms qui permet de se connecter sur son téléphone pour en auditer le fonctionnement mais surtout de faire des copies d'écran, et enfin adb que nous allons étudier un peu plus loin.
L'installation du kit de développement s'est grandement simplifié depuis CupCake. Aujourd'hui un centre de contrôle unique permet de télécharger les différentes plateformes, les mises à jour, créer et lancer l'émulateur, etc.
La première chose à faire est donc de télécharger cette application et la décompresser où bon vous semble (ex. /opt/android-sdk). Ensuite, si vous êtes en 64bits, vous devez installer certaines librairies 32bits nécessaire au lancement des outils.



Il ne reste maintenant plus qu'à sélectionner la machine virtuel et clicker sur Start....
Pour utiliser ADB et DDMS, nous allons devoir communiquer avec l'androphone en passant par le câble USB. Par défaut, le lien USB est utilisé pour synchroniser le téléphone avec un ordinateur de bureau ou encore de transformer le téléphone en disque externe. Pour utiliser nos outils et contrôler l'androphone à partir de GNU/Linux, nous allons devoir le configurer pour que l'USB fonctionne selon un troisième mode "USB Debug". Pour cela, allez dans les réglages du téléphone, dans la section Applications, puis Développement et cochez Débogage USB.
Lorsque c'est fait, vous pouvez raccorder le téléphone à votre ordinateur par le câble USB. En tapant dmesg dans une console, vous devez obtenir les informations suivantes :
root#dmesgusb 8-4: new high speed USB device using ehci_hcd and address 69usb 8-4: New USB device found, idVendor=0bb4, idProduct=0c02usb 8-4: New USB device strings: Mfr=3, Product=2, SerialNumber=1usb 8-4: Product: Android Phoneusb 8-4: Manufacturer: HTCusb 8-4: SerialNumber: HT97FL903160usb 8-4: configuration #1 chosen from 1 choicescsi70 : SCSI emulation for USB Mass Storage devicesusb-storage: device found at 69usb-storage: waiting for device to settle before scanningscsi 70:0:0:0: Direct-Access HTC Android Phone 0100 PQ: 0 ANSI: 2sd 70:0:0:0: [sdd] Attached SCSI removable disksd 70:0:0:0: Attached scsi generic sg4 type 0usb-storage: device scan completeroot#Mobile Android en mode débogage USB
La liaison USB est maintenant prête à être utilisée. Pour tester, toujours dans le dossier tools, lancez la commande ./ddms. Apapraît alors une nouvelle application qui n'est autre que le debugger/moniteur de la machine virtuelle du téléphone (aka Dalvik). Si ce dernier est correctement reconnu, vous devriez voir apparaître sa référence en tête d'une petit arborescence. Dans le cas contraire vous aurez des points d'interrogation indiquant que DDMS n'arrive point à communiquer avec le téléphone. Si vous avez bien branché le câble et bien activé le mode Debug, il se peut que ce soit là un problème de droit sur le périphérique USB. Dans ce cas, tentez de créer le fichier suivant
SUBSYSTEMS=="usb", ATTRS{idVendor}=="0bb4", ATTRS{idProduct}=="0c02", MODE="0666"
Notez que nous faisons correspondre les identifiants 0bb4 et 0c02 avec ce que nous voyons dans la trace donnée plus haut. Une fois le fichier sauvegardé, débranchez et rebranchez le câble pour vérifier que l'ami ddms se porte mieux.
Une fois que le téléphone est correctement pris en charge, vous pouvez créer une copie de l'écran en cours en allant dans Device/Screen Capture..., tout simplement. Bien évidement DDMS est beaucoup plus utile que cela... pour un développeur
Non, l'outil qui lui va nous être vraiment très utile est ADB. ADB (pour Android Debug Bridge) est un couteau suisse que tout bidouilleur d'Android se doit de connaître. Il permet en effet de communiquer en direct avec Android par la même connexion USB que DDBS pour y exécuter un tas de commandes utiles allant jusqu'à un véritable shell (un peu comme un ssh).
Comme nous savons grâce à l'étape précédent que la connexion USB du téléphone est fonctionnelle, il ne reste plus qu'à lancer un adb shell pour se balader dans le téléphone
root#./adb shellgaston$lssqlite_stmt_journalscachesdcardetcsystemsyssbinproclogo.rleinit.rcinit.hero.rcinit.goldfish.rcinitdefault.propdatarootdevgaston$exitgaston$Lancement de la commande adb
Ici fonctionne la majorité des commandes dont vous avez l'habitude en console unix (ls, find, rm, etc..) mais comme vous le constatez, le $ vous signifie bien que vous n'êtes pas root sur cette machine. Beaucoup d'opérations vous seront donc interdites.
Beaucoup d'autres commandes existent pour cet outil. Vous pouvez en obtenir la liste en tapant simplement ./adb. Vous pouvez ainsi lire et écrire sur le système de fichier en utilisant les commande ./adb push un_fichier un_dossier distant ou dans l'autre sens ./adb pull un_fichier_distant un_dossier_local. Ou encore, avec adb logcat obtenir les traces du système android en temps réel.
root#./adb logcatI/Contact WidgetView( 122): com.htc.android.mail.intent.change changed mContentChanged? true changed falseD/NotificationFlashLightUtility getIncomingCall( 343): load fail~~~~~~~~~~D/NewMailNotification( 343): 06021143 createNotification: isFlashEnabled> true, sound> 0, vibrate>1D/NewMailNotification( 343): 06021143 enableJogBallLight>I/Contact WidgetView( 122): android.intent.action.NOTIFICATION_ADD changed mContentChanged? true changed falseD/HardwareService( 65): vibratePattern , repeat=-1I/HardwareService( 65): vibrating with pattern: 0 250 250 250D/HardwareService( 65): VibrateThread , run startD/MailWidget( 122): BroadcastReceiver: ACTION_HTC_MAIL_CHANGE...D/MailWidget( 122): BroadcastReceiver: EXTRA_HTC_MAIL_FLAG_CHANGE: false, true, false, false, falseI/Contact WidgetView( 122): com.htc.android.mail.intent.change changed mContentChanged? true changed falseD/Rosie ( 122): request to update icon, itemId : 2D/Rosie ( 122): request to update icon, itemId : 33D/Rosie ( 122): request to update icon, itemId : 73D/KeyguardViewMediator( 65): wakeWhenReadyLocked(6)D/KeyguardViewMediator( 65): handleWakeWhenReady(6)...root#adb logcat - les traces d'android

Là nous rentrons dans le vif du sujet, remplacer la ROM du hero par une autre. Et comme pour un Zaurus, cela va passer par la mise en place d'un bootstrap alternatif à celui d'origine qui va nous permettre, entre autre, de flasher toutes les ROM que nous voulons.
Ce bootstrap est en réalité un remplacement de la partition "recovery" du Hero par une version légèrement "améliorée". Cette opération est rendu possible grâce à l'excellent utilitaire FlashRec. C'est une application tout ce qu'il y a de plus standard qui permet de sauvegarder et de restaurer cette partition. Téléchargez la version 20090815 (qui est la seul qui fonctionne chez moi) sur votre machine de bureau.
La seconde chose qui va nous falloir est l'image de remplacement pour la partition "recovery" que vous pouvez télécharger ici.
Maintenant nous avons tout ce qu'il nous faut. Pour ne prendre que le minimum de risque, nous allons placer tout cela sur la carte SD du Hero, en prenant soin de la formater préalablement. Si vous avez des choses dessus, recopiez-les en local en faisant glisser la barre de notification du téléphone, puis Connectez avec un câble USB et enfin Monter. La carte devrait apparaître sous Nautilus pour vous permettre la sauvegarde. Ensuite renouveler l'opération en choisissant cette fois Éteindre le périphérique de stockage, puis Éteindre.
Vos données étant maintenant au chaud, vous pouvez formater le disque en exécutant la séquence suivante : boutons home puis menu, paramètres, Carte SD et mémoire, Désactiver la carte SD, puis Formater la carte SD.
Vous pouvez maintenant remonter la carte qui doit apparaître vierge de tout contenu sous Nautilus. Recopiez à la racine les fichiers cm-hero-recovery.img et flashrec-2090814.apk. Pour plus de sécurité, vérifiez que vous avez la bonne somme MD5 sur l'image comme ceci :
root#md5sum cm-hero-recovery.imgaef554c1eb8b4b59ac4fc94c46216ff6 cm-hero-recovery.imgroot#Somme mD5 de l'image recovery modifiée
Vous pouvez maintenant éteindre le stockage USB. Ensuite, pour lancer l'installation de FlashRec, il va nous falloir un gestionnaire de fichier. Vous en trouverez un gratuit qui s'appelle Linda sur le Market. Une fois l'application installée, lancez là et allez dans le dossier sdcard, vous y retrouverez les deux fichiers. Sélectionnez FlashRec et utilisez l'installateur d'application.
Une fois FlashRec installé, retournez sur la home, affichez la liste des applications disponibles et sélectionnez Recovery Flasher. L'interface est très simple : une zone de saisie et deux boutons. Souvenez vous seulement d'une chose, en aucun cas il ne faut cliquer sur Flash Cyanogen Recovery 1.4.
Prudence étant mère de sûreté, avant tout chose, nous allons créer une copie de sauvegarde de la partition recovery. Pour cela cliquez sur le bouton Backup Recovery Image. Après un moment, vous devez obtenir à la racine de la carte SD, un fichier recovery-backup.img de 5242880 octets. Remontez le disque SD pour vérifier cela et sauvegardez ce fichier sur votre disque local. Ceci fait, éteignez à nouveau le stockage USB.
Retournez sur FlashRec, le bouton que nous avons précédemment utilisé doit maintenant proposer l'opération inverse : Restore Backup Recovery Image. C'est cette option que nous utiliserons si nous avons envie de remettre le téléphone dans son état standard. Pour l'heure nous allons passer au flashage de la nouvelle image en utilisant la zone de saisie et en tapant /sdcard/cm-hero-recovery.img. Attention à la prédiction du clavier qui peut vous rajouter des accents, ce qui se traduirait par le texte Invalid Recovery Image dans le premier bouton. Si vous avez correctement tapé, vous devez avoir dans ce bouton le texte Flash Custom Recovery Image. Si c'est le cas, cliquez dessus. Après un court moment l'image est flashée et il ne nous reste plus qu'à découvrir le fameux mode Recovery.
Pour cela, nous devons éteindre complètement le téléphone en appuyant longuement sur le bouton Décrocher jusqu'à ce qu'un menu apparaisse. Nous sélectionnons alors Éteindre, puis OK. Un fois l'appareil hors-fonction, pour passer en mode recovery, vous devez appuyer sur la touche Home, la maintenir pressée et appuyant sur la touche Décrocher. Maintenez les deux touches pressées ensemble jusqu'à ce que le téléphone vibre et affiche le logo Hero. Vous pouvez alors relâcher et attendre quelques instants. Apparaît alors le menu de notre nouveau mode recovery.

Une option du menu du mode recovery va particulièrement nous intéresser pour l'instant, il s'agit de nandroid v2.2 backup. Cet utilitaire va nous permettre de sauvegarder complètement notre téléphone et ainsi nous permettre de le restaurer à son état initial en utilisant l'option Restore Latest Backup.
Sélectionnez donc l'option nandroid v2.2 backup avec le trackball, puis cliquez dessus (en pressant le trackball). Une confirmation vous est demandé en appuyant sur la touche home, après la sauvegarde commence et peut prendre un certain temps car il peut y avoir, selon ce que vous avez installé comme application, jusqu'à 512mo de données à transférer.
Une fois l'opération terminée, l'utilitaire vous renvoie au menu. Sélectionnez l'option Reboot system now pour relancer le téléphone. Lorsque le système c'est totalement initialisé, vous ne devez constater aucune différence avec ce que vous avez l'habitude d'utiliser. Remontez alors le stockage USB et recopiez le dossier nandroid en local pour disposer à l'abris d'une copie de votre système.
Maintenant que nous avons notre bootstrap custom, une connexion USB de deboggage, un adb fonctionnel et une sauvegarde faite, nous pouvons effectuer un rootage du téléphone. Le but de cette opération est d'implanter dans le téléphone un utilitaire qui va faire office de SUDO et ainsi permettre à d'autres applications d'obtenir les droits root de manière sécurisée (par exemple Titanium Backup). Ceci étant dit, pour ceux qui désirent changer la ROM de leur téléphone, vous pouvez joyeusement sauter cette étape car toute les ROM custom intègrent déjà cet utilitaire.
Le mode recovery dispose de trois particularités qui vont maintenant nous servir. La première est qu'il s'agit comme Android, d'un démarrage sur un noyau Linux. La seconde est que ce Linux active en standard le Débogage USB. Nous pouvons donc lancer une commande ./adb shell. La seconde est que contrairement à android, ce linux adb shell nous lâche sur un utilisateur root.
Le psoeudo SUDO que nous allons installer s'appelle SuperUser. Son principe est de n'autoriser l'accès root à une application que si vous validez cet accès à l'écran. Une sorte d'Allow-Deny à la Windows Vista en somme.
Nous allons donc commencer par télécharger cet outil ici et le décompresser. A l'intérieur se trouve une application android Superuser.apk qui va communiquer avec un utilitaire bas niveau su.
Pour installer nos deux fichiers, nous allons devoir monter la partition system. Cette partition, comme son nom l'indique, contient toutes les applications (system/app), les commandes (system/su), le paramétrage (system/etc), etc. Par défaut, en mode Recovery, cette partition n'est évidement pas montée. Elle correspond au périphérique /dev/block/mtdblock3 qui utilise le système de fichier yaffs2. Pour la monter nous exécutons donc la commande suivante :
gaston$adb shell mount /dev/block/mtdblock4 /systemgaston$Montage de la partition system
Nous allons maintenant utiliser la commande adb pour envoyer nos deux fichiers sur le téléphone.
gaston$adb push su /system/bin/gaston$adb push Superuser.apk /system/app/gaston$Utilisation d'adb pour pousser les fichiers sur le téléphone
La commande su appartenant à root, elle a besoin du sticky-bit pour permettre l'escalade de privilèges.
gaston$adb shell chmod 4755 /system/bin/sugaston$Ajout du sticky-bit à su
Et voilà, c'est terminé, vous pouvez maintenant redémarrer votre téléphone
gaston$adb shell rebootgaston$Redémarrage du téléphone
Une fois la machine en route, vous pouvez relancer la commande adb pour ouvrir un shell sur le téléphone. Vous êtes alors toujours en utilisateur non-privilégie ($). Tapez la commande su et validez. Sur l'écran du téléphone devrait apparaître une demande de confirmation du passage à root. Cliquez sur le bouton Allow. Et zou, sur la console abd, vous êtes maintenant root (invite #).

A titre d'exemple, car il existe des dizaines de ROM pour le Hero, nous avons installer la ROM MoDaCo. Elle a l'avantage d'être très proche de la ROM HTC d'origine (avec les mêmes défauts dont le look & feel et la lenteur...), ren ajoutant pas mal de choses comme plus de fluidité, SuperUser (que nous venons de voir), JBed (pour lancer les applications J2ME), Spare Parts (plus atteindre certains réglages cachés d'android), Wifi Tether (pour connecter son ordinateur portable à la 3G du téléphone en passant par le bluetooth ou le wifi), busybox et nano (qui ne sont plus à présenter), A2SD (pour installer des applications sur la SD quant la place manque sur la machine), etc, etc et etc...
Pour installer cette nouvelle ROM, rien de plus simple. Il suffit de la télécharger, de la recopier telle-quelle à la racine de la carte SD. Ensuite, vous n'avez plus qu'à redémarrer la machine en mode recovery.
Avant d'installer la nouvelle ROM, il est préférable de reinitialiser systématiquement la machine avec ses réglages usine (attention, vous perdrez toutes vos données, contacts, etc.). Avant d'aller plus loin, vérifiez donc que vous avez fait une sauvegarde complète de votre système (nandroid) et mieux, que vous avez sauvegardé vos données (sms, contacts, etc.) avec un outil comme titanium backup (qui d'ailleurs est intégré à la ROM modaco).
Lorsque vous êtes prêt, vous pouvez redémarrer sur la partition recovery et sélectionner l'option wipe data/factory reset.
Une fois la machine réinitialisée, sélectionnez apply any zip from sd. Là s'affiche la liste des archives .zip présentes à la racine de la carte. Sélectionnez la ModAco que vous venez de télécharger. Après confirmation (bouton home), l'opération commence et va prendre un certain temps. Une fois la copie des données terminée, vous pouvez redémarrer sélectionner dans le menu le redémarrage de l'appareil (reboot system now).
Après un temps de démarrage, vous devez arriver sur votre nouvelle ROM. Comme elle est visuellement identique à celle d'origine, il faut aller jeter un oeil aux applications pour s'en convaincre
.
Comme vous l'avez vu, la personnalisation de l'HTC Hero n'est pas ce que l'on pourrait appeler "une opération de spécialiste". Elle n'est certes pas sans risque mais reste malgré tout très abordable. Après, tout ceci n'est qu'un point de départ pour commencer à jouer plus sérieusement avec les entrailles de la bête. Et c'est au fond cela qui me plaît le plus avec cette machine, avec un iPhone, j'aurais été bien trop frustré
Fantastique, je garde ça sous le coude, je comptais justement investir dans un HTC dans quelques mois.
D'ailleurs, quelqu'un sait-il si cette manip est la même pour le HTC Magic ?
Pour le magic je ne pas pas mais logiquement oui vu que le mode recovery custom est d'origine cyanogen et qu'il a été patché pour le hero. Tu devrais trouver l'info rapidement.
Je garde en favori cette page pour quand j'aurais un android (si j'en ai un).
Par contre, mauvaise nouvelle : http://www.h-online.com/open/Google-wants-to-ban-customised-Android-ROMs...
Oui j'avais mis un lien sur cette news dans l'article (chapitre rom, mais un peu perdu dans mon bla bla
. Ceci étant dit, ce que reproche Google c'est l'inclusion d'aplications close-source ce qui n'est pas dénué de sens. Même la ROM modaco risque de se faire taper dessus par HTC vu qu'elle inclue HTC Sense qui n'est (je pense) pas open source.
De toute façon, au vue de la licence d'Android, ils ne peuvent pas légalement interdire la création de ROM vanilla sur la base du dépôt d'android. J'imagine donc qu'un contournement logique sera l'extraction de la ROM d'origine, le patch de celle-ci et la réintégration. En somme si google persiste, les ROM custom ne seront plus aussi clef en main mais resteront possible à créer. Ce n'est qu'une question de respect des droits de chacun.
Il y a longtemps que je n'avais pas laissé un commentaire et sur un sujet qui tombe bien.
En effet pour mon anniversaire j'ai la chance d'avoir pour cadeau un téléphone avec android ,le HTC Hero. Malheureusement il n'est pas encore disponible en magasin et ce n'est pas faute d'avoir essayer. Comme j'ai un peu creuse la question, Je mets 3 liens intéressants sur android et le HTC Hero.
http://www.htchero.fr/
http://www.blog-gphone.fr/
http://www.frandroid.com/
Ah J'oubliais, un excellent article, comme d'habitude.
Comment passé le HTC de la version 1.5 à la version 1.6 qui est une "grosse" version dont le système de mise à jour ne fonctionne que pour windaub ?
J'ai acheté le mien à Pixmania, il est arrivé le lendemain...
Arf, la première chose que je vois sur le premier lien est le test de l'invisible shield. J'ai essayé ce truc plein de confiance et c'est une vraie cata. Aucune notice déjà, donc "démerdes-toi" pour comprendre intuitivement la meilleur manière de poser ce truc. Je n'ai par exemple pas trouvé le moyen de le positionner sans y coller les doigts et comme il n'y a pas, comme beaucoup d'autres filtres, de double feuilles, c'est "empreintes digitables garanties". Ensuite une fois posé, j'ai eu beau faire, il y avait toujours des espèces de variations d'adhérence (pas des bulles). Bref, j'avais l'impression que mon HTC était engoncé dans un durex... Je dois pas être doué mais je vais plutôt m'équiper d'une coque en gel.
De quoi parles-tu ? D'android 1.6 ? Si c'est bien cela, il n'y a pas à ma connaissance de ROM android Donut (il y a une ROM custom de chez cyanogen, mais c'est pour le magic pour l'instant).
Si tu parles de la mise à jour standard d'HTC (2.73 il me semble), effectivement il faut un windows. Ceci dit je n'ai pas essayé cela sous Wine n'étant pas certain que ce dernier prenne en charge l'USB.
Petite astuce pour les captures d'écran d'Android un exécutable est présent dans le SDK (rèp tools) qui s'appelle : ddms. Il permet de prendre des capture d'ecran (Device > Screen capture ou Ctr-S) de son téléphone dans presque tous les moments de boot ou de mise à jour de rom.
Enjoy
Merci beaucoup ! J'ai changé les copies d'écran, c'est beaucoup mieux ainsi
Bonjour Ulhume,
Je ne suis pas un grand fana de téléphonie mais ton article pourrait en faire saliver plus d'un
Peux tu nous en dire plus sur l'appareil en utilisation quotidienne, en est tu vraiment satisfait ? son autonomie est-elle suffisante car apparement elle ne dépasserai pas la journée en utilisation "normale" ? fluidité des vidéos ? son et reception correcte ? suspend ? et pourquoi pas installation d'un autre système qu'android est-il envisageable ?
Merci
Dab
Bah moi non plus je ne suis pas fana de téléphone, mais je suis un adorateur de ce qui peut me simplifier la vie.
En revanche dans les trucs moins cools :
@Ulhume :
Salut,
Pour la désinstallation (point négatif que tu sites) j'utilise Apps Organizer. L'appli te permet de gérer tes libellés mais également en faisant un long touch sur l'appli, un menu s'ouvre te proposant de la désinstaller. C'est la première appli que j'ai cherché.
Tchao
Ah ça je prend !!! merci beaucoup pour le tuyau.
Je te reconnais bien là, pour une réponse c'est une réponse

Comme tu le souligne, le coté Big Brother Google me gène un peu mais pour le reste ça fait baver. Parait que la chose tourne aussi sous Freerunner, par contre je ne pense pas que ce soit encore fontionnel
L'abscence du capteur de proximité bien pratique pour que le téléphone détecte si tu l'as collé sur la jour où si tu regardes. Du coup, l'écran passe en veille pendant que tu téléphones et si tu veux chercher un truc en continuant la conversation, c'est point pratique (j'ai trouvé une appli qui permet de le reveiller en le secouant Wink.
@Ulhume : serait il possible que tu donnes le nom de cette application ? merci bien
Pas de problème, il s'agit de "Shake Awake" (sur Market)
merci ulhume
Par ailleurs, quelqu'un aurait tester ce tuto pour être root en 2.73 afin d'avoir des avis ?
Tu veux dire la dernière MAJ d'HTC ? C'est de la que je suis parti pour ce tuto.
ouep, c'est bien ça. Effectivement ça fonctionne (le tethering fonctionne à la perfection aussi <3)
Arf, content de l'apprendre, c'est vrai qu'avec FreeWIFI, je n'ai jamais trop eu à me poser la question remarque
Après avoir suivis scrupuleusement le tuto, après avoir redemarrer en mode recovery, j'ai ce message en bas "E: Can't open /cache/recovery/command"
Et dans le menu, j'ai le choix entre reboot le system, apply update.zip et wipe data...
Je n'ai vu aucunement mention du mot cyanogen lors de l'update du chargement...
De plus, ya une sale icône en fond avec un point d'exclamation et le telephone à côté
Voici un screen fait à la vavite
par ailleurs, ça ne gène en rien le fonctionnement du HERO à part que je ne peux pas le root
http://img395.imageshack.us/img395/2781/20091012193822638.jpg voici le screen vu que la génération a foirée
Autant pour moi, tout est fonctionnel, je me suis planté dans un symbole
tu peux del mes floods.... 
Pas la peine, ça peut servir à d'autres, tu as fini par y arriver donc ?
oui, enfin j'ai fais la manip plusieurs fois pour le transfert + chmod, car quand je le lançais au début via abd shell su, ça m'afficher un permission denied (après les manips biensûr), et au bout de 2-3 fois, ça à finit par fonctionner, je commence à me demander si ya pas eu un soucis de synchronisation.... (de win seven)
Parcontre juste une remarque : attention à ne pas désactiver le deboggage USB lorsque vous utilisez une appli qui nécessite les droits root sinon superuser va tout simplement planter et votre appli va attendre dans le vent...
C'est bon à savoir en effet, je ne l'ai jamais désactivé car je suis devenu accroc à adb
Bonjour à tous!
Tout d'abord, merci à Ulhume pour ce super article qui m'a permis de me lancer dans la personnalisation de Hero!!
Sinon une petite question sur la commande sync.... comment elle marche?
Ensuite un petit lien pour une image recovery bien sympa: http://forum.xda-developers.com/showthread.php?t=561124
Merci!!
Bonjour,
L'image en question part du prérequis que tu utilises Linux (comme 99.9% des articles de ce site). Ensuite, il suffit simplement de taper "sync" dans une console. Nul besoin d'être root pour cela. Cela va simplement stoquer toutes données dans le cache d'écriture sur les médias physiques et ne rendre la main que lorsque cette opération est réalisée.
Effectivement sympa cette recovery
Au passage, la version 2.6 de la rom modako est sortie.
Merci pour la rapidité de la réponse!
Dernière question une fois la commande sync excutée, je suppose que celle si est valable durant toute la durée de l'utilisation de la console ouverte?
Juste une petite remarque, j'ai eu un petit soucis avec flashrec qui ne n'a pas marché du premier coup pour le backup de la recovery.
Donc pour la recovery que j'ai donnée j'utilise adb ...
Non, la commande vide les caches à l'exécution. Il faut donc la lancer à chaque fois que l'on écrit quelque chose. Ceci dit, il doit y avoir moyen de modifier le mode de montage pour passer le média en mode "sync" mais je n'ai plus la manip en tête.
Ok je comprends mieux, on copie la ROM avec le bon vieux cp puis une fois le cp terminé, on lance sync pour être sûr que rien n'est bloqué en cache!
Ok merci.
j'ai rencontré les problèmes suivants pour monter la partition system :
=> les répertoires "app" et "bin" n'étaient pas présents dans le répertoire "system" (est-ce normal ??)
comme montré ci-dessous:
C:\Android\android-sdk-windows-1.5_r3\tools>adb shell
/ # ls
ls
cache etc lib sbin
data init logo.rle sdcard
default.prop init.goldfish.rc proc sys
default.prop~ init.hero.rc res system
dev init.rc root tmp
/ # cd system
cd system
/system # ls
ls
lost+found recovery
=> J'ai donc créé ces deux répertoires en faisant :
/system # mkdir bin
mkdir bin
/system # mkdir app
mkdir app
/system # ls
ls
app bin lost+found recovery
/system # exit
exit
=> après quoi les commandes "adb push su /system/bin/" et "adb push Superuser.apk /system/app/"
ont bien fonctionné:
C:\Android\android-sdk-windows-1.5_r3\tools>adb push su /system/bin/
721 KB/s (34612 bytes in 0.046s)
C:\Android\android-sdk-windows-1.5_r3\tools>adb push Superuser.apk /system/app/
530 KB/s (16967 bytes in 0.031s)
ainsi que "adb shell chmod 4755 /system/bin/su"
mais ensuite lorsque j'ai essayé de "Tapez la commande su et validez. "
=> access denied
=> "Sur l'écran du téléphone devrait apparaître une demande de confirmation du passage à root. "
rien donc ... ???
Qlq'un a une idée du problème éventuel ???
Merci.
Il y a peut être une erreur dans ce tutoriel car chez moi la partition system se trouve dans /dev/block/mtdblock3 et non /dev/block/mtdblock4 comme indiqué par Ulhume.
Ce n'est en effet pas normal de ne pas avoir les folder /system/bin et /system/app après le montage. Sur mon htc /dev/block/mtdblock4 correspond au dossier /cache .
/dev/block/mtdblock3 on /system type yaffs2 (ro)
/dev/block/mtdblock5 on /data type yaffs2 (rw,nosuid,nodev)
/dev/block/mtdblock4 on /cache type yaffs2 (rw,nosuid,nodev)
utlise donc plutot la commande suivante :
Bonjour Ulhume.
Je n'ai pas du tout envie de troller mais je me pose plusieurs questions.
1/ Quels sont les avantages d'android face a Blackberry OS, Windows mobile, OS X mobile ou encore Symbian OS qui est Open Source depuis le 21 octobre 2009 ?
2/ Si ca n'a pas évolué depuis, Android n'est ni libre ni open-source. Pourquoi donc autant de frénaisie autour d'Android. Open Moko avait l'air plus prometteur.
Deux petit liens que j'ai bookmaké a l'époque:
http://robilad.livejournal.com/22312.html
http://informations-et-technologies.2037.org/viewtopic.php?p=75688#p75688 (a propos du SDK de Android)
Voila.
Pour moi le plus gros avantage d'Android est avant tout son adoption. Il ne se passe en effet pas deux jours sans qu'une nouvelle annonce ne soit faite par tel ou tel constructeur (Acer, Motorola, etc.). Cela permet d'avoir des machines plus performantes que l'iPhone (ex. Résolution de l'APN d'un hero, ou encore les specs du futur HTC Dragon), mais surtout rend la plate-forme très vivante et amène au second avantage, le nombre d'applications disponibles. On en est déjà à 10000 pour Android à comparer aux 60000 de l'iphone (je suis plus sur du chiffre) et au 250 et des brouettes de Palm... Et sans applications, un smartphone n'est pas grand chose d'autre qu'une gameboy sans cartouche de jeux...
Ensuite, techniquement, Android est un peu mieux gaulé qu'un OSX Mobile avec en gros point la prise en charge du multitache (ce qui est aussi le cas de Symbian), ce qui m'amène à un autre point important pour moi, le fait qu'il tourne sur un kernel Linux. Philosophiquement, cela me plaît bien.
Enfin, toujours me concernant, ce qui m'intéresse beaucoup dans un avenir proche, c'est sa nativité java (même si la JVM est ici totalement différente de celle de sun). Je peux aussi développer des applications pour Android sous Linux sans problème, ce qui n'est pas le cas des autres.
Maintenant d'un point de vue plus "subjectif", lorsque tu cherches un smartphone qui fonctionne intégralement déjà je disqualifie Symbian OS (trop eu de problèmes avec cet OS, genre le truc qui plante lorsque tu décroches...). Je ne peux pas souffrir Windows, et c'est pas mieux en version mobile. Je trouve l'iPhone moche, tout le monde en a un, ça me fatigue. Les Blackberries m'agressent l'oeil et je n'aime pas bien l'idée que mes données passant par des tuyaux que je ne maîtrise pas. Du coup, si je suis honnête, Android est pour moi un choix par défaut conforté par l'arrivée du Hero que je trouve agréable. Pour faire simple, il est esthétique (avis très personnel), il est rapide, j'ai trouvé toutes les applications que je désirais, il ne plante pas et me simplifie la vie.
Pour OpenMoko, c'est vaste sujet... "Prometteur" est clairement l'expression qui lui convient le mieux, mais lorsque tu as 20 ans, être "prometteur", c'est flatteur. A 30 ans, ça devient malsain... Dab qui intervient souvent ici a testé cela "en vrai", et de ce que j'ai pu en juger de manière indirecte, le "prometteur" n'est ici pas suffisant pour qui le téléphone est avant tout un outil de travail.
Maintenant pour ce qui est des licences, le kernel est bien évidement libre et OpenSource, mais en effet, ce n'est pas le cas du SDK. Mais si je m'obligeais à utiliser une plateforme libre pour ce type de périphérique, entre Symbian et openmoko, je préfère sincèrement... rien du tout. Le libre c'est bien, mais il ne faut pas que cela devienne non plus une religion.
Le Sdk s'intègre parfaitement a mon environnement Linux+Eclipse (64 bits), ce fut une très bonne surprise ! Développer une appli sous Androïd s'avère être un jeu d'enfant une fois qu'on a acquis les principes du GUI plus quelques subtilités de Design pour pallier à l'absence de certaines classes fournies par la JVM de Sun. Le SDK reste confortable est bien documenté avec une pléthore de code source de démos touchant aux fonctions du téléphone les plus bas niveau.
En tant que développeur Java je suis vraiment satisfait, et en tant que possesseur d'un HTC hero je le suis encore plus et je ne me vois pas troquer Android pour du OpenMoko d'autant plus qu'Android ca evolue très vite, Mercredi la version 2.0 est révélée par Google et le jour même HTC annonce le portage prioritaire du 2.0 sur le HTC hero ! Tout ce beau monde qui fourmille autour de mon smartphone, ça me motive d'autant
Merci pour le tuto il fonctionne à merveille (je viens de le faire à l'instant avec un HTC Hero de chez Orange.
Bonne continuation !
Pour information, l'étape avec FlashRec ne fonctionne pas toujours aussi facilement, certains firmwares dits "patchés" ne pourront pas effectuer l'étape de backup, qui échouera systématiquement sur "could not run command", ce qui a pour effet secondaire de rendre le bouton "flash recovery" inactif.
Il est cependant possible de ré-activer ce bouton, en cliquant à droite (à côté) du bouton "backup", une astérisque apparait alors, et le bouton "flash recovery" se réactive.
Le flash ensuite, lui, fonctionne correctement.
J'ai du trouver cette astuce en galérant pas mal, et je pense qu'il serait bon de l'ajouter aux divers tutos
avec évidemment un gros warning indiquant que si on flashe de cette manière, on n'a pas de backup du recovery !
Bonjour,
j'ai bien trouvé l'asterisque mais le bouton "flash recovery" ne ré-apparaît pas pour autant et finalement le flash ne fonctionne toujours pas...
Merci quand même pour l'info.
Bonjour,
j'ai lu attentivement le tuto pour accéder au mode recovery afin de mettre à jour la rom radio de mon Hero. J'ai bien suivi toutes les étapes jusqu'à ce moment:
"
Pour l'heure nous allons passer au flashage de la nouvelle image en utilisant la zone de saisie et en tapant /sdcard/cm-hero-recovery.img. Attention à la prédiction du clavier qui peut vous rajouter des accents, ce qui se traduirait par le texte Invalid Recovery Image dans le premier bouton. Si vous avez correctement tapé, vous devez avoir dans ce bouton le texte Flash Custom Recovery Image. Si c'est le cas, cliquez dessus. Après un court moment l'image est flashée et il ne nous reste plus qu'à découvrir le fameux mode Recovery.
"
Lorsque que j'effectue le flashage, rien ne correspond au passage en gras: pas de texte "Flash custom recovery" dans le premier bouton... De plus, quand je tente quand même d'allumer le Hero en mode recovery, un panneau danger + telephone apparait à l'écran et le seul moyen de le redémarrer est d'enlever la batterie
A part ça, le téléphone semble réagir normalement dans toutes les utilisations.
Y a-t-il une autre solution possible?
Par avance merci.
Bonjour a tous
Moi j'ai un probleme, quand je désire faire un backup ou un flash ilmemettoujours backupFAILED ou flash FAILED.
J'ai essayé la version de flashrec 909 et815mais rien n'y fait....
QUe me conseillez vous ?
Merci
Poster un nouveau commentaire