Entrega lenguaje dinámico para aplicaciones móviles de Adobe

Este artículo fue originalmente escrito en Inglés. Texto en otros idiomas se proporcionan a través de la traducción automática.

Recientemente, en la conferencia de desarrolladores de Adobe Adobe MAX 2011 en Los Angeles, representantes del grupo de la globalización Adobe tenido la oportunidad de presentar – por primera vez en público – cómo estamos visualizando el despliegue de recursos localizados (textos, cadenas de la interfaz de usuario) a las aplicaciones móviles en el campo.

En su presentación “Entrega lenguaje dinámico para aplicaciones móviles” (aquí como un vídeo de Adobe MAX), Daniel Nay, el gerente de ingeniería, y Dirk Meyer, el gerente de producto, demostrado cómo las actualizaciones o los idiomas completamente nuevo, pueden ser entregados a las aplicaciones en los dispositivos móviles en cuestión de segundos. (En el video de presentación, se pueden encontrar secuencias de demostración en 7:00 y 35:50 en la línea de tiempo.)

La localización de las aplicaciones móviles

Al igual que en todas las demás áreas de la creación de software, el desarrollo de aplicaciones móviles, también, está aplicando cada vez más “desarrollo ágil” principios: Corto “sprints” están ayudando a poner en práctica las características específicas de una manera específica y para entregarlos en manos de los usuarios y clientes con mayor rapidez, en comparación con los productos de software de escritorio. Al mismo tiempo, y como consecuencia del nuevo paradigma de desarrollo, el tiempo entre la frecuencia “empuja” de las nuevas versiones del producto se hacen más cortos y se mide sólo en las últimas semanas. Como consecuencia de ello, un usuario final está recibiendo versiones actualizadas de productos con mayor frecuencia. Afortunadamente, su instalación sólo toma un minuto o menos, y (más importante para algunos!) que se pueden saltar, si no parece atractivo o si no hay tiempo para la actualización.

Entrega de lenguajes dinámicos (DLD): La localización de la respuesta a un desarrollo ágil

En el mundo de los ciclos de desarrollo cortos y frecuentes actualizaciones, las diferencias entre las versiones de una aplicación móvil a menudo consisten únicamente en una sola característica, o algunas correcciones para los errores de software. En consecuencia, desde la perspectiva de la localización, el delta entre las cadenas localizadas a partir de una versión a la siguiente, a menudo es sólo una pequeña. También podría suceder que los casos, que no es más que una solución para una cadena localizada que constituye una actualización. En situaciones como la que, puede parecer un poco fuera de proporción para iniciar un ciclo completo de localización para un cambio tan pequeño. Porque no importa si los cambios son grandes o pequeñas, traductores, construcción de ingenieros y probadores, todos tienen que seguir un flujo de trabajo complejo, con muchas dependencias mutuas antes de que el producto finalmente puede llegar a la aplicación(blicación) “tiendas” o el “los mercados”. De utilizar esta poderosa maquinaria, diseñado para localizar sin problemas las aplicaciones de escritorio más complejos, sólo pequeños cambios, y hacerlo con mayor frecuencia que en el “no ágiles” pasado? Otra vez, un poco fuera de proporción, parece …

Aquí y ahora, DLD ofrece una nueva forma de desplegar los recursos lingüísticos, como las cuerdas de la interfaz de usuario u otros textos utilizados en una aplicación. Y lo hace sin entorpecer los flujos de trabajo de ingeniería rápido y ágil y sin retrasar la entrega de aplicaciones posteriores. En lugar, Flujos de trabajo de larga distancia nacional se han diseñado para que coincida con los ciclos de desarrollo ágil, incluyendo entregas rápidas y frecuentes a los usuarios finales. DLD permite la comprobación de las mejoras y modificaciones al instante, y permite entregas aprobado para llevar a cabo en tiempo real, ya sea en entornos de ensayo o de producción.

Principios de DLD

DLD tecnología de manera efectiva desacopla la entrega de la aplicación principal del móvil (más uno o más idiomas principales) desde el despliegue de las entregas posteriores del lenguaje (como soluciones de interfaz de usuario o cadena de nuevos lenguajes). Lo hace a través de dos vías totalmente independientes para conseguir esos recursos a un cliente. Así es como …

