San Jose, California - Abril 16 de 2007. Adobe anuncia la disponibilidad inmediata de su altamente esperado Adobe Creative Suite 3.
Tambien desde el dia de hoy estan disponibles los productos individuales del CS3 en las tiendas distribuidoras de Adobe en Estados Unidos y en Canada.
Como lo hemos mencionado anteriormente, los nuevos paquetes de software de Adobe estan centralizados en su integración ya que los anteriores provenian de casas distintas (Adobe y Macromedia); las versiones de prueba estaran disponibles para descarga dentro de las proximas 6 a 8 semanas.
Si tienes dos peliculas en el mismo html, puedes usar la clase LocalConnection para lograr comunicación entre ellas. Esto es muy util si en dado caso tienes por ejemplo dos banners separados y quieres enviar información desde uno hacia el otro. Una forma basica de utilizar dicha clase es la siguiente:
- Crea un nuevo documento de Flash y guardalo como pelicula01.fla
- Crea un botón en el escenario y ponle nombre de instancia "mi_btn"
- En una capa diferente a la que llamaras "actionscript" pon el siguiente código:
En el código anterior tenemos una función con un parametro del tipo "String" (cadena de texto), dentro de dicha función estamos instanciando la clase LocalConnection y luego enviando tres parametros:
- El nombre de la conexión local, en este caso, prueba_LC
- El nombre de un metodo o función que existe en la otra pelicula
- El parametro que utilizan ambas funciones
Estoy llamando a mi_funcion desde los eventos RollOver y RollOut pero podria llamar a la función desde cualquier otro evento.
Publica tu pelicula para tener pelicula01.swf listo para la conexión.
- Crea otro documento Flash y llamalo pelicula02.fla
- Pon una caja de texto dinamico con nombre de instancia "mi_txt"
- En una nueva capa llamada "actionscript" agrega el siguiente código:
En este código estamos poniendo un texto para que sea mostrado mientras la LocalConnection es llamada.
Estamos agregando una instancia de la clase LocalConnection y estamos declarando la función cambiar_texto que es la que llamamos en la pelicula01 en los eventos RollOver y RollOut. Dentro de la función cambiar_texto estamos diciendole a mi_txt que muestre el valor que tenga mi_parametro. Al final del codigo nos conectamos a prueba_LC, nuestra conexion local que hemos creado.
Eso es todo!
Si pones los dos swf en el mismo html, veras algo similar a:
Un cuestionario es una muy buena herramienta en "marketing", estudios del publico objetivo y estadisticas. La idea de crear un cuestionario es recoger informacion de una forma facil y eficaz en un corto periodo de tiempo. En un cuestionario podemos hacer tres tipos de preguntas:
- Preguntas abiertas: permitiendo al usuario dar una respuesta libre y redactada por el mismo
- Preguntas cerradas: las respuestas son delimitadas donde el usuario escoge la que mas crea conveniente
- Preguntas mixtas: cuando se combinan las dos anteriores
Como la idea es acortar el tiempo, es mejor ofrecer un cuestionario con preguntas cerradas lo cual hara mas facil para el "encuestado" el llenar el cuestionario y mas facil para nosotros el recoger los datos. En ese caso, lo mejor es utilizar RadioButtons en Flash para hacer nuestra tarea aun mas facil.
En general, no solamente el codigo puede ser re-utilizable sino tambien las aplicaciones en si. Veamos entonces como hacer un cuestionario que pueda adaptarse a diferentes tematicas y pueda ser re-utilizado con facilidad.
- Abrimos Flash, creamos un nuevo documento y lo guardamos como "cuestionario"
- En nuestro escenario pondremos seis cajas de texto dinamico con nombres de instancia:
numeroDePregunta que nos mostrara el numero de la pregunta que se muestra actualmente
tituloPregunta que muestra la pregunta en si
posibilidad1, posibilidad2, posibilidad3 y posibilidad4 que muestran las posibles respuestas de las cuales el "encuestado" debe escoger una.
- En otra capa o layer agregamos un boton y le ponemos como nombre de instancia "siguiente_btn"
- Precionamos Ctrl+F7 o desde Window > Components abrimos el panel de componentes y arrastramos un RadioButton al escenario en un nuevo layer para llevar mas orden
- Lo ponemos al lado de la caja de texto posibilidad1, le damos nombre de instancia pos1 y en los parametros cambiamos el nombre de grupo (groupName) a posibilidades y le borramos el label
- Ponemos tres instancias mas del RadioButton y las ubicamos a cada lado de nuestras cajas de texto de las posibilidades de respuesta y le damos nombres de instancia pos2, pos3 y pos4. Dichas instancias deben tener el mismo nombre de grupo que pos1 (posibilidades) y no deben tener nada en label.
- En una nueva capa a la que llamaremos Actionscript, agregamos las siguientes acciones:
- esta funcion solo se llama al final, cuando ya no hay mas preguntas que hacer, en ese caso quitamos de enmedio los botones y campos de texto que no necesitamos
- Ya que al seleccionar un RadioButton y pasar a la siguiente pregunta, dicho RadioButton queda seleccionado, le quitamos la seleccion con esta funcion para que asi el usuario no se confunda
- como tenemos un boton en el escenario, este boton tiene ordenes de continuar o no, si en dado caso la persona ha respondido alguna pregunta y a la vez revisa si la respuesta es la adecuada.
Y listo!
eso es en el Flash, publicamos, nos dara un error porque no pudo cargar "cuestionario.txt" ya que dicho documento aun no existe, un campo de texto nos dira "Error! intentar de nuevo" pero como ya tenemos el Flash listo y publicado, podemos cerrar Flash y hacer nuestro cuestionario.txt.
&pregunta2=Quienes son moderadores en "Usando Flash"?
&uno2=pulga, chespi
&dos2=orly, hernan, alfathenus
&tres2=chespi, ...sErGiO...
&cuatro2=orly, aliena, pulga
&respuesta2=4&
- Lo guardamos como cuestionario.txt y listo! Ahora podremos cambiar las preguntas, posibles respuestas y la respuesta que se busca; agregar mas preguntas, etcetera, sin tocar el Flash! El mismo .swf nos puede servir para cualquier cuestionario cerrado con cualquier numero de preguntas.
Para optimizarlo mas, falta que Sergio Alvarez pase el codigo a Clases de ActionScript 2 y nos explique como hacerlo usando XML en vez de TXT. Gracias Sergio! XD
- Para ver el ejemplo, Warning: gzuncompress() [function.gzuncompress]: data error in /home/publizam/public_html/neoflashers/blog/wp-content/plugins/easyswf/easyswf.php on line 255
. Y cualquier pregunta, a los foros.
Con motivo del lanzamiento del Adobe Creative Suite 3 (CS3), el Adobe Users Group mx:riactive de Mexico, nos permitio a los hispano-parlantes asistir a la transmision en vivo de su evento realizado en la Ciudad de Mexico.
Con la nueva version del Macromedia Breeze, ahora llamado Adobe Connect, la lista de asistentes on-line llego a superar los 100 participantes, los cuales tuvieron la oportunidad de ver de primera mano y de parte de varios Instructores Adobe certificados, las novedades de algunos de los productos CS3.
Lastimosamente el evento se retrazo un poco, lo que dificulto el proceso de preguntas y respuestas al final del mismo y se tuvo que omitir una de las presentaciones de Edgar Parada, organizador de evento.
En general, el evento fue un exito, todos y cada uno de los ponentes realizo un trabajo muy bueno; mostrandonos algunos de los cambios en las herramientas de los productos nos dejaron asombrados e impacientes por poner nuestras manos en dichos productos cuyo mayor cambio es la compatibilidad entre ellos que no se habia logrado antes debido a que las versiones anteriores provenian de distintas casas (Macromedia y Adobe), siendo dicha compatibilidad tan grande que hasta alcanza a productos fuera de la linea CS3 como lo es Adobe Flex, actualmente en su version 2.
En la ponencia final, Edgar nos mostro lo facil que es escribir en un blog utilizando Adobe Contribute y como ejemplo, envio al blog de reactive este post en el mismo momento de la presentacion.
Gracias nuevamente a Edgar Parada y la gente de mx:riactive por invitarnos y permitirnos presenciar este evento.
Quedamos en espera de mas eventos de este tipo. Algunos "screenshots"
Ya que NeoFlashers es una organizacion sin fines de lucro, no tenemos nada de publicidad en el sitio, solamente un banner de Arena29 en el la pagina de inicio quienes patrocinan el alojamiento del sitio.
Nuestra pagina de inicio cuenta con un lector del RSS de este blog y tambien muestra los ultimos mensajes escritos en nuestros Foros.
Fue originalmente diseñada por el administrador general de NeoFlashers, Daniel Fernandez (leinad256 o Daneel del Rancho Tangamampilia) pero debido a que Daniel no esta disponible ultimamente (como nos comenta Sergio en este post), el home fue desarrollado por otros miembros de la comunidad.
Espero les guste, y cualquier comentario es mas que bienvenido.
El sitio web de Adobe ha sido actualizado promoviendo el lanzamiento de su "Creative Suite 3" (CS3).
La idea principal es la integracion de sus herramientas ya que las versiones anteriores al haber sido desarrolladas en casas distintas (Macromedia y Adobe) no eran compatibles al 100%.
Siguiendo con el post anterior donde he explicado como preparar lo necesario para hacer aplicaciones Apollo alfa sin usar Flex, veamos como hacer nuestra primera aplicacion.
Pasos:
- He escogido un swf de un calendario que hice anteriormente para Widgetbox y lo he puesto en un folder en mi escritorio, llamado "apolloTest"
- En dicho folder, solamente estan el swf (que se llama calendarV1.swf) y un folder con iconos de diferentes tamaños; los he tomado prestados del folder de ApolloSDK.
- Creamos un XML que indicara al compilador el nombre del swf, autor, titulo, descripcion, entre otros. Dicho XML tiene la siguiente estructura:
- Lo he guardado como application.xml aunque podria tener cualquier otro nombre.
Explicacion del XML: Propiedades:
El nodo name indica el nombre de mi aplicacion; esto lo vemos a la hora de instalarla
El nodo description es una breve descripcion de sobre que trata la aplicacion a crear
En el nodo publisher se indica el nombre de tu empresa o del desarrollador
Copyright si en dado caso quieres poner derechos de autor
Luego viene la parte importante, el nombre de tu archivo .swf a compilar. Dentro de este elemento, estan los atributos systemChrome, visible y transparent entre otros, para ver las posibles opciones, seguir este enlace. Al systemChrome le he dado el valor de "none" porque no quiero que mi aplicacion este dentro de una ventana de windows, y he agregado el atributo "transparent" con un valor de "true" porque quiero que mi aplicacion sea transparente.
Listo!
- Para probar como se vera mi aplicacion antes de compilarla, hacemos de "geeks" otra vez y abrimos una ventana del Command Prompt desde "Start > All Programs > Accessories > Command Prompt"
Ahora tenemos que ubicar nuestro folder "apolloTest", entonces escribimos lo siguiente:
cd desktop
y precionamos "enter". Luego escribimos:
cd apollotest
precionamos enter nuevamente y ya estamos ubicados en nuestro folder apolloTest.
Ahora solo basta escribir una linea, donde llamamos al Apollo Debug Launcher (ADL) y le decimos donde esta nuestro XML:
adl application.xml
precionamos enter y voila! nuestro swf aparece SIN VENTANAS
esto significa que todo esta bien y estamos listos para crear nuestro documento .air que es el ejecutable de las aplicaciones Apollo alfa.
Nota: Para cerrar nuestra aplicacion, necesitamos precionar ALT+F4 ya que Apollo no tiene soporte para Flash 8 por tanto, no podemos escribir ningun script que haga que nuestra aplicacion se cierre.
Podrán las versiones 8 de Flash y menores correr en Apollo?
Si. Sin embargo las API de Apollo están solo expuestas a contenido Flash a través de ActionScript 3 / AVM2, y por eso Flash 8 /AVM1 SWFs serán capaces de correr, pero no tendrán acceso directo a las API de Apollo.
Para crear los ejecutables solo llamamos al Apollo Developer Tool (ADT) desde el command prompt y le indicamos el nombre a crear de nuestro documento .air, el nombre del XML y los demas documentos a anexar al .air asi:
El archivo creado, al cual personalmente he llamado calendarV1, lo podemos subir a la web para que otras personas lo descarguen como por ejemplo preciona calendarV1.air para descargar dicho archivo. Recuerda que para cerrarlo hay que precionar Alt+F4.
Espero este tutorial te ayude a dar tus primeros pasos con Apollo. Hay muchas mas cosas que se pueden hacer aunque por el momento, para Flash 8 y AS2, estan limitadas; Si quieres hacer aplicaciones mas avanzadas, te aconsejo comenzar a usar Adobe Flex.
Hasta ahora, la mayoria de documentacion sobre desarrollo de aplicaciones de escritorio usando Adobe Apollo, aparte de que esta en Ingles, esta enfocada a Adobe Flex (mxml y Actionscript 3)
Pero... y los que todavia no hemos jugado con Flex?
Ah! por ahi en Adobe hay un tutorial de como hacer un "hola mundo" con HTML... Pero y si quiero usar Flash?
En ese caso tendras que hacer unos cuantos malabares para que te funcione y para que no sea tan doloroso su desarrollo, paso a explicarte como hacerlo; por el momento, dichos pasos son necesarios, pero cuando Apollo salga de su version alfa, quiza en su version beta, la vida se nos facilitara y no tendremos que hacerlas de "geeks" ya que Apollo tendra su propia API (entorno de desarrollo).
Pasos:
- Descargar e instalar el Apollo Runtime, necesario para que las aplicaciones de Apollo sean reconocidas y ejecutadas desde tu computadora
- Descargar de Adobe el Apollo SDK (Software Development Kit), con el que se prueba y compilan las aplicaciones Apollo alfa; este viene en un archivo .zip que tienes que descomprimir, renombrar como "ApolloSDK" y copiarlo al folder de "Program Files" en tu disco duro. Al final, el contenido de dicho folder estara ubicado en C:\Program Files\ApolloSDK
- Ya que el SDK corre unos comandos de JAVA, necesitas descargar e instalar el Java Runtime Environment (J2SE JRE) aunque el usuario final no lo necesitara pero Java es necesario para compilar tus aplicaciones Apollo alfa.
- Hasta ahora, todo bien, casi estas listo para crear tus aplicaciones. Pero faltan los pasos "geek": agregar la ruta del folder "bin" del Apollo SDK a las variables de entorno de tu sistema.
Que?
bueno, quiza para algunos esto sea muy simple, para mi no lo fue la primera vez he hice algo indebido... borre todo!
Asi que mejor les explico paso a paso:
Te vas a "Start > Control Panel > System > Advanced" (ver nota 2) y luego preciona en "Environment Variables"
*Imagen robada del blog de Sergio Alvarez (Sergio, espero no te molestes y si te molestas PTJ!) XD
Una vez en Environment Variables, buscas en las System Variables una que se llame "Path", la editas y agregas la siguiente linea:
;C:\Program Files\ApolloSDK\bin
No borres la informacion que estaba antes en el value de la variable Path, solo agrega al final de la cadena la nueva ruta del SDK.
Preciona "ok" para aceptar los cambios y por cualquier cosa, re-inicia el PC.
Listo. Ya puedes hacer aplicaciones Apollo Alfa solo con un swf! y claro, el XML que le dice a Apollo donde estan las cosas.
En el proximo post veremos como crear nuestra primera aplicacion de Apollo alfa con nuestro swf, asi que a buscar tu swf que mejor le venga a una aplicacion de escritorio!
Nota 1: Todo lo anterior es compatible con PC corriendo Windows XP. No tengo ningun otro sistema operativo por lo tanto no se como se hace en otros sistemas. Nota 2: Mi sistema operativo esta en Ingles, al igual que el teclado de mi laptop, por eso las descripciones de Windows estan en Ingles y no he utilizado acentos; pido disculpas.
Es muy probable que en cualquier momento mientras desarrollas tu aplicacion en Flash te encuentres con un problema de Cross-domain. En Flash, cross-domain es cuando data de un sitio X es cargada dentro de una pelicula hospedada en un sitio Y , por eso se le llama cross-domain que en castellano es algo asi como "dominio-cruzado".
Por razones de seguridad, el Flash Player tiene permitido cargar data de un dominio distinto solamente bajo ciertas circunstancias. Para saber mas sobre el Modelo de Seguridad del Flash Player, preciona aca.
En dicho documento se menciona el uso de un xml con el que se permite intercambio de datos hacia otros dominios, dicho xml es similar al que tengo en mi pagina personal. Mas informacion en este enlace (en Ingles)
Me ha sucedido mas de una vez que he necesitado data de "web services" o RSS feeds y al no tener la opcion de crear un documento crossdomain.xml he tenido que recurrir a otros metodos para evitar problemas y saltar la seguridad del flash player.
El metodo que he encontrado mas comodo es usando php y el siguiente script lo hice para tales fines:
Este pequeño script lo he guardado como proxy.php y lo he subido a mi servidor.
El script es sencillo:
- con el header solo le estoy diciendo al navegador que la data contenida es un xml
- la siguiente linea es para "robar" la data de la direccion enviada desde flash
Si por ejemplo la data que me interesa cargar en mi pelicula es un xml, en mi documento de Flash cargo mi xml pero en vez de la direccion donde se encuentra hospedado originalmente, pongo lo siguiente:
de esta manera puedo usar el mismo php para cargar data de cualquier otro dominio y engañar al Flash Player haciendolo creer que la data esta siendo servida desde mi propio dominio.
Ya está disponible la primera versión Alpha, de Apollo. El producto tan esperado de Adobe.
Está primera versión incluye el SDK, una extensión para Flex Builder, así como ejemplos y documentación.Todo el que quiera iniciarse con esta nueva tecnología ya no tiene escusas!Disponible aquí.