Question

Y at-il un moyen simple de méthodes d'interception en java. Je dois ajouter une annotation aux méthodes nécessaires afin qu'un morceau de logique est appelée avant de passer par la méthode.

public void verifyActivity() {
   // Asset if you are on a wrong page
}

@VerifyActivity
public void testLogin() {
   // Login for my automate test
}

@VerifyActivity
public void testSomethingElse() {
   // Test some other UI Automation stuff
}

EDIT:

La bibliothèque Guice recommandée pour les applications Android ne contient pas AOP. Est-il possible d'y parvenir en utilisant la réflexion sans ajouter de bibliothèques?

Était-ce utile?

La solution

Guice fournit la manière facile de mettre en œuvre des annotations. Check this out.

http://code.google.com/p/google-guice/ wiki / AOP

http://code.google.com/p/google-guice/

Autres conseils

sid Malani dit Google Guice est grand pour cela. En général, vous voulez lire sur ... Il y a une belle outil appelé JMangler qui peuvent être utiles aussi bien

Vous pouvez utiliser la réflexion si vous avez codé pour les interfaces à travers Dynamic procurations proxies dynamiques.

Je doute que cela peut se faire bien sans libs 3ème partie.

Il y a une bibliothèque appelée cglib, qui est capable de telles choses.

Fondamentalement, il va créer une sous-classe de la classe interceptées lors de l'exécution. Vous serez en mesure de méthodes « override » en mettant en œuvre un InvocationHandler, qui agira comme mandataire lorsque l'une des méthodes de la superclasse appelée.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top