DLD habilitación & despliegue

Ante todo, una aplicación de base DLD habilitado toma la ruta usual y llega al cliente como un producto totalmente probado y funcional al ser descargado de un sitio web, “tienda”, o “mercado”. DLD habilitado significa que la solicitud debe integrar una biblioteca DLD para llevar a cabo tareas relacionadas con el DLD (esta integración es muy pobre y, a menudo se puede lograr con una sola línea de código). El otro requisito para la solicitud a que se prepare para la larga distancia nacional es que debe ser diseñada en un “de uso internacional” moda: Las cadenas tienen que ser reemplazada, la duración variable de cadena de la interfaz debe ser posible a través de dinámicas capacidades de diseño de interfaz de usuario, y más. La buena noticia aquí: Es ya una práctica mejor aceptada para escribir software – no importa si es compatible o no DLD – en un “de uso internacional” manera para que soporte las características de internacionalización y de localización fácil.

Si, en un momento posterior en el tiempo, cadenas de texto nuevos o actualizados o un nuevo lenguaje por completo deben ser entregados, una ruta de distribución a través de la segunda “localización de la nube” se utilizará, totalmente independiente de la implementación de aplicaciones vía. Las entregas se llevará a cabo la localización disponible en los servidores, preguntó por la aplicación de vez en cuando las actualizaciones del lenguaje. La frecuencia de estas consultas se pueden establecer con la ayuda de las preferencias en la aplicación y, por supuesto, el usuario siempre debería ser capaz de optar por esta funcionalidad completamente.

Personalización de aplicaciones multilingües y de fácil acceso maneras

Además de no intrusiva, actualizaciones al instante la lengua y la opción de añadir nuevos idiomas cuando una aplicación está ya en manos de los usuarios, hay más maneras de cómo podemos ver DLD apoyar nuevas características de software para móviles multilingüe.
Por ejemplo, si una aplicación no viene en el idioma preferido por el usuario, DLD funcionalidad se puede utilizar para comprobar si este lenguaje podría estar disponible en el “localización de la nube”. Aplicaciones más inteligentes en realidad puede notar que entre sus idiomas actuales no hay ninguno coincida con el (preferido por el usuario) sistema de la lengua … y activar una alerta para descargar un “paquete de idioma” en el idioma del sistema, si está disponible. Así, DLD se puede utilizar para mejorar la experiencia de usuario multilingüe, donde las lenguas y las actualizaciones de idiomas están disponibles en cualquier momento: Para los, la necesidad de localizar, descargar o instalar un paquete de aplicaciones completas ya no existe.

Finalmente, es importante tener en cuenta (el vídeo de presentación muestra esta), que las actualizaciones están disponibles en el idioma de la aplicación que se ejecuta de inmediato, sin tener que reiniciar o realizar otro tipo de acción del usuario: nuevos recursos se cargan en segundo plano y aparecen perfectamente, una vez que se han descargado e integrado.

Beneficios de DLD

En resumen, DLD viene con una serie de beneficios para los consumidores de aplicaciones móviles:

  1. “Instante, en tiempo real” la entrega y la integración de las actualizaciones de localización y soluciones para aplicaciones móviles en el campo.
  2. Actualizaciones del lenguaje se puede configurar según las preferencias del usuario, que van desde totalmente “transparente” a “plenamente informados”.
  3. Otros idiomas deseados por el usuario después de una instalación de la aplicación, se pueden agregar a la demanda, sin tener que descargar e instalar otro paquete de solicitud completo.
  4. Lenguas falta complementar un ambiente dispositivo local, por ejemplo, después de cambiar el idioma del sistema, puede ser descubierto y se instala si el usuario así lo desea.

