93 votes

Comment puis-je profil mon application Android ?

J’ai besoin de trouver où les goulets d’étranglement sont dans mon application Android.

Quels outils ou les techniques de profilage puis-je utiliser ?

37voto

cement Points 2123

Vous pouvez utiliser Traceview. Il est loin d’être idéal, mais il fonctionne. Cet article décrit comment l’utiliser.

18voto

Shahul3D Points 996

DDMS est le meilleur pour Android. Par défaut, il se fourni avec le plugin ADT.

Ce document par exemple détaillé devrait vous aider à faire face avec DDMS.


Pour mémoire, analyse, essayez Eclipse MAT

11voto

David Points 758

Ça dépend qu'est-ce que vous allez tester.

Dans le cas où vous développez des applications pour Android, vous devriez essayer le TimingLogger classe. Jetez un oeil à cet article décrivant l'utilisation de la TimingLogger classe d'aide.

Un très goot est l'outil JMeter et il y a un plugin pour Android .

si vous ne voulez pas utiliser des outils externes, mais d'une manière très standard, afin de mesurer le temps écoulé, vous devez utiliser le Système.nanoTime(). Vous ne devriez pas utiliser currentTimeMillis, car il mesure l'horloge murale ans, qu'aucune horloge de l'ordinateur est parfait (tous de temps en temps besoin d'être corrigé) il y a un processus qui s'exécute continuellement des problèmes de petites corrections de l'horloge système. Pour ne pas mentionner le saut de seconde correction.

Bien que currentTimeMillis est souvent utilisé, c'est toujours incorrecte, pour mesurer le temps écoulé et le calendrier. De toute façon, comme l'invocation prend un certain temps, ne vous attendez pas à correctement le temps très très petits intervalles. Mais cela ne devrait pas être un problème de travail avec Android.

Je vais vous montrer un exemple:

long startTime = System.nanoTime();

// run/call the method

long endTime = System.nanoTime();
long diff = lEndTime - lStartTime;
System.out.println("Elapsed milliseconds: " + difference/1000000);

Vous pourriez avoir un coup d'oeil à cette bibliothèque libre ainsi: http://jetm.void.fm/

0voto

Erhannis Points 1850

Un autre outil recommandé dans http://developer.android.com/training/articles/perf-tips.html est étrier : https://code.google.com/p/caliper/. (Je n’ai pas utilisé, donc je ne sais pas grand-chose.)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X