You Are Here:

Community: Blogs

Who am I?

ukaner

I am CEO & Creative Director of Finnish mobile innovation company Kuneri. I am a Visual designer, UI Specialist, Software designer & developer, Flash Lite expert and Entrepreneur.

I have been doing;

- Visual design
- User interface and interaction design
- Software design and development
- Mobile product design and development
- Digital branding and marketing

I am highly interested in;

- Visual design, user interface, user interaction, user experience, graphical design and multimedia
- Digital marketing and branding
- Mobile technologies and trends; Flash Lite and Symbian S60

 

Calendar

« May 2008 »
Mo Tu We Th Fr Sa Su
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
 

Ugur Kaner's Forum Nokia Blog

The Pain of Flash Lite 3.0

ukaner | 13 May, 2008 17:22

We couldn't enjoy Flash Lite 3.0 as many others. See 'Why?' below, or read it from my blog post.

Usually, when new version of a software is released, we cheer, considering things will get better and easier. As we were expecting things would be easier for developers, we cheered up for Flash Lite 3.0’s features, however that couldn’t be more than wrong and it turned out to be a big pain for us. Moreover, there doesn’t seem to be any short term solution, and no one guarantees there will be one in mid or long term. I would like to write my reasons why I think so, and warn Adobe, Nokia and developers for a potential threat, which will not be long to come.

Security Sandbox Pain (or Security Painbox)

Flash Lite 3.0 came with Flash 8 engine, and together with Security Sandbox ‘feature’. This might make sense for browser plugin, but doesn’t make any sense for standalone player. Nick has a really nice post about this issue, which is almost 1 year old, can give an idea about the past and future of the problem.

Ok, what’s wrong with ‘Security Sandbox’? Isn’t security something good? Well, security is good when it’s used in convenience. If you use security for a case where doesn’t make any sense or bring an added value, you end up making life difficult for developers and users. Problem about this new Security Sandbox is; you either can have a local connection (i.e loading local files), or can a network connection (i.e connect to internet). This ‘feature’ not only brought an unnecessary pain to us (developers), but also broke backwards compatibility. How? Simple: If you have a Flash Lite 1.x or 2.x movie using local and network connections at the same time, it simply won’t work on Flash Lite 3.0 (which means new phones like N95). Wasn’t the biggest problem on mobile world fragmentation?

Problems not only end with those on ‘Security Sandbox’ feature. It’s not possible to do localhost calls, which disables any connection from Flash Lite to outer world. Why is this something bad? Well, there are many 3rd party projects extending Flash Lite via localhost (the only way left to us, because 3rd party application launch is limited by Nokia), such as KuneriLite, Flyer and Janus. These projects help Flash Lite to expand beyond its capabilities and enable people to create richer applications, which can compete with native S60 applications in look and performance.

Luckily, there is a ‘best of worst’ trick that solves those problems. There is a magic folder in ‘C:\data\others\trusted’ (that’s another pain, I will come to that shortly), which disables ‘Security Sandbox’ and enables applications to communicate both with local and network, as well as localhost. Why is this a ‘best of worst’? Simply because whatever you put into this directory is visible under ‘Gallery’ which brings a very bad user experience and many security concenrs within.

This issue will be even more cronic, if Adobe or Nokia doesn’t make any move; because ‘trusted’ folder will not be available anymore for S60 3.2 devices. Which will kill all developer efforts and backwards compatibility forever. We are not sure if Adobe or Nokia will solve this problem, but crossing our fingers hoping someone sees our S.O.S fire.

Trusted Folder Pain

I mentioned Security Sandbox problem and a ‘best of worst’ solution to that above. Now see another pain closely related to this subject.

S60 devices have ‘Phone Memory’ (PM) and ‘Memory Card’ (MC). Users are given the option to install their applications to PM or MC. As you know, to solve Securiy Sandbox problem, we need to install Flash Lite applications to those ‘Trusted’ folders that exist both on PM and MC. So what is the problem? With a clever(!) move, ‘Trusted’ folder is located at different paths on PM and MC. It’s at C:\Data\Others\Trusted\ on PM and E:\Others\Trusted\ on MC. Yeah, but what is the problem? Well simply, it’s not possible to install applications (SIS packages) to different folders on PM and MC, and this breaks Symbian Signed criterias. So, Flash Lite 3.0 applications either will work on PM, or MC. And in that way, you can not get your appliction Symbian Signed.

