Invocando UTI a partir de aplicativos Adobe AIR (Parte 2): usando o Flash Builder 4.6

Este artigo foi escrito originalmente em Inglês. Textos em outros idiomas foram fornecidos via tradução automática.

Em meu artigo anterior http://blogs.adobe.com/globalization/invoking-icu-from-adobe-air-applications-2, eu demonstrei o use das extensões de AIR3 ActionScript nativa característica de invocar UTI de um aplicativo AIR. Eu usei as ferramentas de desenvolvedor AIR para compilar e criar vários componentes. Neste artigo, Eu demonstro o mesmo usando a versão pré-lançamento do Adobe Flash Builder 4.6. É muito mais simples de fazer isso no Flash Builder evitando a linha de comando complicado.

A versão pré-lançamento do Adobe Flash Builder4.6 tem uma nova versão do Flex SDK 4.5.2, que tem AIR3 integrada. Faça o download do arquivos de exemplo da seguinte forma.

Você vai precisar do software a seguir para construir uma extensão da UTI para a plataforma AIR.

1 Extensão UTI Edifício para Adobe AIR

Adobe AIR extensões nativas t, também conhecido como 'ane' ou 'ANE "os processos foram arquivados pacotes. Estes consistem em

  • Classes wrapper ActionScript pôr em DLLs externas
  • O DLLs externas
  • Detalhes do arquivo XML descrevendo de DLLs externas

Os arquivos arquivados ANE são usados ​​apenas como bibliotecas SWC na integração em um aplicativo AIR. Em outras palavras, ANE arquivo é uma biblioteca e tem público ActionScript APIs.

Cobrindo todos os detalhes sobre a extensão ActionScript é demais para este artigo no blog, mas eu vou explicar os passos para criar esse exemplo e executar. Abaixo estão as etapas seqüenciais e comandos.

1.1 DLL Edifício do Windows Extensão AIR UTI

1) A pasta AirIcuExtensionWin tem o estúdio Visual solução "AirIcuExtension.sln '. Abrir esta em MS VS2010.

2) O AIRIcuExtension.cpp arquivo tem o código necessário necessário para fazer a interface com o Adobe AIR 3. Tem também as rotinas wrapper chamar funções C UTI.

3) Este é um projeto DLL ea saída de construção é AirIcuExtension.dll

1.2 Edifício ActionScript Biblioteca em FB 4.6

1.2.1 A construção da biblioteca ActionScript

Criar um novo projeto de biblioteca ActionScript e nomeá-la AirIcuExtension. Ver o projeto de biblioteca baixado ActionScript FB4.6.

1.2.2 Embalagem extensão nativa ActionScript

Para um pacote ANE, você ainda precisa fazê-lo na linha de comando. FB 4.6 não tem ainda uma característica de gerar ANES no IDE.

Abra o bin AirIcuExtension.swc é um arquivo zipado. Abri-lo usando WinRAR ou WinZip programa e extrair o library.swf arquivo no pacote para o swc AirIcuExtension bin pasta.

A pasta src resources contém o arquivo extension.xml, AirIcuExtension.dll e UTI dlls icudt48dll, icuuc48dll, icuio48.dll e icuin48.dll. O arquivo external.xml define os detalhes biblioteca externa para AIR runtime.

Para simplificar, coloque o AirIcuExtension.dll, UTI dlls e arquivos em extension.xml AirIcuExtension bin pasta. Todos esses arquivos são compactados em um arquivo zipado chamado AiricuExtension.ane usando o seguinte comando.

C:\FB4.6 SDKs bin adt-package-storetype pkcs12-storepass <senha> -Keystore <Certificado de AIR> -tsa nenhum alvo ane AirIcuExtension.ane extension.xml-swc AirIcuExtension.swc-plataforma Windows x86-library.swf AirIcuExtension.dll icudt48.dll icuin48.dll icuio48.dll icuuc48.dll

Utilização Adobe FlashBuilder4.6 ou C:\FB4.6 SDKs bin ter tomado programa, pode-se gerar um certificado AIR.

A saída é um arquivo AirIcuExtension.ane no AirIcuExtension bin pasta.

