Mystère

Voici ma première application publiée sur l’android market. C’est une base d’énigmes à résoudre depuis votre téléphone rangé par difficultés.

Ce n’est pour le moment qu’une version de démo. Le plus important maintenant c’est d’étoffer la base d’énigmes.

GCC savoir si on est inclus par de l'ASM

Récemment j’ai travaillé sur un projet où j’avais un fichier h inclus par de l’asm ou du C. Je ne voulais pas que certaines partie du .h soit inclus uniquement dans le cas où l’on est dans pas dans le ASM. On peut faire cela très simplement avec le préprocesseur:

#ifndef __ASSEMBLER__
MON CODE
#endif  /*  __ASSEMBLER__ */

Voir ce que fait ld-linux.so

Si vous souhaitez savoir ce que fait ld-linux.so vous utiliser la variable d’environnement LD_DEBUG.

Vous pouvez la mettre à help pour connaitre toute les options possible.

Une option que que j’utilise est libs qui permet de voir où sont cherchés les différentes libs.

Android ne reconstruire qu'une partie du framework

Si vous souhaitez ne recompiler qu’une partie du framework android vous pouvez utiliser la commande mmm.

Par exemple pour ne recompiler que la calculatrice:

source build/envsetup.sh
mmm packages/apps/Calculator/

Savoir quelle DLL sont chargées par un programme

Il est parfois nécessaire de connaître la liste des DLL utilisés par un programme . Il existe plusieurs méthodes pour le savoir. Cette méthode à l’avantage de ne pas demander l’installation de logiciels extérieurs.

Il suffit de lancer cmd.exe.

On utilise ensuite la commande:

 tasklist 

Cette commande vous permet de lister les processus qui tournent actuellement. On peut ainsi repérer le nom du processus qui nous intéresse.

On va ensuite afficher la liste des Dlls liées au programme via cette commande:

 tasklist /m /fi "imagename eq PROGRAMME" 

L’option /m nous donne la liste des modules. L’option /fi permet de filtrer la sortie.

Par exemple pour Firefox:

 tasklist /m /fi "imagename eq firefox.exe" 

<179|center>

Changer de version de SDK android dans Eclipse

Généralement quand on débute avec android on commence à développer avec la dernière version du SDK. Malheureusement lorsque l’on veut publier son application on s’aperçoit que le marché est resté sur les anciennes versions.

Par exemple au jour d’aujourd’hui il y a encore 38% du marché sous android 1.5. Il ne faut donc pas négliger ces utilisateurs: http://developer.android.com/resources/dashboard/platform-versions.html

#Installer le SDK Via la commande android vous pouvez gérer les versions de SDK installé et installable.

<176|center> #Modification de la version dans eclipse Tout d’abord, il faut aller dans les propriétés du projet: <172|center>

Dans la section Android choisissez le SDK ciblé: <177|center>

Puis avec un clic droit sur le projet/Android Tools/Fix project properties: <172|center>

Cela corrige notamment le .jar du SDK qui sera chargé.

#Changer de version dans le manifest Pour que votre application soit toujours valide, il ne faut pas oublier de changer la version minimum de l’OS requise dans le fichier AndroidManifest.xml.

Par exemple pour Android 1.5:

   <uses-sdk android:minSdkVersion="3" />

#Retourner en 1.5 Si vous venez d’une version supérieure à la 1.5 lorsque vous allez repartir en arrière votre fichier R.java ne sera plus généré correctement cela est dû à la présence des dossiers:

  • res/drawable-hdpi
  • res/drawable-mdpi
  • res/drawable-ldpi

Ces dossiers sont apparus dans android 1.6. Pour que cela marche en 1.5 il ne vous faut que le dossier res/drawable.