There is no solution we could find for that yet. If we can not; it will not be possible for anyone to Symbian Sign their Flash Lite applications on Flash Lite 3.0 phones (from my current understanding).

XML Socket Pain

Well, Security Sandbox is not the only problem. There is a serious bug on Flash Lite 3.0 with XML sockets. Simply put, it’s not possible to receive data via XML socket shorter than 1+ seconds, which kills if you need to stream data.

Most clear example for that is using KuneriLite Accelerometer plugin with Flash Lite. Naturally, to use axis values, you need to get those values at least 4-5 times per second; so that you can reflect it to your application. But because of this bug, you can get data only 1 time or less per second, which makes it impossible to use.

See the this Forum Nokia thread for more information on that subject. And as far as we see, there is no solution offered yet.

Conclusion

I tried to state my reasons, why Flash Lite 3.0 is a potential show-stopper for developers, users, enablers and many more on S60 devices. Nokia keeps on spreading this problem via Firmware updates and pushing Flash Lite 3.0 player to earlier phones (i.e Nokia N95 Classic), supporting and triggering fragmentation. With the introduction of S60 3rd edition Feature Pack 2 devices, these problems will be impossible to solve and Flash Lite player will get fragmented at least for couple of years, which will delay market entrance that is already delayed for long time and still immature. What I would like to see is some action from Adobe and Nokia, leaning on this subject and listening to us to avoid a big potential problem awaiting all Flash Lite users and developers in short term.

Please leave me your comments if you have any.

cheers,

Ugur.-

 

RSSComments

Wow, those are real showstoppers!

Sorcery-ltd | 13/05/2008, 18:10

Sorcery-ltd

Hi,

Thanks for the heads up. I have a couple of projects I'd really like to use a combination of C++ and Flash Lite and/or Java and Flash Lite for. I can't commit to doing either of them with Flash Lite unless these issues get fixed very quickly!

I hope someone is listening.

Mark

Re: The Pain of Flash Lite 3.0

ukaner | 13/05/2008, 21:06

ukaner

Thanks Mark! Think of us having a huge platform working with these problems and hoping that it's solved. I also very much hope someone is listening :)

Adobe Response

markadoherty | 15/05/2008, 12:40

Hi,

Just to repeat my comments from Ugur's other blog.

1. We are working to find a solution for the sandbox issue that accommodates these standalone use-cases.

2. The XMLSocket bug was fixed a while ago, you should test against the latest firmware to confirm.

Mark
Adobe
Mobile and Devices

Re: The Pain of Flash Lite 3.0

ukaner | 15/05/2008, 13:58

ukaner

Hi Mark, thanks a lot.

XMLSocket but exists on N95 8GB and N95 classic, both with latest firmware. I think it would worth to check this out.

Re: Jarpa

felipebzr | 16/05/2008, 13:43

felipebzr

Hi Ugur,

Did you try Jarpa? We received data via XML socket shorter than 1 second. I'm using a N95-1 with the latest firmware installed and everything is working fine.

Re: The Pain of Flash Lite 3.0

ukaner | 16/05/2008, 13:51

ukaner

Hi Felipe,

Not tried it yet; but with Flash Lite 2.x, we received 4-5 times in one second, whereas with Flash Lite 3.0 it's once a second. Might it be something else than XML sockets? Or somehow related to S60 code, or localhost connections? We figured out this situation after the Forum Nokia post I mentioned.

BTW, great to see Jarpa is going well for extending, great job!

S60 3rd edition Feature Pack 2 devices and trusted folder

kiniprashanth | 28/05/2008, 12:24

Please use Pathinfo.h which is released through SDK to get right others folder path.
http://www.forum.nokia.com/document/Cpp_Developers_Library/GUID-96C272CA-2BED-4352-AE7C-E692B193EC06/html/classPathInfo.html

Then append Trusted folder. Now you will get folder path for trusted sandbox

Re: The Pain of Flash Lite 3.0

Jii5Hoo | 28/05/2008, 13:12

