As3 unidad 14 crear una aplicación air con flash y action script

2,402
-1

Published on

Published in: Education, Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,402
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
23
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

As3 unidad 14 crear una aplicación air con flash y action script

  1. 1. Crear una aplicación AIR con Flash y ActionScript Unidad 14
  2. 2. Objetivos  Usar Flash para crear una aplicación de plataforma cruzada (cross-plataform)  Asignar la configuración para crear una aplicación Air  Personalizar la aplicación AIR y el instalador  Definir los iconos de la aplicación AIR
  3. 3. Objetivos  Usar las clases AIR para interactuar con el sistema operativo  Publicar e instalar una aplicación AIR  Usar las propiedades drag&drop del sistema operativo con la aplicación AIR  Usar las clases File y FileStream para leer datos desde un archivo externo
  4. 4. AIR  AIR (Adobe Integrated Runtime) es una herramienta para crear aplicaciones de escritorio, utilizando los conocimientos de ActionScript  Se pueden crear aplicaciones AIR desde Flash, Flex y Dreamweaver  Las aplicaciones AIR funcionan en Windows, Macintosh y Linux
  5. 5. AIR  Con AIR podrá: – Leer y escribir archivos de datos – Copiar y pasar objetos del portapapeles del sistema operativo – Se tiene propiedades de navegador – Integración con archivos PDF – Crear base de datos locales
  6. 6. ActionScript para AIR  Existen clases especificas para AIR, que sólo funcionan con ActionScript 3.0.  Todas las clases de Flash AS 3.0 funcionan para AIR.
  7. 7. Archivo descriptor  Las aplicaciones AIR tienen un archivo XML con la descripción de la misma, incluyendo los iconos que se utilizarán  Los iconos tienen 4 tamaños predeterminados, en formato PNG.  Las aplicaciones AIR cuentan con una firma digital de seguridad  Dicha firma debe de ser adquirida a una empresa que se dedica a ello
  8. 8. Configuración de una aplicación AIR
  9. 9. Archivo descriptor  Usted puede crear su propia firma digital, pero no tiene la misma seguridad y en la instalación se indicará que el proveedor del software es “desconocido”  Se puede generar una firma digital tipo 1024_RSA y 2048-RSA (más segura)  Indique también los archivos que deben ser incluidos dentro de la aplicación
  10. 10. Paquete de aplicación  Un archivo con extensión .air es creado, el cual es el instalador (deberá tener los privilegios en su sistema operativo para crear el paquete).  Al ejecutar este paquete, su aplicación deberá ser correctamente instalada en su sistema operativo
  11. 11. Manejo del portapapeles (clipboard) del sistema operativo
  12. 12. Clase NativeDragEvent  La clase NativeDragEvent es utilizada para detectar los objetos que se mueven por medio del sistema operativo – nativeDragStart: cuando comienza la operación de arrastrar. – nativeDragUpdate: mientras la operación de arrastrar está en curso. – nativeDragComplete: cuando el usuario suelta el elemento arrastrado (se acepte o no la operación de soltar).
  13. 13. Clase NativeDragEvent  Al arrastrar un objeto en el sistema operativo, se genera un objeto NativeDragManager  El objeto que detectará dentro de Flash a los objetos externos, se marca con el método NativeDragManager.doDrag()  Estos objetos pueden detectar los siguientes eventos:
  14. 14. Clase NativeDragEvent  nativeDragEnter: cuando el objeto arrastrardo no sale de los límites del objeto.  nativeDragOver: mientras el gesto de arrastrar permanece dentro de los límites del objeto.  nativeDragExit: cuando el gesto de arrastrar sale de los límites del objeto.
  15. 15. Clase NativeDragEvent  nativeDragDrop: cuando el usuario suelta el elemento sobre el objeto y éste ha aceptado previamente la operación de soltar mediante una llamada a NativeDragManager.acceptDragDrop().
  16. 16. Clase NativeDragEvent  En este ejemplo se utilizará: – El evento NATIVE_DRAG_ENTER para indicar que el objeto está sobre el objeto habilitado en Flash – El evento NATIVE_DRAG_DROP para indicar que el objeto fue soltado sobre el objeto habilitado en Flash
  17. 17. Formatos del clipboard  Al momento de ser arrastrado, AIR puede determinar el tipo de objeto que se arrastra (texto, bitmap, HTML, etc)  En el sistema operativo, se pueden arrastrar más de un archivo, con lo cual se genera un arreglo con los archivos que han sido arrastrados por el usuario  Los archivos arrastrados pueden ser de diferente tipo
  18. 18. Clase NativeDragEvent  Con el método .hasFormat() se puede verificar si el portapapeles contiene información  Este método puede tener uno de los siguientes parámetros:
  19. 19. Clase NativeDragEvent Formato Tipo Descripción ClipboardFormats.TEXT_FORMAT String datos de cadena ClipboardFormats.HTML_FORMAT String datos de cadena HTML ClipboardFormats.URL_FORMAT String Cadena URL (sólo AIR) ClipboardFormats.RICH_TEXT_FORMAT ByteArr ay Datos con formato de texto enriquecido
  20. 20. Clase NativeDragEvent Formato Tipo Descripción ClipboardFormats.BITMAP_FORMAT Bitmap Data datos de mapa de bits (sólo AIR) ClipboardFormats.FILE_LIST_FORMAT conjunt o de File conjunto de archivos (sólo AIR) Nombre de formato personalizado cualqui era referencia a objeto y clon serializado
  21. 21. Clase NativeDragEvent workArea_mc.addEventListener(NativeDragEvent.NATIVE_ DRAG_ENTER ,onDragEnter); function onDragEnter(e:NativeDragEvent):void { if(e.clipboard.hasFormat(ClipboardFormats.FILE_LIST_F ORMAT)) { NativeDragManager.acceptDragDrop(workArea_mc); } }
  22. 22. Evento NATIVE_DRAG_DROP  El evento NATIVE_DRAG_DROP se lanza cuando el usuario suelta los objetos arrastrados desde el sistema operativo, sobre el objeto habilitado en Flash  Tenemos que recuperar la información de los objetos en un arreglo local: var cbFiles:Array = e.clipboard.getData(ClipboardFormats.FILE_LIST _FORMAT,ClipboardTransferMode.CLONE_ONLY) as Array;
  23. 23. Evento NATIVE_DRAG_DROP  El método clipboard.getdata() recupera la información del portapapeles de los archivos descritos en FILE_LIST_FORMAT  El segundo parámetro, CLONE_ONLY indica que se usará una copia del archivo y no su referencia  Después de esto crearemos dos arreglos para validar que los archivos arrastrados sean del formato de nuestros componentes
  24. 24. Manejo de archivos con AIR
  25. 25. Clases File  Objeto File que representa una ruta de archivo o de directorio existente, o bien uno que aún no exista.  La clase File tiene varias propiedades y métodos para obtener información sobre el sistema de archivos y las operaciones permitidas (por ejemplo, copiar archivos y directorios).  Puede utilizar objetos File con la clase FileStream para leer y escribir archivos.
  26. 26. Clases File  La clase File incluye propiedades estáticas que permiten hacer referencia a las ubicaciones de directorio más utilizadas: – File.applicationStorageDirectory: un directorio de almacenamiento exclusivo para cada aplicación de AIR instalada – File.applicationDirectory: el directorio de sólo lectura en el que se instala la aplicación (junto con el resto de archivos instalados) – File.desktopDirectory: el directorio del escritorio del usuario – File.documentsDirectory: el directorio de documentos del usuario – File.userDirectory: el directorio del usuario
  27. 27. La clase FileStream  Se utiliza un objeto FileStream para leer y escribir archivos. Los archivos se pueden abrir de forma sincrónica llamando al método open() o de forma asíncrona llamando al método openAsync().  La ventaja de abrir archivos de forma asíncrona reside en que otro código puede ejecutarse mientras Adobe AIR lee y escribe los procesos en segundo plano.  Cuando se abre de forma asíncrona, los eventos progress se distribuyen como procedimiento de las operaciones.
  28. 28. La clase FileStream  Un objeto File abierto de forma sincrónica se comporta casi como un objeto ByteArray; un archivo que se abre de forma asíncrona se comporta casi como un objeto Socket o URLStream.  Cuando se abre un objeto File de forma sincrónica, la llamada se detiene mientras se leen o escriben los datos solicitados en el archivo subyacente.  Cuando se abre de forma asíncrona, todos los datos escritos en el flujo se guardan en el búfer inmediatamente para escribirse después en el archivo.
  29. 29. La clase FileStream  Los datos que se pueden leer de forma sincrónica en el momento actual se representan mediante la propiedad bytesAvailable.  Una aplicación que procesa entradas asíncronas suele registrar eventos progress y consumir los datos a medida que están disponibles mediante llamadas a métodos de lectura. Una aplicación también puede esperar a que todos los datos estén disponibles registrando el evento complete.
  30. 30. Abrir un archivo open(file:File, fileMode:String):void  Abre el objeto FileStream de forma sincrónica y señala al archivo especificado por el parámetro file.  En sistemas que admitan el bloqueo de archivos, un archivo abierto en modo de "escritura" o de "actualización" (FileMode.WRITE o FileMode.UPDATE) no se puede leer hasta que se cierra.
  31. 31. FileMode  La clase FileMode define constantes de cadena utilizadas por el parámetro fileMode de los métodos open() y openAsync() de la clase FileStream. El parámetro fileMode de estos métodos determina las funciones disponibles en el objeto FileStream una vez abierto el archivo.
  32. 32. FileMode  Las funciones de cada constante de la clase FileMode : Constante Lectura Escritura Creación Truncar Añadir READ * WRITE * * * APPEND * * * UPDATE * * *
  33. 33. Leer la información  readUTFBytes(length:uint):String  Lee una secuencia de bytes UTF-8 desde el flujo de bytes o el conjunto de bytes y devuelve una cadena.
  34. 34. Cerrar un archivo  close():void  No es posible escribir ni leer más datos una vez llamado el método close(). Si el archivo se ha abierto de forma asíncrona (el objeto FileStream utilizado en el método openAsync() para abrir el archivo), al llamar al método close() el objeto distribuye el evento close.
  35. 35. Preguntas de revisión  ¿Cómo se puede convertir una aplicación Flash en una AIR?  ¿Cuál es el propósito de una firma digital?  ¿Para qué se utilizan los cuatro archivos de iconos?  ¿Qué evento se dispara cuando un archivo es arrastrado dentro de un objeto de una aplicación AIR?
  36. 36. Preguntas de revisión  ¿Cuál evento es disparado cuando el usuario suelta el objeto sobre una aplicación AIR?  ¿Cuáles clases son utilizadas en AIR para leer y escribir en los archivos externos a la aplicación?

×