Depuración con el introspector HTML de AIREL SDK de Adobe® AIR® incluye un archivo de JavaScript AIRIntrospector.js que se puede incluir en la aplicación para ayudar a depurar aplicaciones basadas en HTML. Introspector de AIREl introspector de aplicaciones HTML/JavaScript de Adobe AIR (denominado AIR HTML Introspector) ofrece funciones útiles para ayudar en el desarrollo y depuración de aplicaciones basadas en HTML:
Carga del código del introspector de AIREl código del introspector de AIR se incluye en un archivo de JavaScript, AIRIntrospector.js, incluido en el directorio frameworks del SDK de AIR. Para utilizar el introspector de AIR en la aplicación, copie AIRIntrospector.js en el directorio project de la aplicación y cargue el archivo mediante una etiqueta de script en el archivo HTML principal de la aplicación: <script type="text/javascript" src="AIRIntrospector.js"></script> Asimismo, incluya en archivo en todos los archivos HTML que se correspondan con diferentes ventanas nativas de la aplicación. Importante: incluya el archivo AIRIntrospector.js únicamente al desarrollar y depurar la aplicación. Elimínelo de la aplicación de AIR empaquetada que se distribuya.
El archivo AIRIntrospector.js define una clase, Console, a la que se puede acceder desde el código JavaScript, llamando a air.Introspector.Console. Nota: el código que utilice el introspector de AIR debe estar en el entorno limitado de seguridad de la aplicación (en un archivo del directorio de la aplicación).
Inspección de un objeto en la ficha Console (Consola)La clase Console define cinco métodos: log(), warn(), info(), error() y dump(). Los métodos log(), warn(), info(), and error() permiten enviar un objeto a la ficha Console (Consola). El método más básico es log(). El siguiente código envía un objeto simple, representado mediante la variable test, a la ficha Console (Consola): var test = "hello"; air.Introspector.Console.log(test); No obstante, resulta más útil enviar un objeto complejo a la ficha. Por ejemplo, la siguiente página HTML incluye un botón (btn1) que llama a una función que, a su vez, envía el propio objeto del botón a la ficha Console (Consola): <html> <head> <title>Source Viewer Sample</title> <script type="text/javascript" src="scripts/AIRIntrospector.js"></script> <script type="text/javascript"> function logBtn() { var button1 = document.getElementById("btn1"); air.Introspector.Console.log(button1); } </script> </head> <body> <p>Click to view the button object in the Console.</p> <input type="button" id="btn1" onclick="logBtn()" value="Log" /> </body> </html> Cuando se hace clic en el botón, la ficha Console (Consola) muestra el objeto btn1 y se puede expandir la vista de árbol del objeto para inspeccionar sus propiedades: Se puede editar una propiedad del objeto haciendo clic en la lista situada a la derecha del nombre de la propiedad y modificando el listado de texto. Los métodos info(), error() y warn() son similares al método log(). Sin embargo, cuando se llama a estos métodos, la consola muestra un icono al principio de la línea:
Los métodos log(), warn(), info() y error() envían una referencia sólo a un objeto real, por lo que las propiedades disponibles son las que se muestran en el momento de la visualización. Si desea serializar el objeto real, utilice el método dump(). El método cuenta con dos parámetros:
Al llamar al método dump() se serializa un objeto antes de enviarlo a la ficha Console (Consola), por lo que no se pueden editar las propiedades de los objetos. Por ejemplo, considérese el fragmento de código siguiente: var testObject = new Object(); testObject.foo = "foo"; testObject.bar = 234; air.Introspector.Console.dump(testObject); Cuando se ejecuta este código, la consola muestra el objeto testObject y sus propiedades, pero no se pueden editar los valores de las propiedades en la consola. Configuración del introspector de AIRLa consola se puede configurar definiendo las propiedades de la variable global AIRIntrospectorConfig. Por ejemplo, el siguiente código JavaScript configura el introspector de AIR para que se ajusten las columnas a 100 caracteres: var AIRIntrospectorConfig = new Object(); AIRIntrospectorConfig.wrapColumns = 100; Asegúrese de establecer las propiedades de la variable AIRIntrospectorConfig antes de cargar el archivo AIRIntrospector.js (mediante una etiqueta script). Existe ocho propiedades de la variable AIRIntrospectorConfig:
Interfaz del introspector de AIRPara abrir la ventana del introspector de AIR al depurar la aplicación, presione la tecla F12 o llame a uno de los métodos de la clase Console [consulte Inspección de un objeto en la ficha Console (Consola)]. Puede configurar la tecla directa para que sea una tecla distinta a F12; consulte Configuración del introspector de AIR. La ventana del introspector de AIR dispone de séis fichas: Console (Consola), HTML, DOM, Assets (Componentes), Source (Código fuente) y XHR, tal y como se muestra en la siguiente ilustración: Ficha Console (Consola)La ficha Console (Consola) muestra los valores de las propiedades transmitidas como parámetros a uno de los métodos de la clase air.Introspector.Console. Para obtener más información, consulte Inspección de un objeto en la ficha Console (Consola).
Ficha HTMLLa ficha HTML permite ver todo el DOM de HTML en una estructura de árbol. Haga clic en un elemento para ver sus propiedades en la parte derecha de la ficha. Haga clic en los iconos + y - para expandir y contraer un nodo en el árbol. Se puede editar cualquier atributo o elemento de texto en la ficha HTML y el valor editado se refleja en la aplicación. Haga clic en el botón Inspect (Inspeccionar) (situado a la izquierda de la lista de fichas de la ventana del introspector de AIR). Se puede hacer clic en cualquier elemento de la página HTML de la ventana principal y el objeto DOM asociado se muestra en la ficha HTML. Si la ventana principal está seleccionada, también se puede pulsar el método abreviado de teclado para activar y desactivar el botón Inspect (Inspeccionar). El método abreviado de teclado es F11 de forma predeterminada. Es posible configurar el método abrevado de teclado para sea una tecla distinta a F11; consulte Configuración del introspector de AIR. Haga clic en el botón Refresh Active Window (Actualizar ventana activa) (situado en la parte superior de la ventana del introspector de AIR) para actualizar los datos que se muestran en la ficha HTML. Presione Ctrl+F en Windows o Comando+F en Mac OS para buscar texto coincidente que se muestre en la ficha. (Las búsquedas no se realizan en los nodos de árbol que no estén visibles.) Ficha DOMLa ficha DOM muestra los objetos de ventana en una estructura de árbol. Se puede editar cualquier propiedad string y numeric y el valor editado se refleja en la aplicación. Haga clic en el botón Refresh Active Window (Actualizar ventana activa) (situado en la parte superior de la ventana del introspector de AIR) para actualizar los datos que se muestran en la ficha DOM. Presione Ctrl+F en Windows o Comando+F en Mac OS para buscar texto coincidente que se muestre en la ficha. (Las búsquedas no se realizan en los nodos de árbol que no estén visibles.) Ficha Assets (Componentes)La ficha Assets (Componentes) permite comprobar vínculos, imágenes, CSS y archivos de JavaScript cargados en la ventana nativa. Al expandir uno de estos nodos se muestra el contenido del archivo o la imagen real utilizada. Haga clic en el botón Refresh Active Window (Actualizar ventana activa) (situado en la parte superior de la ventana del introspector de AIR) para actualizar los datos que se muestran en la ficha Assets (Componentes). Presione Ctrl+F en Windows o Comando+F en Mac OS para buscar texto coincidente que se muestre en la ficha. (Las búsquedas no se realizan en los nodos de árbol que no estén visibles.) Ficha Source (Código fuente)La ficha Source (Código fuente) incluye tres secciones:
Haga clic en el botón Refresh Active Window (Actualizar ventana activa) (situado en la parte superior de la ventana del introspector de AIR) para actualizar los datos que se muestran en la ficha Source (Código fuente). Presione Ctrl+F en Windows o Comando+F en Mac OS para buscar texto coincidente que se muestre en la ficha. (Las búsquedas no se realizan en los nodos de árbol que no estén visibles.) Ficha XHRLa ficha XHR intercepta toda la comunicación XMLHttpRequest en la aplicación y registra la información. Esto permite ver las propiedades XMLHttpRequest, entre las que se incluyen responseText y responseXML (cuando están disponibles) en una vista de árbol. Presione Ctrl+F en Windows o Comando+F en Mac OS para buscar texto coincidente que se muestre en la ficha. (Las búsquedas no se realizan en los nodos de árbol que no estén visibles.) Utilización del introspector de AIR con contenido en un entorno limitado ajeno a la aplicaciónSe puede cargar contenido de un directorio de la aplicación en un iframe o frame que se asigne a un entorno limitado ajeno a la aplicación. (Consulte Seguridad HTML en Adobe AIR para desarrolladores de ActionScript o Seguridad HTML en Adobe AIR para desarrolladores de HTML). El introspector de AIR se puede utilizar con este contenido, pero se deben tener en cuenta las siguientes reglas:
|
|