Its not a problem when running application in the phone, but SIS-packaging problem, its not possible to know where to place files, because
user can choose between 2 different places, during SIS installation.

However, we solved it locating some files in the phone memory.

MobiFLV and Capuchin-like solution for SC++ developer

truf | 29/09/2008, 14:05

truf

Hi Ugur,
I'm not Flash Lite expert. And never write even one line of FL code. But i really think FL is a excellent solution for GUI design if it can be used in other technology. I'm always looking on SE Project Capuchin and hope what sometime such feature will be aviable for Symbian C++ developers.
Several days ago i found a news about MobiFLV v1.0:
"What is MobiFLV

MobiFLV is Open Source FLV Player for Symbian ported from libavcodec, video decoder part of ffmpeg. MobiFLV is written in C and Symbian C++ language.

License

MobiFLV is licensed under the GNU Lesser General Public License (LGPL)."

Thats a link:
http://www.mobitubia.com/dp/?q=content/libavcodec-and-mobiflv-source-code

And thats a FN blog post:
http://blogs.forum.nokia.com/blog/sittiphol-phanvilais-forum-nokia-blog/2008/08/25/mobiflv-open-source-flv-player-for-symbian

I feel its sources can be used for Capuchin-like system, which allow Symbian C++ application use Flash GUI and vice versa. With help of Adobe Open Project that solution will not have any problem with licensing. I'm I wrong? As I say, i'm not a FL coder and want to clarify that. Can MobiFLV help to create real Symbian C++ - Flash Lite bridge instead of that c++ plugin tricks?

--
Truf

You must login to post comments. Login
 

Rate This

 
 
