Un usuario introduce información en un archivo SWF.
- Guía del usuario de Adobe Animate
- Introducción a Animate
- Animación
- Aspectos básicos de animaciones en Animate
- Cómo utilizar los fotogramas y fotogramas clave en Animate
- Animación fotograma a fotograma en Animate
- Cómo trabajar con la animación de interpolación clásica en Animate
- Herramienta Pincel
- Guía de movimiento
- Interpolación de movimiento y ActionScript 3.0
- Acerca de la animación de interpolación de movimiento
- Animaciones de interpolación de movimiento
- Creación de una animación de interpolación de movimiento
- Uso de fotogramas clave de propiedad
- Animación de la posición con una interpolación
- Edición de interpolaciones de movimiento con el editor de movimiento
- Edición del trazado de movimiento de una animación de interpolación
- Manipulación de las interpolaciones de movimiento
- Adición de aceleraciones personalizadas
- Creación y aplicación de ajustes preestablecidos de movimiento
- Configuración de grupos de interpolación de animación
- Uso de interpolaciones de movimiento guardadas como archivos XML
- Interpolaciones de movimiento e interpolaciones clásicas
- Interpolación de forma
- Uso de la animación de la herramienta Hueso en Animate
- Trabajar con el rigging de personajes en Animate
- Uso de las capas de máscara en Adobe Animate
- Uso de escenas en Animate
- Interactividad
- Creación de botones en Animate
- Conversión de proyectos de Animate a otros formatos de documento
- Creación y publicación de documentos de HTML5 Canvas en Animate
- Adición de interactividad con fragmentos de código en Animate
- Creación de componentes HTML5 personalizados
- Uso de componentes en HTML5 Canvas
- Creación de componentes personalizados: Ejemplos
- Fragmentos de código para componentes personalizados
- Prácticas recomendadas - Publicidad con Animate
- Autoría y publicación de realidad virtual
- Espacio de trabajo y flujo de trabajo
- Creación y administración de pinceles
- Uso de Google Fonts en documentos HTML5 Canvas
- Utilización de las Bibliotecas Creative Cloud y Adobe Animate
- Utilización del Escenario y el panel Herramientas en Animate
- Flujo de trabajo y espacio de trabajo de Animate
- Uso de las fuentes web en documentos de HTML5 Canvas
- Líneas de tiempo y ActionScript
- Trabajo con varias líneas de tiempo
- Configuración de preferencias
- Utilización de los paneles de edición de Animate
- Creación de capas de la línea de tiempo en Animate
- Exportación de animaciones para aplicaciones móviles y motores de juegos
- Desplazamiento y copia de objetos
- Plantillas
- Buscar y reemplazar en Animate
- Deshacer y rehacer en el panel Historial
- Métodos abreviados de teclado
- Uso de la Cronología en Animate
- Creación de extensiones HTML
- Opciones de optimización para Imágenes y archivos GIF animados
- Configuración de exportación de imágenes y archivos GIF
- Panel de Recursos en Animate
- Multimedia y vídeo
- Transformación y combinación de objetos gráficos en Animate
- Crear y trabajar con instancias de símbolo en Animate
- Calco de imagen
- Cómo utilizar el sonido en Adobe Animate
- Exportación de archivos SVG
- Creación de archivos de vídeo para su uso en Animate
- Cómo añadir un vídeo a Animate
- Dibujo y creación de objetos en Animate
- Remodelado de líneas y formas
- Trazos, rellenos y degradados en Animate CC
- Uso de Adobe Premiere Pro y After Effects
- Paneles de color en Animate CC
- Apertura de archivos de Flash CS6 con Animate
- Uso de texto clásico en Animate
- Colocación de ilustraciones en Animate
- Mapas de bits importados en Animate
- Gráficos 3D
- Trabajo con símbolos en Animate
- Dibujo de líneas y formas en Adobe Animate
- Uso de bibliotecas en Animate
- Exportación de sonidos
- Selección de objetos en Animate CC
- Trabajo con archivos AI de Illustrator en Animate
- Aplicación de modos de mezcla
- Organización de objetos
- Automatización de tareas con el menú Comandos
- Texto en varios idiomas
- Utilización de la cámara en Animate
- Filtros de gráficos
- Sonido y ActionScript
- Preferencias de dibujo
- Dibujo con la herramienta Pluma
- Plataformas
- Conversión de proyectos de Animate a otros formatos de documento
- Compatibilidad con plataformas personalizadas
- Creación y publicación de documentos de HTML5 Canvas en Animate
- Creación y publicación de un documento de WebGL
- Empaquetado de aplicaciones para AIR para iOS
- Publicación de aplicaciones de AIR for Android
- Publicación para Adobe AIR para escritorio
- Configuración de publicaciones de ActionScript
- Prácticas recomendadas - Organización de ActionScript en una aplicación
- Uso de ActionScript con Animate
- Accesibilidad en el espacio de trabajo de Animate
- Cómo escribir y gestionar scripts
- Activación de la compatibilidad con plataformas personalizadas
- Información general sobre compatibilidad con plataformas personalizadas
- Uso de plugins de compatibilidad con plataformas personalizadas
- Depuración de ActionScript 3.0
- Activación de la compatibilidad con plataformas personalizadas
- Exportación y publicación
- Exportación de archivos de Animate CC
- Publicación de OAM
- Exportación de archivos SVG
- Exportación de gráficos y vídeos con Animate
- Publicar documentos de AS3
- Exportación de animaciones para aplicaciones móviles y motores de juegos
- Exportación de sonidos
- Prácticas recomendadas - Sugerencias para crear contenido para dispositivos móviles
- Prácticas recomendadas - Convenciones de vídeo
- Prácticas recomendadas - Directrices de edición de aplicaciones SWF
- Prácticas recomendadas - Estructuración de archivos FLA
- Prácticas recomendadas de optimización de archivos FLA para Animate
- Configuración de publicaciones de ActionScript
- Especificación de configuración de publicación para Animate
- Exportación de archivos de proyector
- Exportar imágenes y archivos GIF animados
- Plantillas de publicación HTML
- Uso de Adobe Premiere Pro y After Effects
- Compartir y publicar animaciones rápidamente
- Solución de problemas
Directrices de aplicaciones SWF
La mejor forma de crear aplicaciones de Animate depende de la aplicación que se pretenda crear y de la tecnología empleada durante la creación de la aplicación.
Una aplicación en línea permite la influencia de un usuario en el sitio web al interactuar con él. Por ejemplo, la aplicación puede recopilar información del usuario (por ejemplo, un nombre de usuario y una contraseña para el registro), se puede añadir información al sitio (por ejemplo, en un foro) o el usuario puede interactuar en tiempo real con otros visitantes del sitio (por ejemplo, una sala de chat o un foro de discusión interactivo). Los resultados del servidor suelen mostrarse en el archivo SWF, según la interacción. Estos ejemplos son aplicaciones en las que se ven implicados los usuarios y los distintos tipos de interacción con el servidor. Un sitio web que no utilice información ni datos de los visitantes no se considera una aplicación (por ejemplo, un sitio de muestras, de animaciones de dibujos o con información estática). Las aplicaciones de Animate implican un proceso interactivo entre el usuario, una aplicación web y un servidor. El proceso básico se lleva a cabo del siguiente modo:
-
-
La información se convierte en datos.
-
Se aplica formato a los datos y se envían a un servidor web.
-
El servidor web recopila los datos y los envía a un servidor de aplicaciones (por ejemplo, ColdFusion, PHP o ASP).
-
Se procesan los datos y se envían de vuelta al servidor web.
-
El servidor web envía los resultados al archivo SWF.
-
El archivo SWF recibe los datos con formato.
-
El código ActionScript procesa los datos para que la aplicación pueda utilizarlos.
Al crear una aplicación, es preciso seleccionar un protocolo para la transferencia de datos. El protocolo advierte a la aplicación sobre el momento en que se envían o reciben datos, en qué formato se transfieren y cómo se gestionar la respuesta del servidor. Una vez recibidos los datos en el archivo SWF, se deben manipular y aplicarles formato. Si utiliza un protocolo, no deberá preocuparse por el posible formato inesperado de los datos. Cuando se transfieren datos con pares nombre/valor, es posible comprobar qué formato se aplica a los datos. Verifique que los datos tengan el formato correcto para no recibir datos con formato XML y que el archivo SWF sepa qué datos esperar para trabajar con ellos.
Recopilación de datos y aplicación de formato
Las aplicaciones dependen de la interacción del usuario con el archivo SWF. Con frecuencia, la introducción de datos en formularios depende del usuario. Animate permite introducir datos y aplicarles formato de muchas maneras en las aplicaciones de Animate. Esta flexibilidad existe, entre otros motivos, gracias a dos factores: la capacidad del usuario para controlar la animación y la creatividad en la interfaz, y la posibilidad de comprobar errores y llevar a cabo la validación con ActionScript.
Entre las ventajas que supone utilizar Animate para crear formularios que recopilen datos, se incluyen las siguientes:
Mayor control del diseño.
Menor necesidad (o ausencia de necesidad) de actualizar las páginas.
Reutilización de los activos comunes.
Para guardar la información recopilada del usuario, guárdela en un objeto compartido del equipo del usuario. Los objetos compartidos permiten almacenar datos en el equipo del usuario (método similar al uso de cookies). Para obtener más información sobre los objetos compartidos, consulte la clase sharedObject en la Referencia del lenguaje de ActionScript 2.0 y Referencia de componentes y lenguaje de ActionScript 3.0.
Envío y procesamiento de datos
Normalmente, se debe procesar la información antes de enviarla al servidor para que tenga un formato que el servidor pueda comprender. Cuando el servidor recibe los datos, se pueden manipular de diversas formas y se envían de vuelta al archivo SWF en un formato que pueda aceptar (desde pares nombre/valor hasta objetos complejos).
El servidor de aplicaciones debe tener el tipo MIME de su salida definido como application/x-www-urlform-encoded. Si falta dicho tipo MIME, normalmente el resultado no se podrá utilizar cuando llegue a Animate.
En la tabla siguiente se muestran distintas opciones de envío de datos a un servidor y de recepción de datos utilizando Animate:
Envío de datos |
Descripción |
LoadVars.send y LoadVars.sendAndLoad |
Envía pares nombre/valor a un script de servidor para su procesamiento. LoadVars.send envía variables a un script remoto e ignora cualquier respuesta. LoadVar.sendAndLoad envía pares nombre/valor a un servidor y carga o analiza la respuesta en un objeto LoadVars de destino. |
XML.send y XML.sendAndLoad |
Similar a LoadVars, pero XML.send y XML.sendAndLoad envían paquetes XML en lugar de pares nombre/valor. |
getURL |
Mediante la función getURL() o el método MovieClip.getURL, puede enviar variables desde Animate a un fotograma o una ventana emergente. |
Remoting |
Permite intercambiar fácilmente información compleja entre Animate y ColdFusion, ASP.NET, Java, etc. También se puede utilizar Animate Remoting para consumir servicios web. |
Servicios Web |
Adobe Animate incluye el componente WebServiceConnector que permite al usuario conectarse a servicios web remotos, enviar y recibir datos y vincular resultados a componentes. Esto permite a los desarrolladores de Animate crear rápidamente aplicaciones complejas de Internet sin tener que escribir ni una sola línea de código ActionScript. Se pueden consumir servicios web remotos con WebServiceClasses, que puede requerir la redacción de código ActionScript complejo. |
Cómo añadir carga de datos y validación
Se puede validar cualquier información recuperada antes de enviar dichos datos a un servidor. De este modo, se reduce la carga en el servidor remoto, ya que no controla tantas peticiones cuando los usuarios no rellenan los campos necesarios. No se debe basar exclusivamente en la validación de la aplicación en el lado del cliente: también debe llevarse a cabo la validación en el lado del servidor.
Incluso si crea un formulario sencillo de registro o de inicio de sesión, compruebe que el usuario ha introducido su nombre y su contraseña. Esta validación se debe llevar a cabo antes de enviar la petición al script de servidor remoto y esperar el resultado. No se base exclusivamente en la validación del lado del servidor. Si un usuario solo escribe un nombre de usuario, el script de servidor debe recibir la petición, validar los datos que se envíen y devolver un mensaje de error a la aplicación de Animate indicando que es necesario introducir tanto el nombre de usuario como la contraseña. Del mismo modo, si la validación sólo se realiza en el lado del cliente (en el archivo SWF), un usuario podría modificar ilícitamente el archivo SWF, sortear la validación y enviar los datos al servidor para intentar publicar datos erróneos.
La validación del lado del cliente puede ser algo tan sencillo como verificar que el contenido de los campos de formulario sea como mínimo de un carácter de longitud o que el usuario introduzca valores numéricos, no cadenas. Para validar una dirección de correo electrónico, por ejemplo, compruebe que el campo de texto de Animate no esté vacío y que contenga al menos los caracteres de arroba (@) y punto (.). Para la validación del lado del servidor, añada procesos de validación más complejos y verifique que la dirección de correo electrónico pertenece a un dominio válido.
Debe escribir código ActionScript para gestionar los datos que se cargan en el archivo SWF desde el servidor. Tras finalizar la carga de datos en un archivo SWF, puede acceder a los datos desde dicha ubicación. Utilice código ActionScript para comprobar si los datos se han cargado por completo. Puede utilizar funciones callback o detectores para enviar una señal que indique que los datos se han cargado en el documento.
Al cargar los datos, se les puede aplicar formato de varias maneras:
Puede cargar datos XML; se utilizarán los métodos y clases XML para analizar los datos y utilizarlos. Si utiliza pares nombre/valor, los pares se convierten en variables y es posible manipularlos como tales.
Puede recibir datos desde un servicio web o desde Animate Remoting.
En ambos casos, podría recibir estructuras complejas de datos, como conjuntos, objetos o conjuntos de registros, que se deben analizar y vincular adecuadamente.
Utilización de gestión de errores y depuración
Es preciso que la aplicación sea lo suficientemente robusta para anticiparse a ciertos errores y gestionarlos del modo correcto.
Uno de los mejores métodos para llevar a cabo la gestión de errores en ActionScript 2.0 consiste en utilizar los bloques try-catch-finally que permiten emitir y capturar errores personalizados. Mediante la creación de clases de errores personalizados, es posible reutilizar el código en la aplicación sin necesidad de reescribir código de gestión de errores. Para obtener más información sobre la emisión de errores personalizados consulte la clase Error en la Referencia del lenguaje ActionScript 2.0. Para obtener más información sobre los bloques try-catch-finally, consulte try..catch.. finallycatch..finally en Referencia del lenguaje ActionScript 2.0.
En ActionScript 3.0, utilice la clase flash.errors para capturar errores.
Para obtener más información, consulte la sección “Gestión de errores sincrónicos en una aplicación” en Programación con ActionScript 3.0.
Organización de archivos y almacenamiento de código
Tenga en cuenta las siguientes directrices antes de comenzar a organizar archivos y almacenar código:
¿Ha dividido el archivo SWF en varios archivos SWF? Si es así, ¿cómo deben interactuar?
¿Qué activos puede compartir entre los archivos SWF?
¿Qué archivos se cargan dinámicamente?
¿Cómo y dónde se almacena el código ActionScript?
Al desarrollar una aplicación, almacene el código de servidor y los archivos en una estructura de directorios lógica, similar a la del paquete ActionScript. Ordene el código de esta forma para tenerlo bien organizado y reducir el riesgo de sobrescritura.
Para aplicaciones más grandes, encapsule la comunicación entre el cliente y el servidor y los servicios en clases. Si utiliza clases, se beneficiará del modo siguiente:
Podrá reutilizar el código en más de un archivo SWF.
Podrá editar el código en un lugar centralizado y actualizar todos los archivos SWF mediante su republicación.
Podrá crear una sola API que manipule distintos elementos de la interfaz de usuario y otros activos que lleven a cabo funciones parecidas.
Uso del patrón de diseño MVC
El patrón de diseño MVC se utiliza para separar la información, la salida y el procesamiento de los datos de la aplicación. La aplicación se divide en tres elementos: el modelo, la vista y el controlador; cada elemento gestiona una parte distinta del proceso.
El modelo
Incorpora los datos y las reglas de la aplicación. Gran parte del procesamiento de la aplicación tiene lugar en esta parte del patrón de diseño. El modelo también contiene todos los componentes (por ejemplo, CFC, EJB y servicios web) y la base de datos. No se aplica ningún formato a los datos devueltos para la interfaz (o procesador principal) de la aplicación en esta parte del proceso. Los datos devueltos se pueden utilizar para distintas interfaces (o vistas).
La vista
Gestiona el procesador principal de la aplicación (la interfaz con la que interactúa el usuario) y representa el contenido del modelo. La interfaz especifica la forma en que se presentan los datos del modelo, produce la vista que utilizará el usuario y permite al usuario acceder a los datos de la aplicación o manipularlos. Si cambia el modelo, la vista se actualiza para reflejar los cambios introduciendo o extrayendo datos (enviando o solicitando datos). Si crea una aplicación web híbrida (por ejemplo, una en la que Animate interactúe con otras aplicaciones de la página), tenga en cuenta las distintas interfaces como parte de la vista del patrón de diseño. El patrón de diseño MVC admite la gestión de diversas vistas.
El controlador
Gestiona los requisitos del modelo y de la vista para procesar y mostrar datos. Suele contener mucho código. Realiza llamadas a cualquier parte del modelo, según las peticiones realizadas por el usuario desde la interfaz (o vista), y contiene código específico de la aplicación. Puesto que este código es específico de la aplicación, no suele ser reutilizable. Sin embargo, el resto de componentes del patrón de diseño sí se pueden reutilizar. El controlador no procesa ni produce ningún dato: recibe la petición del usuario y decide a qué parte del modelo o componentes de la vista necesita llamar, determina dónde se envían los datos y qué formato se aplica a los datos devueltos. El controlador garantiza que las vistas tengan acceso a las partes de los datos del modelo que deben mostrar. Normalmente, el controlador transmite y responde ante cambios que afectan al modelo y a la vista.
Cada parte del modelo se crea como un componente de contenido propio en todo el proceso. Si se modifica una parte del modelo (por ejemplo, al rediseñar la interfaz), el resto de partes del proceso no suele requerir ninguna modificación, lo que reduce el número de problemas. Si el patrón de diseño se crea correctamente, puede cambiar la vista sin tener que rediseñar el modelo o el controlador. Si la aplicación no utiliza MVC, los cambios realizados en cualquier lugar pueden generar un efecto ondulado en todo el código. Esto requiere muchos más cambios que si se utilizase un patrón de diseño específico.
Uno de los motivos de peso para utilizar el patrón MVC es la necesidad de separar los datos y la lógica de la interfaz de usuario. Al separar estas partes del proceso, es posible disponer de varias interfaces gráficas distintas que utilicen el mismo modelo y datos sin formato. Esto significa que se podrá utilizar la aplicación con distintas interfaces de Animate, como una interfaz para la web, una para un PC de bolsillo, una versión para teléfonos móviles y, tal vez, una versión HTML que no utilice Animate en absoluto. Al separar los datos del resto de la aplicación se reduce significativamente el tiempo de desarrollo, de prueba e incluso de actualización de más de una interfaz del cliente. De forma similar, añadir nuevos procesadores principales para la misma aplicación es más sencillo si se dispone de un modelo existente.
Utilice MVC únicamente si va a crear una aplicación grande y compleja, como un sitio web de comercio electrónico o una aplicación de aprendizaje por Internet. Para utilizar esta arquitectura, es necesario planificar y comprender el funcionamiento de Animate y de este patrón de diseño. Piense detenidamente cómo interactúan entre sí las distintas partes; para ello se suele recurrir a las pruebas y a la depuración. Si utiliza MVC, las pruebas y la depuración están más relacionados y suponen una mayor dificultad que en aplicaciones Animate habituales. Si crea una aplicación en la que será necesaria complejidad adicional, considere la posibilidad de utilizar MVC para organizar el trabajo.
Creación de aplicaciones seguras
Tanto si crea un pequeño portal en el que los usuarios inicien sesión para leer artículos como si desarrolla una tienda de comercio electrónico de gran envergadura, habrá usuarios deshonestos que intenten piratear la aplicación. Por ello, debe tener en cuenta lo siguiente para que la aplicación sea segura.
Publique los datos como HTTPS en los casos en que necesiten ser seguros. Cifre los valores en Animate antes de enviarlos a un servidor remoto para su procesamiento.
no almacene nunca información ni código en un archivo SWF que no quiera que el resto de usuarios puedan ver. No es complicado desensamblar archivos SWF y ver su contenido con aplicaciones de terceros.
Añada una política entre dominios para evitar que los dominios no autorizados puedan acceder a los activos.