Videos from AUG Slovakia – November 2011 are available at: vimeo.com/augsk. Slovak version only.
Meeting Agenda – November 2011
Flex Components Lifecycle / Tomas Lehuta
The Future of 2D in Flash / Peter “Shtif” Štefček
Making Things / Martin Cagalinec & Ivan Klim
You can find out more about Adobe Slovakia User Group at groups.adobe.com.
Recording are available thanks to Franto and Lharp.
You can find here slides from my talk about security in context of RIA applications.
Conference EurOpen.cz – Želiv. Slides are Slovak only.
Switching between different languages during development of server-client application is daunting task.
Jan Volf wrote Pexeso framework. Pexeso is component based, event driven PHP View-Controller framework similar to Adobe Flex framework.
Developer can reuse patterns and Flex style of writing code even when coding in PHP.
You can find this project at SourceForge: pexeso-php.sourceforge.net
Video recording from my talk about Flex, Flash Builder and Android development is available (only Slovak version).
There are a lot of information resources about FlexMojos scattered around the web. FlexMojos is evolving and it is necessary to watch changes.
I really suggest to use IntelliJ Idea for writing pom.xml. Idea will help you by highlighting mistakes and incompatibilities that you have in pom.xml.
I found some useful resources that might help you:
What I mean by multi-target?
Today it is possible to create Flex project that runs in browser as Flash application. Other option is to create mobile or desktop application using AIR.
The question is how to structure bigger projects that need to target web, mobile and desktop.
Let’s assume that we’re developing multiple applications and therefore it is good to have common library which aggregates common functions.
That is sufficient when you’re targeting just one platform. Once you need to support more projects then one common library is not enough.
It is reasonable to split this library into the main core that is common for all projects and then create specialized libraries for AIR, web and mobile.
On the top of these libraries you can build final applications for desired platform.
- top: applications for mobile, web and desktop
- middle: specialized libraries that extends functionality for mobile, web, desktop
- bottom: common library for all platforms
IntelliJ Idea Ultimate has great support for Flex projects.
There are few gotchas that you have to deal with.
When you set up project, compile it and open it in browser you can get very common error #2032 in Flash Player.
This indicates that you have some problem with RSL libraries. I already wrote some posts about RSL troubleshooting.
In case of Intellij Idea just add following line to Additional compiler settings (Modules – Flex – Flex Compiler Settings):
This option causes that compiler links RSL into final SWF. The file is bigger, but you can be sure that it will work without #2032.
This option could help you for the time being.
Several developers mentioned tricky gotcha of Flex and ActionScript apps on iOS and Android.
Flash Builder produces debug version of code by default. Debug code contains a lot of additional stuff that slow down application on target device. E.g. You’ll get 5-8 fps. That is very poor.
In order to test performance make sure that you’re using release version of project without debug information. Same code will work much faster – e.g. 20-24 fps.
There are two issues that you should be aware of:
1. Binary data must be encoded.
2. Send small chunks of data.
When you need to send 2 MB via ExternalInterface, you need to chop it into smaller pieces. E.g. 256 KB. Bigger chunks cause big load and it slows down transfer.
It takes 15 seconds to transfer 2 MB big chunk in Google Chrome 11. When you chop 2MB into 256 KB chunks, then it’s less than second.
Simple memory monitor which displays total memory usage of Flash Players in browser. Original code is from: flexponential.com.
I just removed some UI components.
You can also reuse package published here and embed this monitor in your app:
width="400" height="150" frameborder="0" marginheight="0"
You can also just open this app and see what is going on with memory usage of Flash Player.