Gibt es eine Möglichkeit, mit Flash (CS3 + AS3) festzustellen, ob das veröffentlichte SWF in einem Debug-Player oder im Debug-Modus von Flash ausgeführt wird?
Ich bin mir bewusst, dass Flex die Möglichkeit bietet, verschiedene Build-Ziele einzurichten (release / debug) und dass Sie so etwas wie CONFIG::debug
für #ifdef
style Code-Einfügung zur Kompilierzeit verwenden können.
Ich stelle mir etwas wie System.isDebug()
vor, kann aber nichts finden. Ich möchte das verwenden, weil es in meiner App Debug-Funktionen gibt, die ich definitiv in einer Produktionsumgebung nicht verfügbar sein möchte.
Sehen Sie sich diese Klasse an Ссылка
Diese Klasse enthält zwei relevante (und unterschiedliche) Informationen:
Der Capabilities.isDebugger beantwortet nur die zweite Frage - ist der Benutzer, der den Flash Debug-Player ausführt. In Ihrem Fall möchten Sie, um Teile Ihrer Anwendung in einem Debug-Build zu portieren, die Build-Prüfung -debug (und dann -debug-Builds nicht in die Produktion liefern).
Beachten Sie jedoch, dass diese beiden Prüfungen Laufzeitprüfungen sind. Die Verwendung von bedingter Kompilierung (auch bekannt als CONFIG :: debug) um Ihren Debug-Code herum ist immer noch eine gute Idee, da dadurch sichergestellt wird, dass möglicherweise sensibler Debug-Code NICHT in der endgültigen SWF-Datei bereitgestellt wird und so klein und sicher wie möglich ist.
Ich repliziere den referenzierten Code hier, falls der Bloglink jemals untergeht:
%Vor%Tags und Links flash debugging actionscript-3