AIR 2.0/ Flash/ Flash Lite/ Flex/ Flex Mobile Framework/ Open-source/ RIA/ Slider Framework/ Symbian

Flex e AIR para dispositivos móveis brigando contra o bixo papão

Já haviamos comentado aqui no site, que a Adobe estava trabalhando em versões do Flex e AIR para dispositivos móveis.
Essa semana a coisa esquentou, mesmo sendo no Brasil uma época em que todos os olhares estão voltados para a maior festa brasileira “O Carnaval”, algumas pessoas já devem saber da notícia via twitter ou pela lista de discussão.
Foi ai que decidir escrever alguma coisa mais completa, detalhada e que lhe ajudasse a entender melhor quais os principais desafios existentes hoje na plataforma Flash Player e AIR. Durante o texto quando me referir à FP significa que estarei me direcionado ao Flash Player , interop à interoperabilidade, GC ao Garbage Collector e Mobile para qualquer dispositivo móvel, celular, tablets, smartphones.

As mudanças

De 24 meses para cá houve-se uma mudança grande na maneira como as pessoas interagem com aplicações comerciais, tais ações são impulsionadas por toques visuais, realidade aumentada, projeções sobre qualquer superficie, interop entre diversos tamanhos de telas.
Para se ter uma idéia do grande problema, tente criar um design ou um simples site que seja visualmente fiel em TODOS os navegadores existentes no Mundo. imaginou? Fez aquela cara de “é???”. É bem por ai que começa os desafios.
E um dos grandes desafios do projeto Open Screen project é fazer com que outras tecnologias tirem vantagem do FP, já que a idéia do projeto Open Screen Project é fazer com que você escreva para uma única plataforma (FP), e ela seja auto escalonada para qualquer outra plataforma sem se preocupar com resolução de tela.
No ambito geral, o projeto open screen project que facilitar a vida do desenvolvedor e habilitar outras indústrias de criação de conteúdo e fabricação de bens de consumo duráveis, tirar projetos da experiências ricas criadas com o FP.

Telas diferentes
Tal iniciativa do openscreen project tem ajudado bastante ao time de engenheiros do FP e do AIR runtime à adotar uma estratégia singular colocando a plataforma Flash em um ambiente não apenas voltado para monitores, mais também para dispositivos móveis, telas sensíveis a toques, projeções, realidade aumentada.

Voltando ao tamanho de telas, imagine o seguinte, existe hoje smartphones diferentes em tamanho e funcionabilidades, a mesma coisa acontece nos monitores de mesa, que vão desde 9″ até 60″ onde o FP é testado.
Agora no mundo dos telefones, há uma grande diferença entre não só resolução mais área tangível, sensível ou não ao toque, rendenização, matrix de pixels, leds, lcds, existe uma inifinidade de mudanças que agravam e muito o desenvolvimento de uma experiência rica para celulares.

Um exemplo disso é a foto abaixo, que foi retirada do site mobiforge.
screen_sizes_small

A grande jogada é que no mundo PC/MAC muitos usuários tem uma resolução média aplicável, por exemplo 1024×768, tendo isso em mão é fácil escalonar qualquer experiência para o usuário, seja ela feita em Flash /Flex / AIR / HTML. O dificil ocorre quando esse âmbito é mobile, como comentei acima.

Tais dificuldades geram um enorme esoforço em fazer funcionar tudo em uma API que torne simples e que da mesma maneira que você usa em PC você possa usar para TV, HTPC,PC, Tablet e Smartphones.
Ai é onde entre o tal do bixo papão.
Em outras plataformas de desenvolvimento é uma mão de duas vias, você ajeita em um canto e do outro acaba desajeitando o que você havia feito. Como é o caso recente onde o youtube não aguentava mais consertar o suporte para o IE 6 que acabou bloqueando o site para quem usar o IE6 e pedindo para que quem tiver ainda essa raridade, atualizasse para uma versão mais nova e com menos riscos.

Do nível de execução

