Curso AS3

Archive for the ‘Flash’ Category

FileReference não executa o download

Tuesday, July 29th, 2008

Podemos forçar o download de arquivos como um txt, jpg, gif, etc, utilizando PHP manipulando o header. No Flash podemos utilizar também a classe FileReference, faz a mesma coisa, e de forma muito simples, portanto se estamos utilizando o Flash é muito mais vantajoso utilizar a classe do próprio actionscript.

Mas este post não tem intenção de abordar a classe FileReference, e sim de um problema pelo qual passei, observe o script abaixo:

Actionscript:
  1. function onDownload():void
  2. {
  3. var fl:FileReference = new FileReference();
  4. fl.download(new URLRequest("texto.txt"));
  5. }

Um script simples que parece funcionar, entretanto após clicar em salvar na janela aberta no browser o arquivo nunca será salvo.

O problema ocorre porque ao contrário da classe URLLoader, a classe FileReference não permanece disponível quando o escopo onde está presente é descartado, assim a caixa para salvar é aberta, mas o objeto FileReference já foi eliminado.

A solução é muito simples, basta declarar o objeto FileReference em um escopo que estará disponível enquanto o objeto for necessário, em classes declare como uma propriedade.

O script abaixo funcionará:

Actionscript:
  1. var fl:FileReference = new FileReference();
  2.  
  3. function onDownload():void
  4. {
  5. fl.download(new URLRequest("texto.txt"));
  6. }

O problema é documentado pela Adobe em FileReference.download() in SWF file fails.

Ribop em fase de testes

Thursday, July 24th, 2008

Estou testando um projeto meu, o Ribop, desenvolvido em Flex. Os testes estão sendo feitos a mais de um mês por alguns amigos, e amigos de amigos, eu convidei uns cinco amigos, mas o site já tem cadastrado cerca de cinquenta usuários.

O sistema é um espaço para troca de idéias em forma de texto, imagens e vídeos, cada espaço pode ser personalizada de acordo com as preferências do usuário e conta com recursos como acesso completo (ou quase) via url.

O site está em fase beta, quem quiser conferir basta se cadastrar, mas eu adianto, é beta, todos os dias eu atualizo o sistema com algo novo, mas ainda tem muita coisa a ser feita. =P

Quem quiser me adicionar, o endereço do meu espaço é http://ribop.com/#/ericksouza/.

Porque Ribop?

O porque do nome é bem simples, Ribop surgiu de Bebop que vem do Jazz. Conheci o termo através do anime Cowboy Bebop (muito bom), onde a trilha sonora é Jazz.

Resumo do projeto.

O Ribop é um projeto meu que inicie em novembro do ano passado, e junto com meu amigo Luís Felipe programamos a base do site. O desenvolvimento foi interrompido no início do ano de 2008 por diversos fatores que me obrigou a abandonar o projeto inicial. Logo depois decidi começar um novo projeto, agora sendo desenvolvido apenas por mim, chegando numa estrutura melhor do que eu esperava, tornando qualquer atualização completamente mais simples, o encapsulamento foi o principal motivo da melhora de controle de dados.

Adobe trabalhando para melhorar a indexação de SWFs

Wednesday, July 2nd, 2008

A Adobe está trabalhando junto ao Google e Yahoo! para melhorar a indexação dos SWFs. O Google já consegue um indexação razoável, e com esta parceria podemos esperar grandes melhorias, a Adobe vai ajudar a encontrar conteúdos mais relevantes.

Quem está acostumado a trabalhar com os recursos de acessibilidade no Flash deverão se beneficiar ainda mais.

Maiores informações em Adobe Press.

Esta é um grande notícia, hoje existem muitos sistes que precisam ser feitos totalmente em Flash/Flex e a indexação sempre foi uma dor de cabeça apesar de não ser tão complicado de conseguir uma boa indexação como a de um html trabalhando um pouco mais, embora o ideal ou mais cômodo é que o mecanismo de busca faça o trabalho por nós, =D.

Estive montando um demo para demonstrar uma das formas de conseguir uma boa indexação, espero poder publicar ainda esta semana.

Security Settings, chamando Javascript localmente via Flash

Tuesday, May 6th, 2008

No post Flash junto ao Lightbox e Shadowbox recebi alguns comentários no blog e mensagens via e-mail relatando que a reprodução do exemplo não funcionou. Se você fez tudo certo, funciona, o problema é que localmente existem algumas restrições que bloqueiam a chamada do Javascript pelo Flash.

