I am currently evaluating the Abode Air and Flex technology
now for the past week and a half, and am really excited about the
possibilities for it. So here are a couple questions that I would
appreciate some help in answering.
1) Why is the memory footprint so large for an application
running with Air? Within seconds, a relatively small program will
balloon is memory usage, and is by far the most memory abusive
program on my box. And it never seems to free anything as the
2) Currently, you can program Air using Actionscript and
application will not have an internet connection, and I need to
take my business logic off the server, and run it on the client. Is
there any way to run this code locally? Or do Air applications
require a internet connection.
Thanks for your help!
jomorano, Aug 19, 2008 10:22 AM
It's difficult to address (1) without knowing (a) how you are
measuring memory use and (b) which application you're running.
However, the amount of memory used is generally a function of the
application itself, not AIR.
Regarding (2), no, AIR applications don't require an internet
connection. However, you will have to write your logic in
As for the memory footprint, I was gauging based on the
Windows Task Manager, and running the EBay Desktop Air application.
It’s not quite fair to judge the memory usage on that
particular application since is quite complex. But it still seems
high. When I started the program first, it seemed to climb as high
as 20 megs, then after about 30 minutes of moderate use it reduced
to 11 megs.
I figured as much about the languages, having to program in
calling functions from a DLL instead that is written and compiled
in a different language?
My app needs to connect to some device drivers and since
those APIs are not in ActionScript but in C++, I have no choice but
to use C++ and ActiveX to embed the flash player. Of course this
breaks the entire concept of portability since I can't do this on
Mac or Linux, even if I keep the C++ platform independent.
Adobe has to address this issue and enable a Java JNI style
mechanism to allow communication with other run times.