Outro bixo papão do nível dispositivos móveis é a tal capacidade de processamento. Em média hoje no Brasil um PC popular possui 1GB de RAM, Processador 1.2Ghz, HD de 80GB e tela de 15″. Esse é o padrão de mercado Brasileiro, tendo isso em mente eu consigo gerar grandes experiências sem ter que perder na qualidade final.
No mundo de dispositivos móveis a coisa é totalmente diferente do que você está acostumado a fazer, já que o padrão de mercado atual é 133Mhz de processamento, 64kb de memória e 168kb de HD, levando em consideração as configurações padrões existentes.
O que deve levar que quando se desenvolve experiências ricas para o usuário final que tenha um celular, você deve levar em consideração esse fator de “padrão do mercado” em conta. À não ser que você desenvolva para um padrão já específico que é o caso do próximo bixo papão “Plataformas”.

Quando se trata de desenvolvimento para mobile, você tem que tratar o FP ou AIR com carinho respeitando muito o GC de ambos, uma mão na roda era se você pudesse ler esse documento. Que a Adobe descreve como boas práticas para desenvolvimento móvel com FP e AIR.

Esse sem dúvidas é um grande bixo papão de desenvolvimento para mobile, aproveitar o máximo que o mobile tenha e não prejudicar o ambiente no geral que ele tenha. Afinal celular é também feito para conversar.

Plataformas
Ou grande bixo papão para desenvolvimento Mobile é os sistemas operacionais, cada empresa tem seu próprio sistema operacional ou usam um sistema operacional de código aberto e acaba protegendo desenvolvedores que usam sua própria linguage de programação e se fechando em copas para outras plataformas mais interativas que agrege valor ao conteúdo final.
Exemplo disso é o Symbian, BlackBerry, iPhone OSX. Acabam atrasando o desenvolvimento de novas funções e limitando certos tipos de funcionabilidades para a plataforma FP.

Como é de costume, quem não se abrir acaba sendo engolido pela evolução madura do mercado. Foi pensando nisso que a Symbian recentemente lançou recentemente mão do código fonte do seu sistema operacional para que outros desenvolvedores ajudassem a evoluir a plataforma. Como outro caso de grande sucesso é o da Google, o Android é um OS já open-source e ovacionado por diversas empresas criadoras de dispositivos móveis, eu não falo só em HTC, falo em Sony Erickson, Nokia, LG, Xperia, Helio, Motorola. Todas essas empresas gigante do mundo dos celulares e/ou dispositivos móveis viram que era melhor usar uma plataforma open-source à que usar uma fechada.

A grande barreira do OS aos poucos é quebrada e inclusive ganha motivadores aos desenvolvedores que tem habilidades em desenvolver para aquela plataforma em específico. Não é atoa que a Apple tem o melhor programa de desenvolvimento para seus desenvolvedores para o iphone e ipod touch. Eu não tiro a razão dela em bloquear o o FP para seus smarts phones, mais ao mesmo tempo ela vem a calhar na própria evolução do mercado e faz o “usuario final pensar” Por que não posso ver um site em Flash em meu dispositivo móvel pagando o mesmo preço em outro que toca?
Usuários finais eles sim, são os gerentes e os clientes, onde dedicem qual plataforma ou dispositivo móvel vão usar.

Sem dúvida a Adobe e Apple estão trabalhando em conjunto para trazer o FP ao iPhone/iPod e iPad de forma sustentável para ambas as companhias. Segundo últimos comentários do Tinic Uro um dos grandes engenheiros do FP, o FP para MAC agora é basicamente uma aplicativo 100% escrito em Cocoa/Objective-C. O que prova que a maturidade do FP se adaptar em qualquer plataforma chega a um nincho que é mera medida de tempo.

Já que o grande problema em não ter o FP no iPhone foi erro disproporcional e acabou levando uma coisa a outra. Toda essa “guerrinha” é pura encenação e acredito que logo logo isso será resolvido da melhor maneira possível, agradando não só ao desenvolvedor de ambas as empresas quanto aos usuários finais que poderão ver o conteúdo feito em FP.

Interop entre as plataformas

Outro grande fator que leva ao atraso de adotar o FP e o AIR aos dispositivos móveis é a diferenciação entre as plataformas. Cada uma possui comportamentos específicos e não seguem um padrão exigente como é escrito hoje na esfera WEB. Cada uma possui comportamentos singulares, por exemplo a maneira como o Acelerometro do Android possui é diferente do Acelerometro do iPhone. Os comportamentos são iguais, mais a maneira que eles fizeram cada é que é diferente.
Onde o FP precisa se adaptar e criar apenas uma única API simples que tire vantagem disso e aproveite todo esse potencial que se tem e crie uma experiência para o desenvolvedor final usando uma única API e único código para diferentes dispositivos.

