Un espacio para los entusiastas del web

5 oct 2011
5.023 Lecturas

Desarrollo para BlackBerry PlayBook con Flex

En esta guía aprenderás a desarrollar aplicaciones móviles para BlackBerry PlayBook mediante la tecnología Flex, a lo largo de los diferentes capítulos iremos descubriendo los conceptos necesarios para convertirte en un desarrollador para esta plataforma.

Empezaremos con una introducción al ecosistema de desarrollo con Flex para BlackBerry PlayBook para posteriormente comenzar con nuestro primer “Hola Mundo”, una vez configurado nuestro ambiente de trabajo será el turno de revisar los fundamentos de esta tecnología, desde el manejo de los componentes simples hasta llegar a aprovechar todo el poder de ActionScript 3.0.

BlackBerry PlayBook

Luego de dejar claros los fundamentos vamos a explorar el control de eventos, así como el uso de ciertos componentes y la construcción del layouts mediante contenedores específicos. Revisaremos una parte muy importante sobre el diseño de aplicaciones para dispositivos móviles, manejo de datos y exploraremos las APIs de PlayBook sobre las cuales podemos soportar nuestras aplicaciones.

Al final del recorrido vamos a revisar a fondo la publicación de nuestras creaciones dentro de la tienda de aplicaciones BlackBerry AppWorld y veremos algunas ideas sobre como monetizar nuestras apps para obtener beneficios adicionales.

Indice de contenido de la Guía Flex para Blackberry Playbook

Entre los temas que encontrarás en esta guía se encuentran:

  1. Introducción
  2. Hola Mundo
  3. Fundamentos de Flex
  4. ActionScript 3.0 y Eventos
  5. Componentes y Layout
  6. Diseño de Aplicaciones para PlayBook
  7. Permisos y Configuraciones9. Manejo de Datos
  8. APIs de PlayBook
  9. Publicación y Monetización de Apps en BlackBerry AppWorld

Espero que el contenido de esta guía sea de su agrado y que al finalizar sean capaces de desarrollar aplicaciones para PlayBook de forma rápida y profesional con Adobe AIR.

Comencemos con el primer capítulo!

Introducción

La BlackBerry PlayBook es una tablet que fue introducida al mercado durante este año, sin embargo ya había hecho su debut durante el Adobe MAX de 2010 en una presentación a cargo del co-CEO de RIM Mike Lazaridis y el CTO de Adobe Kevin Lynch (mira el vídeo) dejando muy en claro que se convertiría en un dispositivo muy interesante para el desarrollo de aplicaciones móviles sobre la Plataforma Flash.

A nivel hardware podremos encontrar una pantalla multitouch de 7 pulgadas, un procesador dual-core de 1GHz, 1GB de RAM y almacenamiento de 16GB a 64GB dependiendo del modelo. En cuanto al sistema operativo las cosas se ponen interesantes, ya que el sistema formalmente llamado BlackBerry Tablet OS esta basado en QNX Neutrino un sistema UNIX-like originalmente creado para el mercado de sistemas embebidos y que en su versión para PlayBook se encuentra muy bien integrado con el runtime de Adobe AIR lo que resulta en un desempeño excepcional de las aplicaciones, sin contar que hay librerías específicas de ActionScript muy útiles para explotar diferentes características del dispositivo.

Soporte de AIR en PlayBook

Adobe AIR es un ambiente de ejecución de aplicaciones alternativo a Flash Player que permite crear aplicaciones para escritorio, dispositivos móviles (Android, BlackBerry Tablet OS y iOS), televisiones, etc.
y para el caso de PlayBook tendremos distintas posibilidades dentro de las que se incluyen:

  • Reproducción de video con aceleración por hardware dentro del navegador y en las aplicaciones AIR, lo que permite una experiencia de reproducción en alta definición 1080p. Esta característica de Flash se conoce como StageVideo
  • Integración con GPS, cámara, acelerómetro, gestos multi-touch y componentes
    nativos.
  • Acceso al Sistema de Notificaciones para crear apps que permitan notificar eventos de forma inmediata aún corriendo en segundo plano para avisar al usuario.
  • WebView que permite a las aplicaciones AIR mostrar contenido HTML y Flash mediante el browser basado en WebKit.
  • Extender aplicaciones AIR para usar extensiones nativas de C++ y así escribir parte de la aplicación en el lenguaje nativo de BlackBerry Tablet O.

Opciones para Desarrollar Apps AIR en PlayBook

Las opciones para desarrollar aplicaciones móviles para PlayBook son similares a las ya existentes sobre la Plataforma Flash, es posible crear las aplicaciones con Flash Professional o Flash Builder aprovechando el perfil móvil de AIR, de hecho la mayor parte del código existente debería de correr sin problemas.

