Ich versuche, AspectJ in Android Studio zu konfigurieren .
Aber nach allem Versuch und Irrtum funktioniert es nicht! Überraschenderweise kann ich es mit Eclipse Kepler Version arbeiten lassen
Die Schritte, die ich für Android Studio gefolgt
Android
Projekt AspectJ
im Plugin Abschnitt
compile 'org.aspectj:aspectjrt:1.8.1'
zum build.gradle (Modul: app) Analytics_onBackPressed.aj
für Zurück-Taste drücken Erkennung
Analytics_OnClick.aj
für die Erkennung von Klickereignissen
Analytics_onCreate.aj
für Komponenten oncreate event detection
*.aj
-Klassen intern aufrufen Meine Frage ist, was erforderlich ist, damit AspectJ mit Android Studio funktioniert
Schritte in Eclipse gefolgt und AspectJ funktioniert
Eclipse
Kepler-Version AspectJ Development Tools (Required)
. Analytics_onBackPressed.aj
für Zurück-Taste drücken Erkennung
Analytics_OnClick.aj
für die Erkennung von Klickereignissen
Analytics_onCreate.aj
für Komponenten oncreate event detection
Verwendete Umgebung
Android Studio: 2.1.2
JRE: 1.8.0
Windows 7 Enterprise
Jede Hilfe wird sehr geschätzt!
EDIT: 1, Von der Ausgabe ist immer noch AspectJ nicht richtig konfiguriert
Gemäß diesem Link habe ich eine JAR-Datei aus Eclipse erstellt, einschließlich *.aj
-Dateien und der entsprechenden Abhängigkeit. % Co_de% wurde ausgeschlossen, während AndroidManifest.xml
erstellt und jar file
Erstelltes Projekt in Android Studio. Diese * .jar-Datei wurde in die libs-Datei gestellt. %Code%. Ich habe AspectJ aktiviert, wie unten gezeigt winkend
Jetzt wurden die Eigenschaften für AspectJ durchsucht und aktiviert
Wenn ich nun das Projekt ausführe, sollte ich Protokolle erstellen, die ich in jar
files eingefügt habe, die im Plugin sind. Leider werden diese Protokolle nicht in Android Studio-Protokollen gedruckt.
Formular, das ich noch abschließe, AspectJ ist in diesem Projekt nicht aktiviert ODER es gibt einen Konfigurationsfehler
Disclosure: Ich bin Autor des inoffiziellen AspectJ weaver-Plugins .
Wie in der AspectJ weaver-Plugin-Dokumentation erwähnt, unterstützt das Plug-in das Kompilieren von% nicht. co_de% Dateien.
Um dieses Plugin zu verwenden, haben Sie zwei Möglichkeiten:
.aj
zu Anmerkungsstil . .aj
-Dateien außerhalb der IDE (IntelliJ Community / Android Studio), zum Beispiel mit Maven / Gradle / Ant, und packen Sie sie in ein .aj
. Fügen Sie diese .jar
als Abhängigkeit in Ihr Projekt ein und klicken Sie auf die Schaltfläche Nach Aspekten suchen ... , wie in der Dokumentation beschrieben. Ich hatte verschiedene Erfolge beim Versuch, AspectJ in Android Studio arbeiten zu lassen. Dieser Link hat mir geholfen, einen Teil des Weges dorthin zu gehen (nimmt Gradle Build-Setup für Ihr Projekt an). Ссылка
Unter Verwendung des benutzerdefinierten Codeblocks in der build.gradle
-Datei konnte ich mithilfe von Anmerkungen in .java
files Aspekte ermitteln, die in meinem Projekt korrekt kompiliert und gewebt wurden. Die gleiche Methode funktionierte jedoch nicht, wenn ich native Aspekte mit .aj
files definierte. Ich hoffe es hilft.
IntelliJ hat keine Tooling-Unterstützung für AspectJ und der Annotation Style AspectJ kann mit Android Studio arbeiten. Behandeln Sie den Aspekt-Code einfach als Java-Code.
Für Details lesen Sie dieses Problem aspectj für Android Studio - wo ist das AJDT-Plugin
>Sie können auch das Gradle-Plugin aspectjx verwenden, das den Kotlin-Code weben kann und Demo ist hier
Tags und Links android android-studio aspectj aspectj-maven-plugin