O Flash CS5 é uma das grandes novas apostas da Adobe para isso, Ela demonstrou que está levando muito a sério em portar de forma elegante o AIR e o FP à dispostivos móveis. Como foi visto do Mobile World Congress, no blog do Ted você consegue ver que já é possível rodar AIR e FP no Android tanto no navegador quanto como aplicativos nativos.

Esse mesmo AIR 2.0 Beta 2 você já pode começar a experimentar essa fluidez, porém para testar de fato no dispositivo você vai ter que aguardar um pouco mais de tempo até eles lançarem todas essas novidades no MAX 2010.

Ferramentas de cross-compile:

Existe hoje ferarmentas no mercado que já faz o seu código em AIR / Flex virar uma aplicação nativa, como é o caso da empresa Open Plug, que resolveu sair na frente e lançar uma IDE junto ao Eclipse e que use o mesmo SDK do Flex com algumas modificações para fazer a cross-complicação do seu código feito em AS3/MXML para código nativo da máquina.

O bixo papão disso, é o resultado final. Você passa a não ter controle do que está indo dentro dos binários distribuidos e pode vir a ter sérios problemas de portabilidade e maturidade no futuro. Por exemplo. eu nao arriscaria fazer um produto que fizesse cross-compile no atual momento até chegar Outubro desse ano. Já que muitas definições serão tomadas nesse tempo e muitas mudanças cheguem a ocorrer.
Ok, você pode pensar que tais mudanças não afetariam o código escrito em AS3/MXML, olha não teria certeza quanto a isso, já que a cada mudança sempre sofre com nomeclatura de API, mudanças de nome de métodos, sintaxe, eventos. É coisa a se pensar. Pode começar a explorar, ver como é feito o processo. Porém comercialmente ainda não é o momento ideal. Principalmente quando se está forjando uma plataforma para dispositivos móveis.
A aposta do Open Plug com o Elipse é sem dúvida inovadora, você poder escrever em MXML e traduzir isso para plataformas Mobile como Nokia S60 3 e 5th geração é ótimo. Sem eu me preocupar nenhum pingo com C++. É fantástico ele fazer todo o trabalho sujo que teria que fazer. Porém até mesmo a própria Open Plug depende dessas decições do mercado.

Uma outra empresa que está apostando muito nessa Interop é a Appcelerator, não só voltada para o Flash e AIR, mais na Web como um todo, você faz a tradução da sua Aplicação WEB seja ela feita em JS/HTML ou Flash/Flex, ela consegue gerar instaladores nativos na plataforma alvo. Embora ela tenha a mesma fraqueza do Open plug em esperar a maturidade do mercado.

Esse é o grande Bixo papão de ambas, esperar um pouco mais para ver o que será definido daqui para frente, não tão longe assim, eu arriscaria uma solidez nesse sentido daqui uns 4 meses.

Flex Slider Framework, esse ainda vai demorar a sair, e acredito eu que vai surpreender a muita gente que desenvolve em Flex hoje atualmente, não só no Flex, mais ao todo como no geral.

Conclusão

Com tanta dificuldade de se gerar conteúdo para diferentes plataformas, diferentes telas, diferentes propriedades, eu tiro o Chapéu para o time do FP e AIR, não é fácil organizar todas essas diferenças em uma API interop que funciona da mesma forma que funciona em A ou em B.

Actionscript/ AS 2.0/ Flash Lite/ Notícias/ Symbian

Flyer lançado pela i2Tecnologia

Felipe Andrade da i2Tecnologia lançou hoje um framework para Flash Lite 2.1 com extensão da capacidade do Flash Lite para celulares que tem o Symbian como sistema operacional da série 60, ou melhor resumindo, quem tem Nokia S60 já pode usar.

Batizado de Flyer, ele usa algumas funções que no python para s60 suporta e estende essa capacidade para o Flash Lite podendo capturar foto diretamente do seu aplicativo em Flash, mandar um screenshot do seu aparelho, enviar arquevos via BlueTooth, pegar lista de contatos do banco de dados do celular.

Quanto custa para usar? Nada, nadica de nada, de grátis, isso, o projeto é Open-source e já tem muita gente baixando e aproveitando da idéia do Felipe para alcançar novos negócios.