1.3 Construindo o AirIcuExtensionTest.mxml Programa de teste

Agora que nós construímos e embalados o pacote de extensão nativa AiricuExtension.ane, estamos prontos para usar esse e chamar os serviços de UTI em um programa de teste.

A pasta AirIcuExtensionTest src contém o arquivo de teste AirIcuExtensionTest.mxml. O arquivo descritor AirIcuExtensionTest-app.xml tem os detalhes de extensão nativa.

Flash Builder 4.6 tem um novo recurso para ligar aplicações Flash com arquivos ANE. Como você vê a partir do comando FB4.6 propriedades do projeto "Flex Build Path", há uma nova guia para Native Extensions. Utilização 'Ed Lane' botão, adicione o arquivo presente na pasta AirIcuExtension.ane AirIcuExtension / bin, como mostrado abaixo.

Veja também o comando 'Pacote Construindo Flex' nas propriedades do projeto, há uma nova guia para Extensão nativa. Por favor, certifique-se que a caixa de seleção é AiricuExtension Em.

A saída de arquivos swf AirIcuExtensionTest.swf é colocado na pasta bin-debug.

1.4 Construir pacote AIR para executar AirIcuExtensionTest

O passo final é para empacotar o AirIcuExtensionTest acima. Swf e arquivos AirIcuExtension.ane em uma pasta executável AIR. Podemos fazer isso em FB4.6 agora, em vez de usar a linha de comando tedioso.

  • IN FB4.6, selecione AiricuExtensionProject e executar o comando menu Project->Exportação de Lançamento Construir ...
  • Na caixa de diálogo que se seguiu, escolher Assinado instalador nativo botão de rádio. Só podemos criar instaladores nativos, como estamos usando OS específicos pacote ANE.
  • Na tab Native Extensions tab, certifique-se que a checkbox AirIcuExtension.ane esteja selecionada.
  • Terminar de criar a versão de compilação depois de entrar as credenciais certificado correto AIR.

A saída do comando acima é um instalador AirIcuExtensionTest.exe. Ao executá-lo, você pode instalar o programa de teste.

2 Conclusão

Este exemplo ilustra como invocar ICU do ActionScript. A AIR extensão UTI é fácil de construir usando os próximos AdobeFlash Builder 4.6 lançamento. ANE é um ótimo recurso para os desenvolvedores AIR e aplicações AIR pode fazer uso da plataforma ou UTI desde serviços de globalização.

Invocando UTI a partir de aplicativos Adobe AIR

Este artigo foi escrito originalmente em Inglês. Textos em outros idiomas foram fornecidos via tradução automática.

Adobe Flash e AIR são plataformas ubíquas para desenvolver aplicações de internet rica. O Flash é usado para aplicativos baseados em navegador e AIR é utilizada para desenvolver aplicações de plataforma nativa. Ambas as plataformas têm apoio considerável para a globalização. Recursos de globalização habilitação como formatação do locale / parsing, colação, case transforms, localização e multi-lingual de processamento de texto são suportados por ambas as plataformas. Mas alguns recursos mais globalização como a normalização de texto, Transliteração, Unicode propriedades de caracteres, conversões de codificação, detecções charset, Utilitários seqüência de caracteres Unicode etc ainda estão desaparecidas no Adobe AIR e plataformas em Flash. Uma das principais razões para não adicionar todos esses recursos dentro das plataformas Adobe tempo de execução é o tamanho do software.

Para superar o problema limitação de tamanho, Adobe AIR e Flash pode chamar os serviços de bibliotecas dinâmicas externas por meio do ActionScript. Existem algumas bibliotecas conhecidas externo, que tem suporte a globalização ricos, como UTI, GNU glib, Verisign IDN biblioteca para citar alguns. Felizmente a próxima Adobe AIR 3.0 (agora disponível como Adobe pré-lançamento) tem um recurso maravilhoso chamado ActionScript extensões nativas, que é cerca de interface de programação ActionScript para uma biblioteca de código nativo como o MS Windows DLL, Os X FrameWork, Android JAR ou biblioteca compartilhada ou iOS biblioteca estática. Por favor, consulte Adobe AIR3 site beta http://labs.adobe.com/technologies/flashplatformruntimes/air3/ sobre como baixar e participar do Adobe AIR de pré-lançamento. Por favor, tome nota que este recurso é _somente_ extensões nativas disponíveis no Adobe AIR plataforma, não na plataforma Flash.