Bookmark this page: DeliciousDiggFacebookGoogleYahooStumbleUponRedditFurlTechnocratiMagnoliaTwitter  Share this page Share this page Print this Page Print this page Invite a friend Invite a friend
Email Newsletters Press Terms & Conditions Privacy Policy Sitemap Contact Us © 2009 Nokia 
RDF Facets: qdcZdescriptionQSxukanerE20E7cE2013E20MayE2cE202008E2017E3a22E20WeE20couldnE27tE20enjoyE20FlashE20E4citeE203E2e0E20asE20manyE20othersE2eE20SeeE20E27WhyE3fE27E20belowE2cE20orE20readE20itE20fromE20myE20blogE20postE2eE20UsuallyE2cE20whenE20newE20versionE20ofE20aE20softwareE20isE20releasedE2cE20weE20cheerE2cE20consideringE20thingsE20willE20getE20betterE20andE20easierE2eE20AsE20weE20wereE20eE78pectingE20thingsE20wouldE20beE20easierE20forE20developersE2cE20weE20cheeredE20upE20forE20FlashE20E4citeE203E2e0E92sE20featuresE2cE20howeverE20thatE20couldnE92tE20beE20moreE20thanE20wrongE20andE20itE20turnedE20outE20toE20beE20aE20bigE20painE20forE20usE2eE20MoreoverE2cE20thereE20doesnE92tE20seemE20toE20beE20anyE20shortE20termE20solutionE2eE2eE2eX qdcZidentifierQSxhttpE3aE2fE2fblogsE2eforumE2enokiaE2ecomE2fblogE2fugurE2dkanersE2dforumE2dnokiaE2dblogE2f2008E2f05E2f13E2ftheE2dpainE2dofE2dflashE2dliteE2d3E2e0X qdcZpublisherQUxhttpE3aE2fE2fswE2enokiaE2ecomE2fidE2fc764fd1cE2d8b06E2d499aE2d9a6aE2d17c3903d5a65E2fforumE5fnokiaE5fcrawlerE5fagentX qdcZtitleQSxUgurE20KanerE27sE20ForumE20NokiaE20BlogE20E7cE20TheE20PainE20ofE20FlashE20E4citeE203E2e0X qdcZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qdcZtypeQUqfnTypeZBlogContentQ qdcZtypeQUqfnTypeZBlogE45ntryQ qdcZtypeQUqfnTypeZCommunityContentQ qdcZtypeQUqfnTypeZE52esourceQ qdcZtypeQUqfnTypeZWebpageQ qdcZtypeQUqmarsZManagedE52esourceQ qdcZtypeQUqwebZInformationE52esourceQ qdcZtypeQUqwebZPageQ qdcZtypeQUqwebZE52esourceQ qdcZtypeQUqrdfsZE52esourceQ qrssZdescriptionQSxukanerE20E7cE2013E20MayE2cE202008E2017E3a22E20WeE20couldnE27tE20enjoyE20FlashE20E4citeE203E2e0E20asE20manyE20othersE2eE20SeeE20E27WhyE3fE27E20belowE2cE20orE20readE20itE20fromE20myE20blogE20postE2eE20UsuallyE2cE20whenE20newE20versionE20ofE20aE20softwareE20isE20releasedE2cE20weE20cheerE2cE20consideringE20thingsE20willE20getE20betterE20andE20easierE2eE20AsE20weE20wereE20eE78pectingE20thingsE20wouldE20beE20easierE20forE20developersE2cE20weE20cheeredE20upE20forE20FlashE20E4citeE203E2e0E92sE20featuresE2cE20howeverE20thatE20couldnE92tE20beE20moreE20thanE20wrongE20andE20itE20turnedE20outE20toE20beE20aE20bigE20painE20forE20usE2eE20MoreoverE2cE20thereE20doesnE92tE20seemE20toE20beE20anyE20shortE20termE20solutionE2eE2eE2eX qfnZdistributionQUxhttpE3aE2fE2fblogsE2eforumE2enokiaE2ecomE2fX qfnZtopicQUxhttpE3aE2fE2fswE2enokiaE2ecomE2fFNE2d1E2fBlogTopicE2fgeneralXRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtopicQUqfnTopicZflashQRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtopicQUqfnTopicZseriesE5f60QRqdcZtypeQUqrdfsZE52esourceQRqmarsZrelevanceQNx100X qfnZtypeQUqfnTypeZBlogContentQ qfnZtypeQUqfnTypeZBlogE45ntryQ qfnZtypeQUqfnTypeZCommunityContentQ qfnZtypeQUqfnTypeZE52esourceQ qfnZtypeQUqfnTypeZWebpageQ qfnZupdatedQDx2008E2d09E2d29X qfnZuserE5ftagQSxflashX qfnZuserE5ftagQSxs60X qmarsZdescriptionQSxukanerE20E7cE2013E20MayE2cE202008E2017E3a22E20WeE20couldnE27tE20enjoyE20FlashE20E4citeE203E2e0E20asE20manyE20othersE2eE20SeeE20E27WhyE3fE27E20belowE2cE20orE20readE20itE20fromE20myE20blogE20postE2eE20UsuallyE2cE20whenE20newE20versionE20ofE20aE20softwareE20isE20releasedE2cE20weE20cheerE2cE20consideringE20thingsE20willE20getE20betterE20andE20easierE2eE20AsE20weE20wereE20eE78pectingE20thingsE20wouldE20beE20easierE20forE20developersE2cE20weE20cheeredE20upE20forE20FlashE20E4citeE203E2e0E92sE20featuresE2cE20howeverE20thatE20couldnE92tE20beE20moreE20thanE20wrongE20andE20itE20turnedE20outE20toE20beE20aE20bigE20painE20forE20usE2eE20MoreoverE2cE20thereE20doesnE92tE20seemE20toE20beE20anyE20shortE20termE20solutionE2eE2eE2eX qmarsZlanguageQUxhttpE3aE2fE2fswE2enokiaE2ecomE2flanguageE2d1E2fenX qrdfZtypeQUqfnZE45E78cludedFromGeneralE4cistingsQ qrdfZtypeQUqfnTypeZBlogContentQ qrdfZtypeQUqfnTypeZBlogE45ntryQ qrdfZtypeQUqfnTypeZCommunityContentQ qrdfZtypeQUqfnTypeZE52esourceQ qrdfZtypeQUqfnTypeZWebpageQ qrdfZtypeQUqmarsZManagedE52esourceQ qrdfZtypeQUqwebZInformationE52esourceQ qrdfZtypeQUqwebZPageQ qrdfZtypeQUqwebZE52esourceQ qrdfZtypeQUqrdfsZE52esourceQ