Por otra parte, Los equipos de desarrollo de software también están entre los que ahorran tiempo y esfuerzo a través de la tecnología de larga distancia nacional:

  1. DLD la integración de la biblioteca es “mínimamente invasiva” (a menudo, una sola línea de código es necesario).
  2. Aprovechando la nube de localización, “de uso internacional” aplicaciones serán capaces de recibir actualizaciones de idioma siempre que estén disponibles durante el proceso de desarrollo.
  3. DLD separa el desarrollo de aplicaciones de flujos de trabajo de localización. De esta manera, que elimina muchos procesos y las dependencias de la programación entre los dos.
  4. El trabajo de desarrollo puede continuar hasta que al final del ciclo y durante el tiempo que la aplicación mantiene un estado listo para recibir las cadenas de varios idiomas con diferentes propiedades.
  5. El trabajo de desarrollo puede continuar hasta los hitos generales son que lo requieran para prepararse para el empuje directo. Una interfaz de usuario no tiene que ser “congelado” con la llegada de recursos de localización.
  6. Trabajo de prueba se vuelve más eficiente y no irá acompañada de más por las tareas repetitivas de construcción e instalación de la aplicación, antes de la prueba para cada idioma o fijar la localización. En lugar, el tiempo que fija el lenguaje están involucrados, que puedan ser entregados a la aplicación al instante y los técnicos pueden comprobar su integración en la aplicación sin demora.

En pocas palabras …

DLD es el primer flujo de trabajo permitiendo inmediata, dinámico, y en la demanda de localización de una aplicación durante el post-desarrollo de los Estados. Esto es posible a través de hacer que los recursos locales disponibles como actualizaciones, sin necesidad de volver a implementar el idioma de la aplicación combinada de paquetes de su conjunto.

Entre los ventajas del enfoque de DLD, una casi instantánea “time-to-market/user” y un desarrollo mucho más simplificado / localización de interacción, son probablemente los dos más valiosos. Desde muchos ángulos y perspectivas, DLD es un rápido y modo de ahorro de recursos para llevar a cabo el despliegue de localización para aplicaciones móviles que funcionan en una variedad de dispositivos.

Esperar a verlo en su aplicación favorita Adobe móvil en algún momento de la (cerca de?) futuro.

La invocación de la UCI de aplicaciones de Adobe AIR (Parte 2): el uso de Flash Builder 4.6

Este artículo fue originalmente escrito en Inglés. Texto en otros idiomas fue proporcionada por la traducción automática.

En mi artículo anterior del blog http://blogs.adobe.com/globalization/invoking-icu-from-adobe-air-applications-2, He demostrado con las extensiones de AIR3 ActionScript nativos función para invocar la UCI de una aplicación AIR. Usé las herramientas de desarrollo de AIR para compilar y generar los diversos componentes. En este artículo, Yo demuestro lo mismo con la versión preliminar de Adobe Flash Builder 4.6. Es mucho más simple de hacer esto en Flash Builder para evitar la línea de comandos complicados.

La versión preliminar de Adobe Flash Builder4.6 tiene una nueva versión del SDK de Flex 4.5.2, que se ha integrado AIR3. Por favor, descargue los archivos de muestra de la siguiente manera.

Usted necesitará el siguiente software para construir una extensión de la UCI para la plataforma AIR.

1 Edificio extensión UCI para Adobe AIR

Adobe AIR t nativo extensiones, también conocida como "anemia" o archivos "ENA" se archivan los paquetes. Estos consisten en

  • Clases de ActionScript envoltorio poner en DLLs externas
  • Los archivos DLL externa
  • XML que describe los detalles del archivo de archivos DLL externa

Los archivos archivados ANE se utilizan igual que las bibliotecas de SWC en la integración en una aplicación AIR. En otras palabras, ANE es un archivo de la biblioteca pública y se ha API de ActionScript.

Cubriendo todos los detalles sobre la extensión de ActionScript es demasiado para este artículo del blog, pero voy a explicar los pasos para crear esta muestra y ejecutar. A continuación se muestran los pasos secuenciales y los comandos.

1.1 DLL de Windows del edificio AIR UCI Extensión

1) La carpeta AirIcuExtensionWin tiene el estudio Visual solución "AirIcuExtension.sln '. Abrir en MS VS2010.

2) El AIRIcuExtension.cpp archivo tiene el código necesario necesario para interactuar con Adobe AIR 3. También tiene las rutinas de envoltura llamadas UCI funciones C.

3) Este es un proyecto DLL y el resultado de la compilación es AirIcuExtension.dll

1.2 Edificio ActionScript Library en FB 4.6

1.2.1 La construcción de la biblioteca de ActionScript

Crear un nuevo proyecto de biblioteca de ActionScript y el nombre de AirIcuExtension. Vea el archivo descargado ActionScript FB4.6 proyecto de biblioteca.