Neste blog, Eu demonstrei a amostra (Baixar air_icu ) aplicação para invocar UTI de um aplicativo Adobe AIR na plataforma Windows. Os leitores são advertidos de que este é apenas software amostra ilustração e por nenhum software de qualidade dos meios de produção. Por isso os leitores devem exibir discrição no uso deste software como é. O exemplo ilustra UTI quebra de palavra, quebrando sentença, utf-conversão e verificação de propriedade de caracteres Unicode.

Você vai precisar do software a seguir para construir uma extensão da UTI para a plataforma AIR.

1 Extensão UTI Edifício para Adobe AIR

Adobe AIR extensões nativas t, também conhecido como 'ane' ou 'ANE "os processos foram arquivados pacotes. Estes consistem em

  • Classes wrapper ActionScript pôr em DLLs externas
  • O DLLs externas
  • Detalhes do arquivo XML descrevendo de DLLs externas

Os arquivos arquivados ANE são usados ​​apenas como bibliotecas SWC na integração em um aplicativo AIR. Em outras palavras, ANE arquivo é uma biblioteca e tem público ActionScript APIs.

Cobrindo todos os detalhes sobre a extensão ActionScript é demais para este artigo no blog, mas eu vou explicar os passos para criar esse exemplo e executar. Abaixo estão as etapas seqüenciais e comandos.

1.1 DLL Edifício do Windows Extensão AIR UTI

1) A pasta AirIcuExtensionWin tem o estúdio Visual solução "AirIcuExtension.sln '. Abrir esta em MS VS2010.

2) O AIRIcuExtension.cpp arquivo tem o código necessário necessário para fazer a interface com o Adobe AIR 3 beta 2. Tem também as rotinas wrapper chamar funções C UTI.

3) Este é um projeto DLL ea saída de construção é AirIcuExtension.dll

1.2 Edifício ActionScript Biblioteca

1) Construa a biblioteca ActionScript usando o comando abaixo.

C:\Flex4.5.1 bin compc.exe-source-path src-incluem-classes com.adobe.extensions.AirIcuExtension-library-path externo C:\air3_beta2 frameworks libs ar airglobal.swc saída-bin AirIcuExtension.swc

O AirIcuExtension.as arquivo na pasta src com adobe extensions tem o AirIcuExtension public class que chama as rotinas de UTI. Nesta amostra, chamando breaker sentença UTI, disjuntor está, normalizador, utf-conversão e de propriedade de caracteres Unicode foram ilustradas.

1.3 Embalagem extensão nativa ActionScript

Abra o bin AirIcuExtension.swc é um arquivo zipado. Abri-lo usando WinRAR ou WinZip programa e extrair o library.swf arquivo no pacote para o swc AirIcuExtension / bin pasta.

A pasta src resources contém o arquivo extension.xml, AirIcuExtension.dll e UTI dlls icudt48dll, icuuc48dll, icuio48.dll e icuin48.dll. O arquivo external.xml define os detalhes biblioteca externa para AIR runtime.

Para simplificar, coloque o AirIcuExtension.dll, UTI dlls e arquivos em extension.xml AirIcuExtension bin pasta. Todos esses arquivos são compactados em um arquivo zipado chamado AiricuExtension.ane usando o seguinte comando.

C:\air3_beta2 bin adt-package-storetype pkcs12-storepass <senha> -Keystore <Certificado de AIR> -tsa nenhum alvo ane AirIcuExtension.ane extension.xml-swc AirIcuExtension.swc-plataforma Windows x86-library.swf AirIcuExtension.dll icudt48.dll icuin48.dll icuio48.dll icuuc48.dll

Utilização Adobe FlashBuilder4.x ou C:\air3_beta2 bin ADT programa, pode-se fazer um certificado AIR.

