2012-03-27 14 views
7

Ich bin auf der Suche nach der schnellsten und effizientesten Möglichkeit, meine Java-Anwendung für BlackBerry zu debuggen.effizienteste Möglichkeit, auf Blackberry-Gerät zu debuggen?

Ich habe bemerkt, dass es ewig dauert, nur um den Debugger an das Gerät anzuschließen, mit einem Torch 9800 in meinem Fall. Muss ich es jedes Mal anhängen, wenn ich meinen Code ändere, oder gibt es einen besseren Weg?

Ich bemerkte auch, dass in der Konsole scheint das Gerät eine Menge Sachen zu drucken, die mir nicht wirklich wichtig ist. Das alles zu durchschauen kann wirklich ein Schmerz sein. Gibt es eine Möglichkeit, nur relevante Inhalte für meine Anwendung in der Konsole zu sehen, speziell nur die Dinge, die ich selbst darauf drucke?

+2

Nun, ich entwickle BB-Anwendungen für 1 Jahr, aber ich habe nichts gefunden, das das Debuggen einfacher macht. –

Antwort

8
  1. Eclipse-Debugger und Profiler, in den meisten Fällen - die beste Lösung, aber in einigen Fällen hilft es nicht, um herauszufinden, was das Problem Quelle ist.

  2. Schreiben in das interne Geräteprotokoll über die EventLogger-Klasse. Als eine Option, wenn eine große Menge an Daten vorhanden ist - externe Textdatei, die sich auf der Geräte-Medienkarte befindet (nicht internes Dateisystem).

  3. Verwenden des Konsolenausgabefensters. Leider gibt es keine Möglichkeit, einen Filter auf die Konsolenausgabe anzuwenden, aber es gibt eine Möglichkeit, die Arbeit mit der Konsole zu vereinfachen. Fügen Sie eine Sequenz von Symbolen zu Beginn der Debug-Meldungen hinzu, um Ihre Debug-Ausdrucke von den Systemausdrucken zu unterscheiden. Zum Beispiel

    System.out.println ("!!!!!!!!!!!!!!!!!!!!!! myVar value =" + myVar);

Oder auf diese Weise:

System.out.println("#############################################"); 
System.out.println("############# object1: " + object1); 
System.out.println("############# object2: " + object2); 
System.out.println("############# object3: " + object3); 
System.out.println("#############################################"); 

Wenn es eine große Menge von Debug-Daten ist nur in der Konsole alle Konsolen Text in einen Texteditor kopieren, wie Notepad++ und dort mit ihm arbeiten.

+1

Danke. Ich habe bereits angefangen, eine Reihe von Symbolen vor meinen Ausdrucken zu platzieren. Es hilft sicher, aber es ist immer noch schrecklich, dass wir nicht filtern können. Ich mache auch Android-Entwicklung mit Eclipse, aber ich habe diese Option, sehr nützlich. – PaulG

+0

Über Punkt # 3 verwende ich das gleiche auch.Es ist praktisch, das gesamte Protokoll zu durchsuchen und nur Ihre Ausgabe zu erhalten (wenn Sie eine Linux-VM zur Hand haben). Leider werden Systemmeldungen manchmal mit eigenen Ausgabeleitungen gemischt, meistens wenn diese lang sind. –

5

Ja, Debugger auf den meisten modernen Simulatoren dauert ewig zu befestigen. Je neuer der Simulator, desto mehr Zeit wird benötigt. Was ich normalerweise tue ist:

  • Versuchen Sie, das schwere Debugging im älteren Simulator möglich zu machen (oft 83xx).
  • Wenn nicht möglich, starten Sie den Simulator und schließen Sie ihn nicht. Diese hot swap Funktionalität ist nur für 5.0 aufwärts im Eclipse BlackBerry Plugin verfügbar.
  • Dank dem Hot-Swap können Sie den Simulator starten (mit Laufkonfiguration) und dann die Debug-Taste drücken. Es ist viel schneller als das Debuggen von Anfang an.
  • Wenn Sie mit älteren Versionen von Eclipse-Plugin arbeiten, wo Hot-Swap nicht verfügbar ist, oder Codierung für OS < 5.0, starten Sie Simulator von Eclipse mit run, dann öffnen RIM JDE (ja, diese altmodische RIM-made Java IDE) und von dort Debugger anhängen (Menü Debuggen -> Anhängen an -> Simulator). Sie können nicht in Haltepunkten anhalten, aber Sie können die Textausgabe sehen. JDE kommt nicht mit Eclipse-Plugin, Sie sollten download und installieren Sie es unabhängig.
+1

Danke für die Antwort, ich habe das Debuggen auf den Simulatoren aufgegeben und habe ausschließlich auf meinem Gerät (Torch 9800) debuggen. Ich finde die Simulatoren nicht "immer" realistisch. – PaulG

+0

Dann schlage ich vor, Sie verwenden JDE, um an ein echtes Gerät anzuhängen und die Ausgabe in Echtzeit zu sehen, anstatt das Ereignisprotokoll zu öffnen. Auf diese Weise können Sie 'System.out.println' sehen und nicht nur Einträge protokollieren. Alte Eclipse-Plugins erlaubt dies nur Debug zu schieben, aber neuere Plugin-Versionen installieren die Anwendung jedes Mal neu, also ist es langsamer als mit JDE. –

Verwandte Themen