1. Nimm jetzt an unserem 2. ADVENT-Gewinnspiel teil - Alle Informationen findest Du hier!

Automatisch Logging von Klassen/Methoden

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von mrdanger, 24.02.2010.

  1. mrdanger, 24.02.2010 #1
    mrdanger

    mrdanger Threadstarter Neuer Benutzer

    Beiträge:
    23
    Erhaltene Danke:
    0
    Registriert seit:
    12.02.2010
    Ich möchte mit meiner Software automatisch ausgewählte Klassen/Methodenaufrufe in der Software mitloggen. Hat jemand ne Abregung für mich? Suche da schon etwas länger nach einer Möglichkeit.

    Sven
     
  2. SirMArtin, 24.02.2010 #2
    SirMArtin

    SirMArtin freier Samsungsupporter

    Beiträge:
    113
    Erhaltene Danke:
    7
    Registriert seit:
    05.08.2009
    Aspektorientierte Programmierung könnte was für Dich sein.
     
  3. mrdanger, 24.02.2010 #3
    mrdanger

    mrdanger Threadstarter Neuer Benutzer

    Beiträge:
    23
    Erhaltene Danke:
    0
    Registriert seit:
    12.02.2010
    Stimmt wäre ne Möglichkeit. Müsste mich da aber erstmal reinarbeiten in das Themengebiet. Ich bin mir auch nicht sicher, ob das mit der Dalvik VM funktioniert.

    Andere Möglichkeit, aber erfordert doch ein Handangelegen beim Programmierer. Der deklariert die relevanten Methoden mit einem Annotationmarker, ich lese sie per Reflection aus und verarbeite sie entsprechend.
     
  4. SirMArtin, 24.02.2010 #4
    SirMArtin

    SirMArtin freier Samsungsupporter

    Beiträge:
    113
    Erhaltene Danke:
    7
    Registriert seit:
    05.08.2009
    Letztens habe ich gelernt, dass der Dalvik-Compile auf dem Java-Bytecode basiert. Es laufen also zwei Compile-Prozesse. Erst der nach Java-Bytecode und danach wird aus dem Java-Bytecode und den eingebundenen JARs und den Ressourcen ein Dalvic-Binary erzeugt. Da AOP auch auf dem Java-Bytecode basiert, sollte es hier keine Probleme geben.
    Ob man es "einfach" in den Eclipse-Workflow einbinden kann, kann ich nicht sagen. Aber es müsste halt einen weiteren Schritt geben: Java-Compile, AOP-Bytecode Enhancement und dann Dalvik Verpackung.

    Annotation und Reflection wäre auch möglich, wobei bei Reflection immer mit Performance-Einbußen zu rechnen ist.

    SirMArtin
     
  5. mrdanger, 26.02.2010 #5
    mrdanger

    mrdanger Threadstarter Neuer Benutzer

    Beiträge:
    23
    Erhaltene Danke:
    0
    Registriert seit:
    12.02.2010
    Bin auf der Suche nach einem Beispiel mit AOP/JAspect. Hat da jemand eins für mich?
     
  6. ko5tik, 26.02.2010 #6
    ko5tik

    ko5tik Android-Experte

    Beiträge:
    620
    Erhaltene Danke:
    40
    Registriert seit:
    14.10.2009
    Phone:
    HTC Hero
    So etwas gibt es bei Spring AOP, (sogar ohne Preprocessing) aber das Ganze ist etwas
    schwergewichtig für Android Platform.
     
  7. mrdanger, 26.02.2010 #7
    mrdanger

    mrdanger Threadstarter Neuer Benutzer

    Beiträge:
    23
    Erhaltene Danke:
    0
    Registriert seit:
    12.02.2010
    Eindeutig zu schwergewichtig. Schade, dachte es gibt ne leichtgewichtige Lösung. Nungut, muss ich auf diese Funktionalität verzichten.
     
  8. SirMArtin, 26.02.2010 #8
    SirMArtin

    SirMArtin freier Samsungsupporter

    Beiträge:
    113
    Erhaltene Danke:
    7
    Registriert seit:
    05.08.2009
    Deshalb ja auch MIT preprocessing. Dann ists nicht zu schwer, weil keine Frameworks zur Laufzeit benötigt werden.

    Ich habe vor Jahren mal mit AspectJ (damals war 1.2 noch beta) gearbeitet. Das ist aber schon nicht mehr wahr, daher hab ich auch kein Tutorial zur Hand. ;)
     
  9. ko5tik, 27.02.2010 #9
    ko5tik

    ko5tik Android-Experte

    Beiträge:
    620
    Erhaltene Danke:
    40
    Registriert seit:
    14.10.2009
    Phone:
    HTC Hero
    Die Funktionalität ist nicht so wichtig - mit logging kommst du auch weiter. Zur Zeit überlege
    gerade, picocontainer so weot abzuspecken das es auf Android funktionsfähig wird.
     

Diese Seite empfehlen