1.2.2 Embalaje extensión nativa ActionScript

Para un paquete de ANE, usted todavía tiene que hacerlo en línea de comandos. FB 4.6 no tiene una función hasta el momento para generar ANES en el IDE.

Abra la bandeja de AirIcuExtension.swc es un archivo comprimido. Abrirlo con WinRAR o WinZip programa y extraer el library.swf archivo en el paquete de SWC en el AirIcuExtension bin carpeta.

La carpeta src recursos contiene el archivo extension.xml, AirIcuExtension.dll y la UCI dlls icudt48.dll, icuuc48.dll, icuio48.dll y icuin48.dll. El archivo external.xml define los detalles de la biblioteca externa a AIR runtime.

Por razones de simplicidad, lugar de la AirIcuExtension.dll, UCI dlls y archivos en extension.xml AirIcuExtension bin carpeta. Todos estos archivos son empaquetados en un archivo comprimido llamado AiricuExtension.ane con el siguiente comando.

C:\FB4.6 SDK bin adt-package-storetype pkcs12-storepass <passwd> -Keystore <AIR certificado> -TSA no son objeto de ane-AirIcuExtension.ane extension.xml swc AirIcuExtension.swc plataformas Windows x86 library.swf AirIcuExtension.dll icudt48.dll icuin48.dll icuio48.dll icuuc48.dll

Uso Adobe FlashBuilder4.6 o C:\FB4.6 SDK bin se han programa, se puede generar un certificado de AIR.

La salida es un archivo AirIcuExtension.ane en el AirIcuExtension bin carpeta.

1.3 La construcción de la AirIcuExtensionTest.mxml programa de prueba

Ahora que hemos construido y empaquetado del paquete de la extensión nativa AiricuExtension.ane, estamos dispuestos a usar este y llamar a los servicios de la UCI en un programa de prueba.

La carpeta AirIcuExtensionTest src contiene el archivo de prueba AirIcuExtensionTest.mxml. El archivo descriptor AirIcuExtensionTest-app.xml tiene los detalles de extensión nativa.

Flash builder4.6 tiene una nueva función de vincular las aplicaciones de Flash con archivos de ANE. Como puede ver en la orden del FB4.6 las propiedades del proyecto "Flex Build Path ', hay una nueva pestaña para Extensiones nativas. Uso 'Añadir ANE " botón, agregar el archivo AirIcuExtension.ane presente en la carpeta AirIcuExtension / bin como se muestra a continuación.

Ver también el comando 'paquete Flex construcción ", en las propiedades del proyecto, hay una nueva pestaña para Extensión de los nativos. Por favor, asegúrese de que la casilla de verificación es AiricuExtension En.

La salida swf AirIcuExtensionTest.swf se coloca en la carpeta bin-debug.

1.4 La construcción de paquete de AIR para ejecutar AirIcuExtensionTest

El último paso es empaquetar el AirIcuExtensionTest arriba. SWF y archivos AirIcuExtension.ane en una carpeta ejecutable AIR. Podemos hacer esto en FB4.6 ahora en lugar de utilizar la línea de comandos tediosa.

  • EN FB4.6, seleccione AiricuExtensionProject y ejecutar el comando de menú Proyecto->Exportación versión de lanzamiento ...
  • En el diálogo posterior, elegir Instalador nativo firmado botón de radio. Sólo podemos crear instaladores nativos como estamos usando OS paquete específico ANE.
  • En el Extensiones nativas lengüeta, asegúrese de que el AirIcuExtension.ane casilla de verificación está habilitado.
  • Terminar de crear la versión de lanzamiento después de entrar en las credenciales de aire correcta certificado.

La salida del comando anterior es un instalador AirIcuExtensionTest.exe. Mediante la ejecución de lo, puede instalar el programa de pruebas.

2 Conclusión

La muestra ilustra la manera de invocar a la UCI de ActionScript. La extensión de AIR en la UCI es fácil de construir con la próxima Builder AdobeFlash 4.6 liberación. ANE es una gran característica para los desarrolladores de AIR y aplicaciones AIR pueden hacer uso de la plataforma o la unidad de cuidados intensivos proporcionan servicios de globalización.