I think it would be best to ask them directly see on their site
now without being an expert in Royale I can answer a bit
You can use both AS3 and MXML
Royale difference is at the level of the compiler
it can output SWF file like the Apache Flex SDK
but it can also output HTML/CSS/JS from AS3 and MXML
Not really, Adobe AIR is a runtime that can “play” SWF files
another runtime is the Flash Player plugin for the browser which can also play SWF files
the difference between Adobe AIR and Flash Player will be about
which API the SWF have access to, in short the capacity of the runtime
when Royale output HTML/CSS/JS formats there the runtime is the browser
and so the capacities are the one of the Web API in the browser
It really depends on which output format interest you
if you use Adobe AIR as a runtime you can compile with those choices
- use the Adobe AIR SDK and compile SWF (and other formats like IPA, APK, etc.)
that will run with the Adobe AIR runtime )with iOS it’s a bit different)
- use the Apache Flex SDK merged with the Adobe AIR SDK
and same as above compile SWF that will run with the Adobe AIR runtime
- use Apache Royale and compile SWF or HTML/CSS/JS
SWF format will run with the Adobe AIR runtime
HTML/CSS/JS will run in the browser
If it’s not your case to target HTML format then yeah Royale is not really useful for you
Nope, the performance will depends on the runtime where you code is running.
If your goal is to target Adobe AIR as a runtime, either compiling from Apache Flex SDK, Adobe AIR SDK or Royale should output the same SWF, so the same SWF runtime in the Adobe AIR runtime should have same performance.
So I try to keep it simple but it is a bit more complicated than that.
Sure even if Royale can also output SWF than can run in Adobe AIR runtime,
you don’t necessarily gonna structure your code the same way as with Apache Flex SDK or Adobe AIR SDK.
With Royale the goal is to structure the code with MXML
based on an example here HelloWorld.mxml
<?xml version="1.0" encoding="utf-8"?>
width="600" height="400" >
<!-- to do: layout="absolute" minWidth="955" minHeight="600" -->
@namespace mx "library://ns.apache.org/royale/mx";
/* set position:absolute to make the (x,y) properties work */
<mx:Label text="Hello World" x="20" y="20" />
this can compile to either a SWF or HTML and so can play in either Flash/AIR or a browser
but yeah you have to use MXML and the component framework associated to it.
So I would say the main advantage of Royale is to be able to write part of your code in ActionScript 3,
but I would say the main disadvantage is not be able to write “pure AS3” code because you have to use MXML for the UI layout.