Como usar o Flyer?

Flyer é simples e fácil de configurar para começar a usar.

1. Baixe o Flash Player Lite 2.1 do site da Adobe (é grátis também).

2. Baixe o Python para série S60 e o Editor do Python. Saiba mais sobre o Python para celular aqui.

3. Baixe o framework do Flyer no Code do google.

4. Rodando o script python em seu celular é moleza. crie um diretório no teu celular E: chamado “Python” não coloque outro nome, ele vai o pys60 vai entender que tem scripts do python lá.
Pegue o flashlite_socket_framework.py e mova ele pra dentro da pasta E:Python usando USB ou o Nokia Suite, não faça isso via Bluetooth, não vai rolar. Depois disso, tem que iniciar para iniciar o interpretador do python PyS60 você vai onde tem a típica cobrinha do Python, em opções e clica em Run Script, selecione o flyer.py e pressione OK.

Pronto está na hora de criar uma aplicação para saber se está funcionando. Você vai encontrar alguns exemplos no site do Felipe Andrade.

Felipe Andrade, só tenho que agradecer sua dedicação e mais uma vez dá meus parabéns a i2Tecnologia.

O Flyer tem novas versões futuras que você poderá fazer:
– Gravar som e tocar
– Fazer upload para servidores remotos
– Módulo GPS para mostrar latitude, longitude, satellite count e tempo.
– Gravar em video .flv o screen do celular.

AS 2.0/ Flash Lite/ Symbian

Minhas primeiras impressões ao Nokia E62

Semana passada o Flash lite 2.1, foi liberado para aplicações Stand Alone de forma gratúita para vários aparelhos. Então decidir comprar definitivamente um novo celular para começar a desenvolver para o mundo mobile de uma forma mais profissional, ao invés de criar apenas com o console de simulação. Escolhir pegar o Nokia E62 já suporta Flash Player Lite 2.x, 2.1.
O que posso dizer do aparelho é que ele me impressionou muito, posso sincronizar e-mail, meus contatos, blogar direto dele, ver TV (discovery ou BBC ), navegar pela internet com o navegador já instalado nele (opera), tem um teclado muito bom e de fácil digitação.
O que mais me agradou a ele foi que já vem com leitor de RSS, como daqui a 7 dias, vou me retirar de cenário para devidas férias, posso acompanhar de perto o que está acontecendo sem precisar ligar o laptop para tal.

Do lado Flash Lite 2.1 o Luciano Ayres da feito, mais alguns que vou apresentar na próxima terça-feira no comando de Luciano Ayres na Adobe, e coloquei em uso. Impressionante como é tão simples e fácil de se fazer aplicações embarcadas em mobile.
Outro fato marcante que posso deixar é que hoje para quem não acredita já existem 190 Milhões de aparelhos com Flash lite instalados, até o próximo primeiro semestre de 2007 os números vão estourar o dobro desse valor. Por quê? Olhe por si próprio na parte Mobile da Adobe, e preste atenção ao número de acordos feitos com dúzias de empresas no uso do Flash Lite.

Em contra partida já se ouve e muito, falar aqui no Brasil, principalmente por agências de publicidade e produtoras de hotsites, o uso de aplicações mobile para o mercado, quando falamos em aplicações mobile, falo no modo geral (Mini-Hotsites,Screen saver, wallpaper, icones, themas), onde ao meu ver será a tecnologia do ano aqui no Brasil para o próximo ano de 2007.

Não posso deixar de falar também do pessoal que tá por trás de todo esse avançado de celulares, o Symbian S60, é um ótimo sistema operacional, tanto que esse meu modelo suporta cartão miniSD de até 4GB como HD, atualmente coloquei um de 2GB para ver vídeos (o Real Player veio aparecer nos dispositivos móveis).

É isso, se você tá querendo comprar um celular que suporte Flash Lite, aconselho o E62 ou o N80, ambos são ótimos para tal. E caso você esteja super interessado em participar da palestra sobre Flash Lite aqui no Brasil pela primeira vez, você deve se cadastrar, , está logo ai, terça-feira, não perca seu tempo. Como diz o Donald Thrump – “Para vencer nos negócios você tem que estar um passo à frente da concorrência.”.

Link para primeiro evento sobre Flash Lite na Adobe Brasil – por Luciano Ayres da i2Tecnologia.