Existen una serie de extensiones de ActionScript creadas para aprovechar los componentes de interfaz de usuario, soporte de gestos, multitouch y multimedia. También hay extensiones para servicios de pago, que permiten monetizar desde la aplicación. Si pudieramos sintetizar los pasos para desarrollar aplicaciones AIR para PlayBook tendríamos la siguiente lista:

  1. Instalar Flash Builder 4.5
  2. Descargar el SDK de Desarrollo AIR para PlayBook
  3. Descargar VMware, VMware Fusion para Mac y VMware Player en el caso de Windows/Linux.
  4. Obtener los Certificados de Desarrollo
  5. Empezar a Desarrollar

NOTA: Cada uno de estos pasos los revisaremos a detalle en los diferentes capítulos de esta guía, sin embargo podemos empezar por descargar e instalar todo lo necesario en nuestro ambiente de trabajo.

Tip de Experto

  • Es recomendable utilizar Flash Builder 4.5 para el desarrollo, ya que aunque es posible utilizar versiones anteriores, la configuración del plugin a partir de esta versión es automática.
  • Para el desarrollo para PlayBook hay una herramienta llamada BlackBerry Graphical Aid que resulta de mucha utilidad para la mayoría de tareas que dependen de la línea de comandos.
  • A pesar de que existen diferentes herramientas que permiten probar nuestras aplicaciones en el escritorio, es una muy buena idea conseguir un dispositivo real para hacer nuestras pruebas y tener una impresión precisa de cómo se verán y comportarán nuestras aplicaciones.

Siguiente capítulo: Hola Mundo con Flex en PlayBook

¿Quieres leer más de la Guía Flex?

Edgar ParadaEdgar Parada es autor de esta guía que se publica cada semana. ¿Publicamos antes? Tus acciones sociales aceleran el próximo capítulo.

Edgar ParadaEdgar Parada para Maestros del Web.
Agrega tu comentario | Enlace permanente al artículo

Síguenos en: @maestros | Fan page

