I'm trying to start develop an Adobe Air app for Android.
I have Adobe Flash Builder 4.5 standard and when I choose new project I see two options:
Flex mobile project
ActionScript mobile project
What are the differents between these two options?
In brief, the Flex Mobile uses the Flex framework. You need to decide if this framework will help or hinder your product. It will allow you to use a lot of declarative markup (MXML) and a lot of built in controls and data handling methods. On the other side, it locks you into the "Flex" way of doing things.
Related
I have been throught a lot of reading and the whole thing is becoming only more confusing so I decided to ask you some stuff about Flex.
So, Flex can run in a webpage if you have Flash plugin in your browser, in an AIR container (on pc/android/IOS, but on OSX ?) and also can compile to Native IOS/Android app.
I am not sure about the last point.
If it is possible, how can I build a flex app that would run in browser with flash plugin and also be compiled to Android and IOS (and maybe Windows RT) ?
Adobe gives you Flash builder, do you also need the Flex SDK ? Is it doable with the Eclipse Flex plugin ?
Thank you for your help and sorry if it is a bit messed up.
So, Flex can run in a webpage if you have Flash plugin in your
browser, in an AIR container (on pc/android/IOS, but on OSX ?) and
also can compile to Native IOS/Android app. I am not sure about the
last point.
This is mostly correct. Flex can run in a web page using the Flash Plugin, which is widely available on desktop browsers. For all intents and purposes, you should assume your mobile users do not have a Flash Plugin installed on their mobile browsers.
It is true using AIR you can create desktop applications for PC and Mac; OSx is indeed supported. You can also use AIR to create Mobile applications on Android, iOS, and Blackberry Playbook. So, iOS is indeed supported. Windows 8 UI/Metro support for AIR is expected 1st quarter of this year. I suspect we'll also see AIR support for Blackberry 10; but nothing has been formally announced that I'm aware of.
Update: 3/2014
Adobe has abandoned plans for Windows 8 UI / Metro support. Windows Phone 8 support is a very common feature request, though, so vote for it if you want it.
BlackBerry 10 does indeed support Adobe AIR. Here is a link to the SDK.
If it is possible, how can I build a flex app that would run in
browser with flash plugin and also be compiled to Android and IOS (and
maybe Windows RT) ?
Flex is primarily a framework for creating business applications. A slightly different component set is offered for desktop applications and mobile applications. Part of this is due to screen size; and part due to performance. A big DataGrid with dozens of columns, for example, is not conducive to the screen size of your mobile phone.
Update 3/2014:
A mobile optimized DataGrid was donated to the Apache Flex Team, and it should be available in current versions of the SDK.
In the end; you should not plan on using the same exact application for both your Desktop/browser app and the mobile app. But, you can share some amount of code. I would target to share 80% of the code. Move the shared code into a library project; which you can then use on both your mobile application, your desktop application, and your browser based application.
Adobe gives you Flash builder, do you also need the Flex SDK ? Is it
doable with the Eclipse Flex plugin ?
Flash Builder is shipped with the Flex SDK. And Adobe Flex ships with the AIR SDK [Note: Apache Flex does not ship w/ the AIR SDK due to licensing differences; but there is a handy installer]. Flash Builder, also, is an Eclipse plugin and can be installed into any eclipse instance you wish.
You do not need Flash Builder to create a Flex Application. You can use command line tools and other IDEs, such as IntelliJ, if you prefer.
Using Flash Professional, you can package and export to a number of platforms using AIR. You can port to both Android or iOS (as a native app), in addition to creating a .swf file that can be embedded onto a webpage - all using the one application (go 'File' > 'Publish Settings' then change the player target).
I'm not sure whether the same options are available in Flash Builder, (appears to be possible -
adobe website) but not other IDE (such as Eclipse) or framework should be needed.
You may want to consider an alternative development and deployment strategy depending on your requirements, e.g. PhoneGap which should offer support for a greater number of devices.
Can someone explain to me the difference between Adobe Air, Flex, and Flash Builder?
I went to the Adobe website and it said that with Air I can build standalone apps for the desktop or mobile. They said the same thing with Flex.
It said Flash Builider is an Eclipse based development tool. What does THAT mean? And then it said that I could again build applications for the desktop and mobile.
There is so much overlap, I don't really understand what first to learn and what direction to take. (I know Flash and AS2 & AS3 very well.)
What is Flex
Flex is a powerful, open source application framework that allows you to easily build mobile applications for iOS, Android™, and BlackBerry Tablet OS devices, as well as traditional applications for browser and desktop application.
Flex has different SDK Version, more details
The Flex SDK contains hundreds of out-of-the-box components. DataGrids, Charts, Formatters, Validators, and numerous other UI controls are the building blocks for applications of all sizes. Components can be styled and skinned to fit the look and feel you want. There are also hundreds of third party open source and commercial components available for Flex. Mapping APIs, Data Visualization libraries, and Cloud APIs provide the building blocks for assembling great applications.
You will use the following two languages two develop flex applications.
1 . MXML is an XML-based markup language that is primarily used to layout application display elements.
2 . ActionScript is an ECMAScript-compliant object-oriented programming language that is primarily used for application logic
What is Flash Builder
Flash Builder is an enterprise-class Eclipse-based IDE to develop Flex applications.
Flash Builder includes state-of-the-art productivity features (code assist, refactoring, etc),
on-device debugging, and mobile simulators that allow developers to test their applications
on different screen sizes and densities. Flash Builder allows developers to package native
application files (ipa, apk, bar) for release on the Apple App Store, Android Marketplace,
and BlackBerry App world.
What is AIR
Adobe AIR is a cross-operating system runtime that enables you to use your existing ActionScript or HTML/JavaScript development skills and tools to build and deploy rich Internet applications (RIAs) outside the browser(Desktop) and on mobile devices.
It's very easy:
Adobe Air is a Flash Runtime for desktops and mobile devices. In other words, Flash applications use, and need it to work in the desktop or in mobile devices. This would be the equivalent to the Flash Player that you use in your web browser every day.
Flex is a framework that provides you with a set of user interface components, containers and utilities that make it easier to develop visual applications.
Flash Builder is the software you use to edit the code, to "compile" it, to test it, to debug it...
Starting from flash, Inventor of RIA(Rich internet applications). First came as a much designer friendly platform where the users can develop some cool animations and banners. Become a big success. Then making the animation interactive like listening for end users actions through keyboard and mouse added a programming language (Actionscript).
Flex a much developer friendly tool, which felicitate the development of rich internet applications in the beginning, They put Flex SDK(Software Development Tool) along with flex which makes the application development much easier.
Adobe AIR is a flash runtime running on your desktop and mobile devices, making the same user experience and to allow the developers to create multi platform desktop applications and giving some sort of access to the developers to the os level. Later on have put their effort in Mobile devices and put forward an idea of creating cross platform applications for mobile devices.
In a nutshell.
Flex can be considered as a development toolkit for for the Flash Player.
AIR is a runtime environment that enables you to run your application on the desktop/mobile device.
Flash builder is a development tool for creating applications
I hear that HTML 5 is also useful for developing Rich Internet Applications. Can anyone please explain the difference between the Adobe Flex and HTML5.
Can anyone please explain the difference between the Adobe Flex and
HTML5.
Big question. Adobe Flex is an SDK (Software Development Kit) that includes a User Interface Framework, a command line compiler and other tools. The output of an Adobe Flex application is either a SWF, which runs in the browser based Flash Player, or an AIR file which will run in conjunction with Adobe's desktop runtime.
Flex is part of Adobe's Flash Platform. I'm going to quote myself to explain what the Flash Platform is:
The Flash Platform consists of multiple deployment runtimes, development tools, and frameworks that are integrated across the full
Adobe Creative Suite. Here is a list of some Flash Platform elements:
The Flash Player: Flash Player is a browser plug-in which allows us
to deploy web based applications to Windows, Mac, Linux, Android,
and Blackberry.
Adobe AIR: Adobe AIR is a runtime that allows us to deploy native
applications to Windows, Mac, Android, iOS, and Blackberry.
Flash Professional: Flash Professional is a tool for developing
timeline based animations.
Flash Builder: Flash Builder is an IDE to help programmer's write
advanced code.
Adobe Flex: Flex is the Software Development Kit that helps
programmers build, debug, and deploy Enterprise applications with
the Flash Platform. Flex includes a UI Component library, a SWF
compiler, a command line debugger, an application profiler.
There are more aspects of the Flash Platform ecosystem, but I
highlight these because they come from Adobe and are prominently used
by Flash Platform developers.
HTML5 is a spec for the next version of HTML. HTML is a markup language for building web pages. It includes some new aspects for dealing with video (Video Tag) and for creating animations (Canvas).
HTML5, alone, is not a good choice for building Applications.
However, when most people talk about HTML5 they also lump in JavaScript--which is a language used primarily for modifying a web browser's Document Object Model--and CSS3 which provides advanced styling support for HTML5 elements. HTML5, combined with JavaScript and CSS3 can be a good choice for building the UI for a browser based mobile web application. HTML5 support on mobile devices is very consistent because the major mobile OSes (Android and iOS) use the same rendering engine (WebKit) in their respective browsers.
On the desktop, more web rendering engines exist, and many people have older versions of the browser. Building an appplication, targeted for the desktop, with HTML5 technologies is not a decision I would make lightly, but it depends primarily on your audience.
HTML5 is a developing standard which already has significant adoption and holds significant promise.
flex is proprietary and requires a plugin to work and its prognosis is dim -- adobe has already discontinued the development of the mobile plugin.
apple does not support flex.
Can Anyone tell me the differences between Flex SDK and Flash Builder ??
Like - "Mobile development using Adobe Flex SDK "Hero" and Flash Builder "Burrito"
Are Both same ?? Please clarify in details. We understand that Flex is an IDE or SDK(software development kit ) where we build,compile and deploy projects with sets of components and class library available .
Previously it was clear that Adobe Flex builder 3 has been renamed to Adobe Flash Builder 4 like that.
I am really confused. Can anyone help me out.
Thanks in Advance.
Flash Builder Burrito is the next version of Flash Builder (formerly Flex Builder). It's an IDE used to help write Flex applications.
Flex Hero is the next version of the Flex framework. It provides the classes, components and compiler which form the building blocks of Flex applications.
Ie: You can build Flex Hero applications by writing and editing code inside Flash Builder Burrito.
Adobe Flex Builder 3 and Flash Builder 4 are graphical user interfaces, an IDE.
At the same time there are many versions of flex, for example flex builder 3 introduced flex 3 sdk and Flash Builder 4 introduced flex 4 sdk... Those frameworks are open source so u can compile and develop an app using the sdk, that is not very simple because u will need to create you source code in a plain text editor, totally manual and compile from a command line... Flash builder 4 and Flex Builder are IDE but they are not open source and aren't free, so you will have have to pay or use a student license from adobe flash plattform
I want to develop an Adobe air application. Whats the difference between using the Air SDK or Flex SDK and what are the advantages / disadvantages? My application will use a SQLlite database and PHP may be involved later if I turn the whole thing into a web app.
thanks
"If you want to develop an Air application, you must use the Air SDK. If you want to develop a Flex application that runs on Air, you need to use both." - #joshtnjala
I believe #joshtnjala to be partially correct, but I wanted to add on it. If using the Flex 3.3 SDK, you no longer require the AIR SDK as those tools are available to the Flex 3.3 SDK. It is important to note, because I see a lot of confusion or misuse of the term, Flex is actually three things.
Flex SDK (currently 3.3)
allows developers without the Flash and/or Flex IDE's, to develop and compile/publish Actionscript3 and MXML code to flash content (SWF). For example, one could use FlashDevelop for an IDE, and compile the code using the Flex 3.3 SDK.
Flex Framework
(From adobe [http://www.adobe.com/products/flex/overview/][1]) Flex is a free, open source framework for building highly interactive, expressive web applications that deploy consistently on all major browsers, desktops, and operating systems. It provides a modern, standards-based language and programming model that supports common design patterns. MXML, a declarative XML-based language, is used to describe UI layout and behaviors, and ActionScript™ 3, a powerful object-oriented programming language, is used to create client logic. Flex also includes a rich component library with more than 100 proven, extensible UI components for creating rich Internet applications (RIAs), as well as an interactive Flex application debugger.
Flex Builder 3
Flex Builder is merely an IDE to assist in the development of flash (SWF), or AIR content. This builder utilizes the SDK above to compile. The framework may or may not be used depending on the developers needs. Many developers have taken themselves out of the FLASH IDE (THAT NASTY TIMELINE!) and began scripting their AS3 purely in the Flex Builder IDE as it provides many useful features for the "advanced" programmer; Not to mention its a very clean UI and is built on eclipse so it has many plugins and a solid community behind its architecture.
That being said, to expand on what joshtnala said, the difference between using the AIR SKD and the Flex 3.3 SDK, is that if you merely want to build an AIR app, composed of Actiosncript3 code, the AIR SDK is all you need (33mb unpacked). If you intend to use MXML and any part of the "Flex Framework" then you must use the Flex 3.3 SDK (190mb unpacked). This will allow you to use the many available components such as Datagrids, Accordions, etc, in your AIR application. So in the end, both will develop an AIR application as Flex 3.3 SDK incorporates the AIR 1.5 development tools. Abstract your project out, figure out what you will need, if a component works for that, or if a custom implementation is needed, etc, then choose your toolkit.
Hope this helps.
These frameworks are combinable. If you want your app to be both on the web and the desktop, make it using the Flex SDK, then wrap the desktop version of this using Air.
If you're considering deploying on the web, and communicating with a backend server and all that jazz, then flex is the way to go. If your target is desktop users, then AIR.
If you want to develop an Air application, you must use the Air SDK. If you want to develop a Flex application that runs on Air, you need to use both.