This blog has moved to a new location! http://iqandreas.github.com/
Showing posts with label SDK. Show all posts
Showing posts with label SDK. Show all posts

Thursday, March 25, 2010

Getting started with Flex/Flash Builder on Linux

"Windows Restore cannot continue. Please contact the manufacturer if this problem persists."

With those words I realized that my temporary fling with Linux had gone from a fun single date to a forced marriage proposal and an unexpected commitment. Yep, I am stuck with Linux for a while, and hopefully not for an entire 9 months.

It's not that I hate Linux, in fact I love using Linux, but I'm never getting those three hours of my life back spent on trying to get Flash CS4 working in Wine.


Instead of sitting on my hands doing nothing, I'm going to get back to Flash development. Since Flash Professional CS4 is now out of the question, I guess my next logical option is Flash/Flex Builder.

For anyone else getting started with building for Flash Player or AIR on Linux, I have compiled a small pool of information, so you don't have to dig through dozens of different sites for hours trying to make heads and tails of it all and sort it all out. Note that I have only been working with Flash in Linux for about two weeks, so please correct me (by leaving a comment) if I give any faulty or incomplete information.


What is Flex Builder 3 for Linux?

First of all, Flex Builder (now renamed Flash Builder so it won't be confused with the Flex SDK) is a plugin that Adobe developed for the already popular development environment Eclipse. Most of the features, such as code hinting, were already developed by the Eclipse team, so Adobe can safely charge almost $300 for relatively little effort. Of course, they also added a few new features to the plugin beyond Eclipse's current capabilities, and they didn't charge the full $700 for Flex Builder, so I will cut them some slack.

In an effort to connect to developers of all platforms, (and considering how Eclipse is already available in Linux, all they had to do was update the plugin to match) Adobe released Flex Builder 3 for Linux (currently alpha version 5). Note that Adobe considers this plugin separate from the "regular" Flex Builder. According to Adobe, "Although many of the features in Flex 3 are included in the Linux release, there are several features that are not yet included. Our main goal is to get the base features in place and then to solicit user feedback and their priorities for additional features, such as the profiler or design view."

Although it sounds like Adobe is making a great effort at making this world a better place, Adobe seems to have abandoned the project. Aside from releasing the alpha 5 version in November of 2009 that extended the trial period (from 1 Dec, 2009. I'm not sure of the new trial expiration date), there hasn't been any updates for Linux users since April 2009.

Despite the recent release of Flash Builder 4, Adobe still has not updated the Linux version, and the reply of choice when asked is "Adobe has not yet announced a release date for the Flex Builder Linux product."

Am I being too hard on Adobe? If you feel offended, please tell me, and then show me what progress they have made and steps toward finishing the Linux version. Then I will go back and correct any hateful remarks.


That's horrible! We need to do something!

The valour is honourable, and if you really feel like it you can vote on this bug:
http://bugs.adobe.com/jira/browse/FB-19053
However, unless you hold a major share of stock in Adobe, I doubt they will do anything about it. They will either drop the project, or will reinvest in it once it becomes obviously financially beneficial to them.


Oh well, I guess FB3 Beta is better than nothing

That's the spirit! The FlexBuilder trial can be downloaded from Adobe's site:
http://labs.adobe.com/technologies/flex/flexbuilder_linux/
The installation process is pretty straightforward. Remember to have Eclipse installed first, as the installed only includes the plugin. Eclipse can be found here:
http://www.eclipse.org/downloads/

WARNING: Several people have trouble installing the plugin on Eclipse version 3.5! (including me at first) Although there are fixes for this, it might be better to install version 3.3.

In Ubuntu, it should be as simple as going to "Applications > Ubuntu Software Center" and installing it from there (worked for me). If Eclipse doesn't show up in the list of available programs, make sure you have marked all the software sources in "System > Administration > Software Sources". If you have any problems, this walkthrough might be able to help (he beat me to writing the tutorial):
http://kbala.com/install-adobe-flex-builder-linux-alpha-in-ubuntu/
(and a second tutorial in case the first one wasn't enough)
http://www.insideria.com/2008/04/step-by-step-setting-up-flex-b.html


What about Wine?

I'm not complaining that much about Adobe... oh... you mean. Yes, I see now. My failure with Flash Professional and Wine caused me to give up, and I didn't even think about using it with Flash Builder. This section wasn't even added until after my try with fb4linux, so I have not personally tested this yet.

According to their website, Wine should be able to emulate Both Flex Builder 3 and Flash Builder 4 fairly well. It's definitely worth checking out.

This guy seems to have accomplished it, and has written a guide:
http://diariolinux.com/2009/06/22/how-to-install-flash-builder-on-linux/


So what other alternatives are there?

One name that appears a lot is Aptana (which I believe is free) and also Eclipse based. I still have not tried it, and I'm not sure how full fledged it is, so I would really appreciate any opinions on it or trustworthy reviews of it to link to.

Another one I have seen links to is IntelliJ IDEA, however, this one has a price tag of $249. They have a free "community version" on their site, but I have no idea of the difference between the two. According to their site, it should incorporate well into Flex without any major modifications. [source] This one I have not tested either, and would really appreciate any reviews.

AXDT seems to be another Eclipse plugin. No experience with that one either, but it uses the Flex SDK, so it should have about the same amount of features as if you were using FlashDevelop and the SDK.

FlexBean another plugin, but this one for NetBeans. Likely similar to AXDT.


Screw Adobe! I want Flash Builder 4 in Linux now!

I was hoping you would want that. Finally, there is Flash Builder 4 Linux (I'm not sure if the 4 is to match the version number of the newest Flash Builder, or if it's supposed to read "for").

This release is NOT by Adobe. This is a port of Flash Builder to Linux. I'm still not sure exactly how it is ported (possibly because Eclipse plugins are operating system independent due to being Java-based, and all they did was copy the data from the Windows version to the Linux version, however, I believe there was a bit more involved)

If you need hand with the installation, this site has a small tutorial:
http://mayboroda.blogspot.com/2009/11/flash-builder-on-linux.html


What now? It's installed, I want to learn Flex in Linux!

I'm still trying to dig up links for this. The good thing is most tutorials that work for Flex Builder should work just the same for the Linux version.

I have however found one video that specifically names Linux - Getting started with AIR on Linux. It's 'hosted' by Mike Chambers, and even though he says he has planned on releasing future tutorials on Linux development, I have not found any. GotoAndLearn has several other great videos on Flex development as well.


Additional reading

You could get these yourself from Google, but then you have to sort through which ones are on topic and which ones are just wasting bytes on a server.
http://gruchalski.com/2009/04/22/flex-builder-3-for-linux-on-hold/
http://www.infoq.com/news/2009/05/flex-builder-linux-dead
http://rachaelandtom.info/content/flex-builder-linux-canned-and-how-you-can-help-get-it-going-again
http://www.insideria.com/2009/06/flex-builder-linux-and-open-so.html


So what about you? Can we expect more Linux tutorials?

Definitely! If Windows keeps being evil, I'm likely to stay in Linux for a while, so hopefully I can be of some help to others who are also using Linux and developing for Flash.

I'm in the process of downloading Flash Builder 4 Linux right now, so I will give a full review and maybe even a guide some time soon!

I also got my hands on SWF Protector. Thank goodness they have a Linux version. Once I get everything up and running, I will give my thoughts and hopefully also a performance evaluation on how well it runs. There will also be both a drawing and a competition for free licenses, so stay tuned!


Any links or alternatives I missed?

Thursday, September 17, 2009

Wii Internet Channel now supports Flash!

Good news developers! As a followup to my earlier (rather short) post regarding future Flash support for the Wii, it seems as though my hopes have come true (mostly).

I recently was able to get my Wii connected to the internet again, when I stumbled upon a notice that the Internet Channel had a new update available. Curious, I prowled the web for any information regarding this new update. Sadly, I found no official source, however the Internet Channel's Wikipedia page state:
"In addition it updated Flash Player to Adobe Flash Lite 3.1 which corresponds to a full implementation of Adobe Flash version 8 with certain features of Flash 9." -- Footnote: The Wii Browser now Identifies its self as "AFL 9,1,122,0" to Flash applications as can be seen by visiting
http://kb2.adobe.com/cps/155/tn_15507.html in the Wii Browser.

So, Flash Lite, that is a great start on Nintendo's part. Sadly, it doesn't contain the fancy 3d features of Flash 10 or even the Vector class I love so, but it is a start.

For people wanting to start developing in FlashLite, it is basically like regular ActionScript, but 'stripped down' missing several libraries. If I can find some time I'll try to track down a list of what classes FlashLite is lacking.

Until then, here are some helpful links for aspiring FlashLite developers:
Adobe's FlashLite FAQ - http://www.adobe.com/products/flashlite/faq/
Adobe's "Getting Started With FlashLite 2.x and 3.0" - http://livedocs.adobe.com/flashlite/3.0/docs/help.html?content=Part4_API_Ref_1.html
And of course, my favorite, the Language Reference, can be found on that same page as listed above.


Also, as a final note, here are a last few Wii/Flash links I have yet to look into which look (at least two of them) promising:

WiiFlash (http://wiiflash.bytearray.org/)
Connects directly to the WiiMote using your computer's BlueTooth connection, and accesses it from Flash through your localhost address. Pretty smart. :) That would be a great workaround for many features not currently available natively in Flash. I seem to be getting "Security Sandbox" errors, but it seems like it's working for other people. Not sure if it works in online games, though.

WiiCade API (http://wiicade.com/home.aspx)
There is supposed to be some sort of support for which allows you to use the "arrow buttons" on the Wiimote as if they were the WASD keys on the keyboard. I'm not sure how they pull it off, and current games look quite crappy and cheap. If anyone has any experience in using this API, please comment.

Wii Opera SDK (http://wiioperasdk.com/)
It looks like a thirteen year old who just learnt how to use FrontPage developed the site, so I can't help but be a little suspicious. I have no earthly idea what kind of support this has, so again, any outside comments are appreciated.