Ugur started a very good discussion on his blog about current obstacles and bugs in Flash Lite 3 implementation, and how they are effecting developers.
I’d like to continue the discussion by posting my thoughts here.
Flash Lite 3.0 and 3.1
Ugur already discussed the current issues with Flash Lite 3 with Security Sandbox (or as Ugur named it Security Painbox), Trusted folder and XML Socket.
I read somewhere when I was following news about FL3.1 release to OEMs that FL3.1 is sort of a bug fix for Security Sandbox. And it will remove this *feature*.
I raised my thoughts quite strongly about Security Sandbox issue in FL3 beta, and even many developers were standing with me, but to no avail. Now they have learned that this is a curse to FL developers, now here comes the FL3.1 with a bug fix. And start of another J2ME like fragmented technology!
Adobe/MM is used learn lessons hard way. They did same with Central and the product died, and they are continuing with FL as well which I believe is quite unfortunate.
I have some more FL issues to add in FL Pain-List,
1. So many nags
FL shows many nags for each operation which involves device APIs. For example if my application calls fscommand API to dial a phone number, FL player shows a nag to user, and if user selects yes, then it performs operation.
Not to mention, that most of these APIs are only triggered through “User-Click” events, so if user does not press any button, the API cannot be called, or its ignored. So, when user have already interacted with application to perform operation, there’s no need to ask the user again.
2. Browser – click on FL control
Adobe and Nokia trying to make FL to work better as browser plugin, and not supporting standalone implementation very well. There’s a big drawback thats not fixed even in latest FL3, and I’m sure it will be same in FL3.1.
When <object>/<embed> tag is used to embed SWF in a page specifically made for FL3 mobile devices, the mobile browser does not give focus to SWF, and user first have to select and click SWF content to interact. This is similar as Active Content issue with IE6/7.
We can write a script to avoid this behavior in IE, but there’s no workaround for mobile browser for embedded SWF. The only workaround I discovered is directly calling the SWF in browser. This way SWF is downloaded to temp and opened by built-in FL player.
3. Can’t quit without key-press
FL application cannot quit until user key-press event is detected. The add-on with this is that only one operation can be performed at a time. So, if I have a background process running (i.e. KuneriLite), I cannot send shutdown request via loadVars to BG engine and quit FL at the same key-press event.
I have to first make a request for shutdown on first key-press, and on second key-press, call to Quit fscommand to exit FL application. So, user have to click twice to close my application.
4. If unable to load data, terminate app?
The most bad user experience is that the exception/error is directly displayed to end-user. I.e. “Content error -13”, what that mean? And user is provided with two options, Continue and Close.
If user continues, the application works, and there’s no way in AS we could notice that there was a error. And if user selects close, the application is terminated.
There’s no way to control errors in FL using AS. Specifically when loading external content. If any data loading call fails, the application cannot get any thing about this before user selects continue on the error nag.
5. Adobe not responding
The more frustration for me starts when no one at Adobe reply to emails. There’s a separate email for mobile developers to get in touch with FL guys at Adobe, but it doesn’t work, or all the emails go into spam folder.
I have personal emails addresses of FL guys, but I found them replying to mailing-lists, but not off-list emails, not a single word I get back, even if I try twice :/
Conclusion
I’d like to conclude by giving Nokia a big praise for their great support to FL developers and community. The way Nokia engineering team get back to developers to help, I’m impressed!
I also hope that recent announcements made by Adobe regarding FL technology would be step forward in right direction. And I also hope that Adobe would hear and support the FL developers community, and developers who are trying to explore new possibilities with FL.
// chall3ng3r //