2011-09-09 1 views
6

Je construis un outil de test/analyse qui nécessite l'instrumentation des classes de framework Android. Dans cet outil, les classes doivent être instrumentées pour trouver l'appelant d'une méthode (c'est-à-dire, la signature de méthode) qui est en cours d'exécution, et en fonction de l'appelant, un traitement est effectué. Ma question est, quelle méthode je devrais utiliser pour déterminer l'appelant?Dans Android, comment puis-je trouver l'appelant d'une méthode de manière efficace?

Je sais qu'une approche consiste à utiliser java.lang.Throwable et la méthode getStackTrace. Cependant, ce n'est pas efficace. Existe-t-il d'autres API (publiques ou cachées) (similaires à sun.reflect.Reflection.getCallerClass du standard JDK) pour la plate-forme Android qui peut être utilisée?

Répondre

Questions connexes