Lizzan
Lizzan

Reputation: 1062

Advantages/Disadvantages of AIR vs Flex/Web

I'm tasked with writing an application for placing and connecting objects (sort of like a room planner where you can place furniture). I've made a demo using Flash Builder 4 and built it for AIR as a desktop app. Now the client wants the full app, but they and I am unsure whether to continue building it as an AIR app or transform it to a web application using Flex. I tried making a simple conversion of the AIR app to a web app, and most things worked but not all. The things that don't work seem to be simple bugs, though, not complete lack of capability.

The capabilities that I'm going to need (except for the modelling) are:

Only the printing has been implemented so far, and seems to work in the web app as well.

What advantages/disadvantages are there with the two approaches? Are any of the capabilities I need much worse (or even impossible) to implement in either approach?

Edit: Thanks all for your answers. From them, and my own research, I came up with the following:

Web app

Advantages Disadvantages

Desktop AIR app

Advantages Disadvantages

Upvotes: 1

Views: 2612

Answers (4)

BoxOfNotGoodery
BoxOfNotGoodery

Reputation: 1001

Check out flash 10 FileReference you can let users save results easily to their local file system. I've used it to create PDF's and let the user save that for printing.

For the PDF side I used Alive PDF.

protected function PrintCard(event:MouseEvent):void
{
    //ShowHideBorders();
    var printPDF:PDF = new  PDF( Orientation.LANDSCAPE, Unit.MM, Size.LETTER );
    printPDF.setDisplayMode( Display.FULL_WIDTH, Layout.SINGLE_PAGE );
    printPDF.addPage();
    printPDF.addImage(CardPanel);
    var fileRef:FileReference = new FileReference();
    fileRef.save(printPDF.save(Method.LOCAL), "card.pdf");  // Sends the file to the USER

    //ShowHideBorders();    
}

Upvotes: 1

Cornel Creanga
Cornel Creanga

Reputation: 5308

The biggest disadvantage is related to the update model - you need to be a super user in order to update the air application - especially in enterprise the users of the AIR applications don't have rights to update it. If your application is running in the browser you do not have this issue.

Besides that, I do not see any disadvantage.

Upvotes: 1

Treur
Treur

Reputation: 763

There is no one straight answer for this one. A few points to consider:

  1. If you want to use specific AIR features like offline usage, integration with the user's OS etc, you should use AIR (of course)
  2. Flex applications are more easy to distribute and upgrade, because everyone uses the same swf instance from the server. When using a server backend with AIR, you should be aware of possible backwards compatibility issues when upgrading you application.

Upvotes: 3

Robusto
Robusto

Reputation: 31903

There are a lot of little differences, but in broad strokes, the only considerations you have to think about are:

  1. Does it need to be on the Web?
  2. Does it need file system access.

If (1) then use regular Flash. If (2) then use AIR.

Upvotes: 1

Related Questions