Comentarios

  1. Valdría la pena que hicieran algo lejos del famosísimo “Hola Mundo” porque cuando se requiere hacer cosas con datos, formularios de capturas de datos con diferentes objetos, resulta, que tal cosa no lo hace y luego tenemos que andar buscando “trucos” para poder emular cierto comportamiento.

    En lo personal, prefiero que evolucione un poco mas en esa parte Adobe Flex para poder hacer algo para dispositivos móviles.

    Tuve una experiencia desarrollando una App para iOS y porque me gusta AS3 me dispuse hacerlo en Adobe Flash Builder 4.5, después de darme de topes con algunos objetos y de poca información en la web, desistí y lo hice con xCode y listo.

    Por eso, prefiero esperar un poco mas para meterme a desarrollar para dispositivos móviles con Adobe Flex.

    Claro, comento mi experiencia personal. Puede que a otros les haya ido mejor que a mi.

    Responder
    1. Entiendo tus inquietudes y agradezco tus comentarios.

      La guía aún esta en desarrollo y son aportes como el tuyo los que nos ayudan a irla moldeando de acuerdo al gusto de la comunidad, no te voy a mentir en las primeras entregas seguramente veremos el famosísimo “Hello World” como en la mayoría de los ejemplos/tutoriales de cualquier tecnología, sin embargo para aquellos usuarios más avanzados he ido preparando unos cuantos tips de experto que irán complementando cada uno de los capítulos y al final haremos cosas que se integren con datos.

      Respecto a si Flex es viable o no para construir aplicaciones móviles depende mucho del enfoque de la aplicación, en definitiva si el rendimiento es algo crucial no sería mi primera opción como tampoco lo sería usar otro framework y/o librería tipo Phonegap, Appcelerator, etc. pero por otra parte si queremos cubrir la mayor cantidad de plataformas con una sola base de código, tecnologías como Flex resultan una alternativa muy interesante hoy en día.

      Saludos, Edgar

  2. Pues esta es una guía para comenzar a desarrollar con Flex y la BBPlaybook. Debo decirte que el desarrollo para mobiles con Flex es realmente rápido y sencillo pero si debes tener conocimientos de POO y AS3, de cualquier forma siempre hay recursos avanzados como tv.adobe.com o http://www.adobe.com/devnet.html para el tipo de necesidades específicas que tienes

    Saludos

    Responder
    1. At last! Someone with real eperxtise gives us the answer. Thanks!

  3. @Edgar, yo también quiero una app que se conecte a alguna red social y lea cualquier Hola mundo que están escribiendo. Así nos retas e inquietas desde el inicio :)

    Muy buena la introducción, me quedo con ganas de leer más. En particular vengo siguiendo mucho todos los avances de Adobe con sus herramientas para pensar en dispositivos móviles. Imagino que esta estrategia que ya tienen funcionando con el Playbook fácilmente puede ser emulada para otros dispositivos.

    Responder
    1. Christian, seguramente tendremos ejemplos con alguna red social hacia el final de la guía. Si te ha gustado la introducción espera a ver los siguientes capítulos que ya están más dinámicos al respecto de las cosas que se pueden hacer.

      Como bien lo indicas Adobe le esta apostando fuerte al tema de los dispositivos móviles y ahora después de la adquisición de Nitobi y el anuncio de los native extensions para AIR 3 creo que veremos cosas muy interesantes en ese terreno.

  4. German David Ruiz Figueroa

    Una pregunta, esta herramienta sirve también para los Smartphone BB?

    Responder
    1. German,

      No esta alternativa aún no está disponible para Smartphones de BlackBerry, en cuando salgan las primeras terminales con QNX instalado la realidad será diferente :-)

      Saludos

  5. Hey no pude descargar los programas necesarios para comenzar :S ayuda porfa :)

    Responder
    1. Diego, solo hay que entrar a las ligas que se mencionan. En el caso de Flash Builder te recomiendo checar en http://www.adobe.com/products/flash-builder.html

  6. Edgar Villafaña

    Saludos al tocayo Edgar y a Sergio, y de nuevo felicitarlos por sus respectivas exposiciones en el AdobeCamp en León Gto.
    Como le habia comentado a SErgio en la reunión de León, estaba buscando información para comenzar el desarrollo para Blacks y profundizar mas en el entorno de FLEX.
    Estare al pendiente para seguir los pasos de la guia y hacerles muchas preguntas!

    Un abrazo y felicitaciones!

    Responder
    1. Muchas gracias tocayo, espero que la guía sea de tu agrado y cualquier comentario para mejorarla no dudes en hacerlo por favor :-)

  7. Ricardo

    Que ventajas tenemos entre desarrollar con Flex vs HTML 5, JQuery? Me interesa mucho saber, debido a que estamos apunto de empezar el desarrollo de una app movil, y el debate es que tecnologia utilizar.
    Saludos.

    Responder
    1. Ricardo,

      Es un buena pregunta y probablemente en mi comentario encuentres una opinión más que la respuesta a ¿cuál es mejor? porque en realidad son enfoques un tanto diferentes.

      Voy a suponer que estamos hablando de apps nativas solamente ya que al intentar comparar Flex para mobile (apps nativas) VS HTML5 + jQuery Mobile (web apps) nos haría falta algo en la ecuación de HTML5 para llegar a apps nativas, llámale Appcelerator, Phonegap, etc. dicho lo anterior estas serían mis consideraciones…

      PROs de Flex

      - Un muy buen ambiente de desarrollo (Flash Builder) integrado a diferentes plataformas, en el caso de PlayBook y Android inclusive puedes hacer testing “over the air”

      - Lenguaje de programación muy poderoso AS3, que les va permitir acceder a librerías de sistema, audio, sonido, etc. Además que para alguien que programa en Javascript será muy fácil aprenderlo.

      - Los componentes de Flex son bastante fáciles de reutilizar en otros proyectos, no digo que con otras tecnologías no se pueda pero es más complejo.

      PROs de HTML5

      - Es un estándar web abierto y eso para muchas personas es un plus porque pueden mantenerse un poco más libres

      - El desarrollo es muy sencillo, literal solo requieres de un bloc de notas y un browser.

      - Es relativamente fácil encontrar desarrolladores tanto de frontend como de backend que estén familiarizados con Javascript.

      En fin son algunos puntos que comparto contigo pero como siempre la última respuesta la tienen ustedes, mi recomendación es que prueben ambas tecnologías se van a encontrar cosas muy atractivas de ambos lados.

  8. Ricardo

    Muchas gracias Edgar por tu respuesta, me agrada, en lo personal prefiero el desarrollo con Flex :) , es muy potente y relativamente fácil. Saludos y estaré a nuevas noticias y post. Por cierto los felicito por “Flex para playbook”.

    Responder
  9. Ricardo

    Hola que tal Edgar, nuevamente molestandote, fijate que aqui en el trabajo tenemos un dilema y un rumor, el dilema es que desarrollamos una aplicación web con Flex, y esta aplicación el cliente la quiere para dispositivos mobiles, la aplicación tiene cosas interesantes como drag and drop, custom charts, custom components, y mucho skin. El dilema es que, el lider del poryecto ve ventajas a desarrollar la app con HTML5 y jquery, y nosotros (los desarrolladores del front) vemos ventajas en desarrollarlo con Flex. Que consejo nos podrias dar?, ya que tu eres un experto en Flex y aparte conoces HTML5 y jquery. Y el rumor, es que dicen, que segun Adobe acepto su derrota en el desarrollo mobile, te paso un link que nos hicieron llegar a nuestro correo del trabajo: http://blogs.ge.com/dmt/2011/11/09/adobe-admits-defeat-on-flash-for-mobile/. Me gustaria saber si tu sabes algo de esto, o solo es un rumor, o una broma del mal gusto jejejejeje. Saludos y espero me puedas ayudar con esto, por cierto estoy atento a la guia de “Desarrollo para la PlayBook con Flex”, esta muy buen, xq explicas todo, desde la estructura, el ambiente, creeme que he aprendido mucho con esta gruia, gracias :)

    Responder
    1. Ricardo,

      Una disculpa por la tardanza en responder este comment, justo tuve unos días de locura por los anuncios de Adobe de hace semana y media (que seguramente ahora todos sabemos un poco más) y organizando el Latin Flash Tour en la Ciudad de México.

      Por cierto al respecto del tema hice una recopilación en mi blog http://activ.wordpress.com/2011/11/15/el-futuro-de-html5-es-flash/

      Y en cuanto a tu pregunta sobre el desarrollo móvil con Flex o HTML5 creo que hay algunas variables a considerar. Lo primero es que ambas partes (tu líder de proyecto) y ustedes (desarrolladores del front) sepan que con ninguna de las dos opciones van a alcanzar el mismo rendimiento que con una tecnología nativa, dicho sea esto las opciones cross-platfom como AIR, Phonegap o Appcelerator tienen sus pros y contras en el desarrollo. El pro que comparten todas estas opciones es obviamente que escribes tu código en una tecnología compatible para múltiples plataformas, ya de ahí vamos a encontrar particularidades. Por ejemplo algo de lo que más me gusta de appcelerator es que te permite usar los componentes nativos, lo que más me gusta de AIR son sus herramientas de desarrollo y en cuanto a Phonegap su facilidad de uso.

      Creo que bien podrían tomar ambos acercamientos Flex y HTML5 para un desarrollo pequeño y ver con cuál se adaptan mejor, estoy seguro que encontrarán beneficios en cada modelo de desarrollo.

      Saludos, Edgar

  10. Es un poco molesto para un usuario comun que no esta acostumbrado a utilizar software para optimizar la BB Playbook, me encuentro desilusionado porque no puedo utilizar mi Playbook por la limitacionen sus aplicaciones, basta decir que el Documents To Go se encuentra pesimo y no se como agregarle una versión que premiun..
    En un inicio un amigo me instalo una aplicacion andriod, trabajaba bien, pero al actualizar el programa se fue la aplicacion y quede …..
    Saludos

    Responder
    1. Francisco,

      Entiendo tu frustración como usuario siempre buscamos que la tecnología se simple y fácil de utilizar para facilitar nuestras vidas. Creo que varias de las quejas que ha tenido PlayBook se han mejorado en la versión 2.0 del sistema operativo próxima a salir para el público en general, te invito a echarle un vistazo próximamente.

      Así mismo para alguna queja y/o sugerencia de un nivel un tanto más general te dejo el link de los foros de soporte de RIM:

      http://foros.blackberry.com/t5/BlackBerry-PlayBook/bd-p/Playbook

      Saludos, Edgar

  11. JAM

    En la siguiente liga estan todos los programas necesarios para comenzar con este excelente guia:
    http://us.blackberry.com/developers/tablet/adobe-downloads.jsp

    Comenzemos con las descargas.. por cierto, se puede usar esto programando en ASP clasico?

    Responder
    1. JAM,

      Es posible programar el backend con la tecnología que gustes e integrarlo con Flex ya que solo funciona como una capa de presentación y para el caso de aplicaciones nativas se pueden aprovechar componentes como HTTPService para integrarse a algún servicio externo.

      Saludos, Edgar

Deja tu Comentario

Maestros del Web se reserva el derecho de moderación de los comentarios. Evita utilizar palabras soeces, ataques directos, descalificativos, insultos, de lo contrario tu comentario será eliminado.


Sobre el Autor

Edgar Parada

Edgar Parada
Adobe Community Professional y Manager del Adobe User Group RIActive en México. Sus principales fortalezas están en el área Web y Dispósitivos Móviles. Trabaja con la Plataforma Flash y ha sido instructor en diferentes centros de entrenamiento AATC y en la DGCTIC de la UNAM. Es parte del equipo de MadeInFlex, instructor online de video2brain y director de Activ, un Centro de Capacitación Autorizado por Adobe.

Últimos artículos:

Más artículos de Edgar Parada

Acerca de
Maestros del Web nace cuando intentamos traducir Webmaster al Español. Nacimos orientados al diseño y desarrollo web. Hoy somos un espacio de apoyo para los entusiastas que participan en proyectos en la red.
Leer más de Maestros del Web