A saída é um arquivo AirIcuExtension.ane no AirIcuExtension / bin pasta.

1.4 Construindo o AirIcuExtensionTest.mxml Programa de teste

Agora que nós construímos e embalados o pacote de extensão nativa AiricuExtension.ane, estamos readu usar isso e chamar os serviços de UTI em um programa de teste.

O AirIcuExtensionTest pasta src contém o arquivo de teste AirIcuExtensionTest.mxml. O arquivo descritor AirIcuExtensionTest-app.xml tem os detalhes de extensão nativa. Usando o compilador mxml, AirIcuExtensionTest.swf é construído da seguinte maneira no AirIcuExtensionTest pasta.

C:\Flex4.5.1 bin compc.exe mxmlc configname = ar-external-library-path .. AirIcuExtension bin AirIcuExtension.ane saída-bin-debug AirIcuExtensionTest.swf — src AirIcuExtensionTest.mxml

A saída de arquivos swf AirIcuExtensionTest.swf é colocado na pasta bin-debug.

1.5 Construir pacote AIR para executar AirIcuExtensionTest

O passo final é para empacotar o AirIcuExtensionTest acima. Swf e arquivos AirIcuExtension.ane em uma pasta executável AIR. Execute o seguinte comando

C:\air3_beta2 bin adt-package-XnoAneValidate-storetype pkcs12-storepass <senha> -Keystore <Certificado de AIR> -tsa nenhum alvo-bundle AirIcuExtensionTest.air AirIcuExtensionTest-app.xml AirIcuExtensionTest.swf-extdir .. .. AirIcuExtension bin

A saída do comando acima é uma pasta AirIcuExtensionTest.air. Dentro da pasta, lá é AirIcuExtensionTest.exe. Você pode executar e ver o resultado.

2 Conclusão

Este exemplo ilustra como invocar ICU do ActionScript. A AIR extensão UTI é fácil de construir usando o à disposição do público Adobe Flex SDK e AIR3 Beta 2 SDKs. Será muito mais fácil fazer tudo isso no futuro Adobe Flash Builder IDE usando GUI. As vantagens deste recurso são

  • AIR desenvolvedores que procuram desenvolver os pedidos internacionais para desktop ou móvel têm o poder de UTI na mão. Muitas características Unicode, conversões de codificação, IDN conversão utilitários, processamento de strings, transforma e muitas características mais internacional pode ser facilmente codificado.
  • A extensão de UTI materna, uma vez construída pode ser usado qualquer desenvolvedor qualquer, pois é uma biblioteca.
  • O Actionscript APIs chamando UTI podem ser codificados utilizando as mesmas assinaturas como UTI C API. Isso elimina a curva de aprendizagem.
  • Desde UTI é em código nativo, desempenho não seja comprometida.
  • Uma vez que é UTI, os desenvolvedores podem esperar da cruz-plataforma comportamento em programas AIR.
  • Uma vez que a extensão é uma biblioteca AIR, Atualizações de UTI pode ser facilmente re-embalados para o arquivo ane.

No futuro, uma vez AIR3 é liberado, um total de extensão desenvolvido na UTI nativa com definições adequadas API será um grande projeto de globalização.

Adobe AIR Launchpad localizada

Este artigo foi escrito originalmente em Inglês. Textos em outros idiomas foram fornecidos via tradução automática.

Adobe AIR Launchpad v2.5.0, a ferramenta de desktop (criado por Plataforma Evangelista Greg Wilson & equipe) que ajuda os desenvolvedores Adobe Flex ® começar a construção de aplicações desktop e móveis implantado em Adobe AIR, agora está disponível em sete novos idiomas, além de Inglês: Francês, Espanhol, Alemão, Português, Russo, Chinês, e japonês.

Para mais detalhes sobre o Launchpad v2.5.0 novos recursos, incluindo as localizações, visita Holly é Schinsky (aka devgirlFL) Blog. A linguagem usada em tempo de execução é determinado com base no padrão OS linguagem. Até agora, feedback tem sido positivo. Se você deseja nos ajudar a melhorá-lo, poste uma mensagem no AIR Launchpad Forum.

Obrigado, a equipe de localização Flex