Uma das soluções é liberar a partição, ou pasta que você está trabalhando na página da Adobe em Global Security Settings Panel. Acessando a página clique em Edit Locations.., Browse Folder... e selecione a pasta e/ou partição. Pronto, nem precisa reiniciar a máquina.

Eu já adiciono a partição toda para não precisar adicionar cada pasta de cada projeto.

Lembrando que no servidor funcionará de qualquer forma, é uma restrição local.

Flash CS4 Novidades

Saturday, February 9th, 2008

O Flash CS4 trás uma novidade muito interessante voltada para designers, visto que o Flash CS3 não trouxe nada de muito novo para designers.

A novidades é a possibilidade de animação de objetos via esqueleto. A utilização é muito simples e rápida, segue dois vídeos que dispensam mais palavras. =P

Adobe Flash CS3 amanhã!

Monday, March 26th, 2007

Flash CS3

Não aguentei esperar até amanhã, 27/3, para comentar sobre o lançamento do Flash 9! "Mataram" aquele lindo "F" do Flash, a Adobe vai ficar devendo essa, o "F" era sagrado.

Flash Player Statistics

Saturday, December 9th, 2006

Currently Flash Player reaches 98 percent of web browsers, in the world it's the platform most pervasive, these numbers are much larger than of technologies as JAVA, Microsoft Windows Media Player and Apple QuickTime Player.

Comparative graph of the Flash Player with other technologies:

Flash Player Statistics

The Flash Player version 8 has 90 percent approximately, and the version 9 has 36 percent approximately. More details about Flash Player by version.

Source: Flash Player Statistics.

Estatísticas do Flash Player

Tuesday, December 5th, 2006

O Flash Player alcança 96% dos internautas, é a plataforma de maior penetração no mundo, estes números são muito maiores que os do JAVA, Microsoft Windows Media Player e Apple QuickTime Player. Veja abaixo o gráfico comparativo com outras técnologias:

Estatísticas do Flash Player

A versão 8 tem aproximadamente 90%, e a versão 9 tem aproximadamente 36%. Veja mais detalhes por versões do Flash Player.

Fonte: Flash Player Statistics.

Chamado uma função em um link Html no Flash

Monday, November 20th, 2006

Escrendo o curso de Actionscript, mais especificamente o tópico que aborda o protocolo asfunction, e por ser pouco conhecido, decidi escrever sobre, pois pode vir a ser útil para muitos desenvolvedores.

Um caso: Hoje é muito comum sites em Flash gerados dinâmicamente a partir de um banco de dados, pode ser que o seu cliente peça para poder linkar uma seção do Flash através do admin, onde o cliente havia sido instruído em como linkar uma página Html, ex. <a href="http://...">Link</a>. A menos que o site possua o recurso de acesso através da URL e sem refresh, este pedido poderia se tornar uma tremenda dor de cabeça, mas graça ao protocolo asfunction, epecífico do Flash, você pode chamar uma função presente no Flash em um link Html no Flash. A sintaxe do protocolo é a seguinte:

Actionscript:
  1. asfunction:functionName, parâmetro 1, parâmetro 2, ... parâmetro n

Exemplo

Actionscript:
  1. this.createTextField("texto1", this.getNextHighestDepth(), 10, 0, 0, 0);
  2. this.texto1.border = true;
  3. this.texto1.autoSize = "left";
  4. this.texto1.html = true;
  5. this.texto1.htmlText = "<a href='asfunction:trace,Link no texto chamando uma função no Flash!'>Texto asfunction.</a>";

No exemplo foi chamada uma função global do Flash, mas você pode chamar uma função que você criou.

Trabalhando com recursos dinâmicos no Flash

Saturday, October 7th, 2006

Houve uma época em que para mim, legal era ser o mais dinâmico possível, textField, MovieClip, componentes, quadrados, circulos, tudo tinha que ser desenhado dinâmicamente, a bliblioteca tinha perdido sua utilidade.

Com o tempo notei que o código estava aumentando considerávelmente, e alterações de layout, ainda mais para quem não programa, se tornaram difíceis. Após diversos trabalhos, ficou claro que os recursos dinâmicos tinham uma utilidade diferente da que estava sendo empregada por mim.

(more...)