
<!DOCTYPE html>
<!--
 Generated by Apache Maven Doxia at 2016-10-27
 Rendered using Reflow Maven Skin 1.1.1 (http://andriusvelykis.github.io/reflow-maven-skin)
-->
<html  xml:lang="en" lang="en">

	<head>
		<meta charset="UTF-8" />
		<title>Apache Flex® - Frequently Asked Questions</title>
		<meta name="viewport" content="width=device-width, initial-scale=1.0" />
		<meta name="description" content="" />
		<meta http-equiv="content-language" content="en" />

		<link href="./css/bootstrap.min.css" rel="stylesheet" />
		<link href="./css/bootstrap-responsive.min.css" rel="stylesheet" />
		<link href="./css/docs.css" rel="stylesheet" />
		<link href="./css/reflow-skin.css" rel="stylesheet" />

		<link href="http://yandex.st/highlightjs/7.5/styles/default.min.css" rel="stylesheet" />

		<link href="./css/lightbox.css" rel="stylesheet" />

		<link href="./css/site.css" rel="stylesheet" />
		<link href="./css/print.css" rel="stylesheet" media="print" />

		<!-- Le HTML5 shim, for IE6-8 support of HTML5 elements -->
		<!--[if lt IE 9]>
			<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
		<![endif]-->


		
<link rel="icon" href="img/favicon.ico" type="image/x-icon"/>
<link rel="apple-touch-icon" href="img/apple-touch-icon-60.png"/>
<link sizes="76x76" rel="apple-touch-icon" href="img/apple-touch-icon-76.png"/>
<link sizes="120x120" rel="apple-touch-icon" href="img/apple-touch-icon-120.png"/>
<link sizes="152x152" rel="apple-touch-icon" href="img/apple-touch-icon-152.png"/>
	</head>

	<body class="page-dev-faq project-flex-site" data-spy="scroll" data-offset="60" data-target="#toc-scroll-target">

		<div class="navbar navbar-fixed-top">
			<div class="navbar-inner">
				<div class="container">
					<a class="btn btn-navbar" data-toggle="collapse" data-target="#top-nav-collapse">
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
						<span class="icon-bar"></span>
					</a>
					<div class="nav-collapse collapse" id="top-nav-collapse">
						<ul class="nav pull-right">
							<li ><a href="index.html" title="Home">Home</a></li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">About Flex <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="about-whatis.html" title="What is Flex?">What is Flex?</a></li>
									<li ><a href="about-features.html" title="Features">Features</a></li>
									<li ><a href=".html" title="Tour de Flex">Tour de Flex</a></li>
									<li ><a href="about-licensing.html" title="License & Trademarks">License & Trademarks</a></li>
									<li ><a href="about-people.html" title="The Team">The Team</a></li>
									<li ><a href="about-history.html" title="Project History">Project History</a></li>
									<li ><a href="about-assets.html" title="Logo and Assets">Logo and Assets</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Community <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="community-getinvolved.html" title="How to get involved">How to get involved</a></li>
									<li ><a href="community-mailinglists.html" title="Mailing Lists">Mailing Lists</a></li>
									<li ><a href="community-showcase.html" title="Flex Showcase">Flex Showcase</a></li>
									<li ><a href="community-3rdparty.html" title="Third-Party">Third-Party</a></li>
									<li ><a href="https://cwiki.apache.org/confluence/display/FLEX/Apache+Flex+Wiki" title="Wiki" class="externalLink">Wiki</a></li>
									<li ><a href="http://blogs.apache.org/flex/" title="Blog" class="externalLink">Blog</a></li>
								</ul>
							</li>
							<li class="dropdown active">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Development <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li class="active"><a href="" title="Developer FAQ">Developer FAQ</a></li>
									<li ><a href="dev-sourcecode.html" title="Source Code">Source Code</a></li>
									<li ><a href="https://issues.apache.org/jira/browse/FLEX" title="Bug-Tracker" class="externalLink">Bug-Tracker</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Documentation <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="doc-getstarted.html" title="Getting Started">Getting Started</a></li>
									<li ><a href="doc-videos.html" title="Videos">Videos</a></li>
									<li ><a href=".html" title="Flex ASDocs">Flex ASDocs</a></li>
									<li ><a href=".html" title="FlexJS ASDocs">FlexJS ASDocs</a></li>
									<li ><a href="http://help.adobe.com/en_US/flex/using/index.html" title="Documentation Reference (Old)" class="externalLink">Documentation Reference (Old)</a></li>
									<li ><a href=".html" title="FlexUnit Tutorials">FlexUnit Tutorials</a></li>
									<li ><a href=".html" title="FlexUnit ASDocs">FlexUnit ASDocs</a></li>
									<li ><a href="doc-website.html" title="Contributing to the Flex Website">Contributing to the Flex Website</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">About Apache <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="http://www.apache.org" title="The Apache Software Foundation Website" class="externalLink">The Apache Software Foundation Website</a></li>
									<li ><a href="http://www.apache.org/foundation/contributing.html" title="Donations" class="externalLink">Donations</a></li>
									<li ><a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship" class="externalLink">Sponsorship</a></li>
									<li ><a href="http://www.apache.org/foundation/thanks.html" title="Thanks" class="externalLink">Thanks</a></li>
								</ul>
							</li>
							<li class="dropdown">
								<a href="#" class="dropdown-toggle" data-toggle="dropdown">Download Flex <b class="caret"></b></a>
								<ul class="dropdown-menu">
									<li ><a href="download-installer.html" title="SDK Installer (For Application Developers)">SDK Installer (For Application Developers)</a></li>
									<li ><a href="download-source.html" title="SDK Source Code (For SDK Developers)">SDK Source Code (For SDK Developers)</a></li>
									<li ><a href="download-binaries.html" title="SDK Binaries (For SDK Developers)">SDK Binaries (For SDK Developers)</a></li>
									<li ><a href="download-flexjs.html" title="FlexJS 'beta' (For Application Developers)">FlexJS 'beta' (For Application Developers)</a></li>
									<li ><a href="download-flexunit.html" title="FlexUnit (For Application Developers)">FlexUnit (For Application Developers)</a></li>
									<li ><a href="download-blazeds.html" title="Blaze DS Source Code">Blaze DS Source Code</a></li>
									<li ><a href="download-tourdeflex.html" title="Tour De Flex Source Code">Tour De Flex Source Code</a></li>
									<li ><a href="download-squiggly.html" title="Squiggly Spell Checker">Squiggly Spell Checker</a></li>
									<li ><a href="download-utilities.html" title="Flex Utilities">Flex Utilities</a></li>
									<li ><a href="download-archive.html" title="Previous Versions">Previous Versions</a></li>
								</ul>
							</li>
						</ul>
					</div><!--/.nav-collapse -->
				</div>
			</div>
		</div>

	<div class="container">

	<!-- Masthead
	================================================== -->

	<header>
	<div class="jumbotron subhead">
		<div class="row" id="banner">
			<div class="span12">
				<div class="pull-left">
					<a href="http://flex.apache.org/" id="bannerLeft"><img src="img/logo-flex.png" alt='"'Apache Flex'"' /></a>
				</div>
				<div class="pull-right">
					<a href="http://www.apache.org" id="bannerRight"><img src="img/logo-asf.png" alt='"'An Apache Project'"' /></a>
				</div>
			</div>
		</div>
	</div>
	</header>

	<div class="main-body">
	<div class="row">
		<div class="span12">
			<div class="body-content">
<!-- Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at
 
 http://www.apache.org/licenses/LICENSE-2.0
 
 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License. --> 
<div class="page-header">
 <h1>Frequently Asked Questions</h1>
</div> 
<p>This page covers some frequently asked questions that we get on the mailing lists. We will be updating it with more content as time goes on.</p> 
<div class="section"> 
 <h2 id="Can_I_have_write_access_to_GIT">Can I have write access to GIT?</h2> 
 <p>Due to legal reasons, only people who have been elected as committers have write access to directly update the code in version control. We at Apache take the legality of code seriously, and nothing would be worse than somebody contributing code that they don’t own and a 3rd party having a legal claim to our framework. That being said, you can submit code by providing <tt>.patch</tt> files (diff files) to the project. Check out the <a href="community-getinvolved.html">Get Involved</a> page for more details on how to do that.</p> 
</div> 
<div class="section"> 
 <h2 id="How_is_this_different_than_Adobe_Flex">How is this different than Adobe Flex?</h2> 
 <p>In November, 2011, Adobe announced they were no longer supporting Adobe Flex. Instead of just killing the framework they donated it to Apache. Apache Flex 4.8.0 is essentially the exact same version of Flex as Adobe’s last official version. Since that initial donation the Apache Flex team has been working hard on fixing bugs, providing additional components and finishing unfinished components. As we progress through additional versions, we will be less and less like Adobe’s Flex framework, but we will strive to be compatible with it.</p> 
 <p>Adobe has offered some of their customers extended support contracts, and may produce additional versions, but that is unlikely. Future support of the Flex Framework is through this project.</p> 
 <p>There are a few differences you should be aware of in the Apache version of the SDK. Most notably, the Flash Player will not cache RSLs created with Apache Flex. You can find out more in the RELEASE_NOTES file in your SDK download</p> 
</div> 
<div class="section"> 
 <h2 id="Ive_used_Adobe_Flex_before._How_do_I_start_using_Apache_Flex">I’ve used Adobe Flex before. How do I start using Apache Flex?</h2> 
 <p>The quickest way to start using Apache Flex is to use the Apache Flex SDK Installer. This AIR application will download the latest version of the Apache Flex SDK and all the required components to make it work. It will also set the proper options so that the SDK can be used with your favorite IDE such as Flash Builder, FDT, Flash Develop or IntelliJ. To use the SDK Installer, go to the <a href="installer.html">“Download the SDK Installer”</a> link under the downloads menu above. It will walk you through the rest of the process.</p> 
 <p>Once you have the SDK on your computer, it should be just like the old Adobe SDK you were already using. Make sure to check the RELEASE_NOTES file for a full list of differences.</p> 
</div> 
<div class="section"> 
 <h2 id="Why_are_you_not_using_GitHub">Why are you not using GitHub?</h2> 
 <p>A mirror of the project is currently available on GitHub, but we are not accepting pull requests at this time. (However we can accept patch files generated from pull requests.)</p> 
</div> 
<div class="section"> 
 <h2 id="I_dont_have_time_to_read_the_mailing_lists._How_can_I_keep_up_with_the_project">I don’t have time to read the mailing lists. How can I keep up with the project?</h2> 
 <p>The <a class="externalLink" href="http://www.spoon.as">Open Spoon Foundation</a> has been providing monthly updates as to the goings-on of the Apache Flex project through their “Apache Revue” newsletter. You can also check out the <a class="externalLink" href="http://blogs.apache.org/flex/">Apache Flex Blog</a> for critical updates.</p> 
</div> 
<div class="section"> 
 <h2 id="Where_can_I_find_the_Apache_Flex_Roadmap">Where can I find the Apache Flex Roadmap?</h2> 
 <p>We do not have a roadmap. That is not the Apache Way™. Apache Flex is a project run and maintained by volunteers. The way that Apache works is that each developer do what they are passionate about. There is no release schedule, and therefore, there is no official roadmap. You can always make suggestions via JIRA or the mailing lists for new features that you wish to see and if they are good enough a developer will pick them up. You can always contribute your own code for new features as well. You can find out more about contributing code on the <a href="community-getinvolved.html">Get Involved page</a>.</p> 
 <p>All that being said, you can check out what developers are working on by peeking in the “Whiteboard” area of the source control. There is a lot of cool projects incubating there that may (or may not) make it into future releases.</p> 
</div> 
<div class="section"> 
 <h2 id="What_happens_to_my_projects_if_Adobe_Discontinues_the_Flash_Player">What happens to my projects if Adobe Discontinues the Flash Player?</h2> 
 <p>It is true that current Flex projects are tied to either the Adobe Flash Player or Adobe AIR. We have been making great strides to compile projects to native JavaScript, therefore bypassing the Flash Player in the browser. Adobe has made a commitment to support the Flash Player and our current runtime for at least 5 years from the time they donated the project to Apache. You can find out more about their roadmap on the <a class="externalLink" href="http://www.adobe.com/devnet/flashplatform/whitepapers/roadmap.html">Adobe Flash Whitepaper</a>.</p> 
 <p>Event if Adobe no longer created new versions of the Flash Player, it is still had an incredible install base (being installed on over 90% of internet-connected PCs). If the Flash Player were no longer updated today, it would still be installed just about everywhere.</p> 
</div> 
<div class="section"> 
 <h2 id="Will_my_code_work_on_Platform_X">Will my code work on Platform X?</h2> 
 <p>The currently released version of Apache Flex will output to either SWF of AIR. SWF is supported within browsers on Windows 2000 through Windows 8, Mac OSX, Linux (using Chrome), many phones and some smartphones. AIR allows you to take your Flex application and output native applications for Android (2.2+), iOS (3+),certain BlackBerry QNX devices (Playbook), MacOSX and Microsoft Windows.</p> 
 <p>We are currently working on supporting JavaScript as an output. This will increase support to anywhere HTML5 is supported.</p> 
 <p>Other platforms may be added if Adobe AIR beings to support them. Unfortunately, we are not in control of adding additional support for other platforms at this time.</p> 
</div> 
<div class="section"> 
 <h2 id="Can_I_submit_apps_I_make_with_Apache_Flex_to_App_Store_X">Can I submit apps I make with Apache Flex to App Store X?</h2> 
 <p>By using Adobe AIR with Apache Flex, you can produce applications that can be submitted to the Apple App Store, Android Market, Apple Mac App Store and Blackberry App World. There are very successful projects that have been submitted to all of the above. In fact, you can actually use one code base to create apps for each of the different platforms to submit to all of the different stores!</p> 
 <p>Apache Flex coupled with Adobe AIR allows you to make Apple iOS Applications from a Windows PC. You will need a Mac in order to submit the app to the store.</p> 
</div> 
<div class="section"> 
 <h2 id="Does_Apache_Flex_cost_money">Does Apache Flex cost money?</h2> 
 <p>No. This is a completely open-source project and uses the <a href="about-licensing.html">Apache License v. 2.0</a>. This allows you to use the SDK and any outputs of the SDK for personal and commercial use with virtually no restrictions. Some of the recommended tooling (not produced by Apache) costs money, however you are more than free to use the included command-line compilers and toolsets.</p> 
</div>
			</div>
		</div>
	</div>
	</div>

	</div><!-- /container -->

	<!-- Footer
	================================================== -->
	<footer class="well">
		<div class="container">
			<div class="row">
				<div class="span4 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">About Flex</li>
						<li >
							<a href="about-whatis.html" title="What is Flex?">What is Flex?</a>
						</li>
						<li >
							<a href="about-features.html" title="Features">Features</a>
						</li>
						<li >
							<a href=".html" title="Tour de Flex">Tour de Flex</a>
						</li>
						<li >
							<a href="about-licensing.html" title="License & Trademarks">License & Trademarks</a>
						</li>
						<li >
							<a href="about-people.html" title="The Team">The Team</a>
						</li>
						<li >
							<a href="about-history.html" title="Project History">Project History</a>
						</li>
						<li >
							<a href="about-assets.html" title="Logo and Assets">Logo and Assets</a>
						</li>
						<li class="nav-header">Community</li>
						<li >
							<a href="community-getinvolved.html" title="How to get involved">How to get involved</a>
						</li>
						<li >
							<a href="community-mailinglists.html" title="Mailing Lists">Mailing Lists</a>
						</li>
						<li >
							<a href="community-showcase.html" title="Flex Showcase">Flex Showcase</a>
						</li>
						<li >
							<a href="community-3rdparty.html" title="Third-Party">Third-Party</a>
						</li>
						<li >
							<a href="https://cwiki.apache.org/confluence/display/FLEX/Apache+Flex+Wiki" title="Wiki" class="externalLink">Wiki</a>
						</li>
						<li >
							<a href="http://blogs.apache.org/flex/" title="Blog" class="externalLink">Blog</a>
						</li>
					</ul>
				</div>
				<div class="span4 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">Development</li>
						<li class="active">
							<a href="#" title="Developer FAQ">Developer FAQ</a>
						</li>
						<li >
							<a href="dev-sourcecode.html" title="Source Code">Source Code</a>
						</li>
						<li >
							<a href="https://issues.apache.org/jira/browse/FLEX" title="Bug-Tracker" class="externalLink">Bug-Tracker</a>
						</li>
						<li class="nav-header">Documentation</li>
						<li >
							<a href="doc-getstarted.html" title="Getting Started">Getting Started</a>
						</li>
						<li >
							<a href="doc-videos.html" title="Videos">Videos</a>
						</li>
						<li >
							<a href=".html" title="Flex ASDocs">Flex ASDocs</a>
						</li>
						<li >
							<a href=".html" title="FlexJS ASDocs">FlexJS ASDocs</a>
						</li>
						<li >
							<a href="http://help.adobe.com/en_US/flex/using/index.html" title="Documentation Reference (Old)" class="externalLink">Documentation Reference (Old)</a>
						</li>
						<li >
							<a href=".html" title="FlexUnit Tutorials">FlexUnit Tutorials</a>
						</li>
						<li >
							<a href=".html" title="FlexUnit ASDocs">FlexUnit ASDocs</a>
						</li>
						<li >
							<a href="doc-website.html" title="Contributing to the Flex Website">Contributing to the Flex Website</a>
						</li>
					</ul>
				</div>
				<div class="span4 bottom-nav">
					<ul class="nav nav-list">
						<li class="nav-header">About Apache</li>
						<li >
							<a href="http://www.apache.org" title="The Apache Software Foundation Website" class="externalLink">The Apache Software Foundation Website</a>
						</li>
						<li >
							<a href="http://www.apache.org/foundation/contributing.html" title="Donations" class="externalLink">Donations</a>
						</li>
						<li >
							<a href="http://www.apache.org/foundation/sponsorship.html" title="Sponsorship" class="externalLink">Sponsorship</a>
						</li>
						<li >
							<a href="http://www.apache.org/foundation/thanks.html" title="Thanks" class="externalLink">Thanks</a>
						</li>
						<li class="nav-header">Download Flex</li>
						<li >
							<a href="download-installer.html" title="SDK Installer (For Application Developers)">SDK Installer (For Application Developers)</a>
						</li>
						<li >
							<a href="download-source.html" title="SDK Source Code (For SDK Developers)">SDK Source Code (For SDK Developers)</a>
						</li>
						<li >
							<a href="download-binaries.html" title="SDK Binaries (For SDK Developers)">SDK Binaries (For SDK Developers)</a>
						</li>
						<li >
							<a href="download-flexjs.html" title="FlexJS 'beta' (For Application Developers)">FlexJS 'beta' (For Application Developers)</a>
						</li>
						<li >
							<a href="download-flexunit.html" title="FlexUnit (For Application Developers)">FlexUnit (For Application Developers)</a>
						</li>
						<li >
							<a href="download-blazeds.html" title="Blaze DS Source Code">Blaze DS Source Code</a>
						</li>
						<li >
							<a href="download-tourdeflex.html" title="Tour De Flex Source Code">Tour De Flex Source Code</a>
						</li>
						<li >
							<a href="download-squiggly.html" title="Squiggly Spell Checker">Squiggly Spell Checker</a>
						</li>
						<li >
							<a href="download-utilities.html" title="Flex Utilities">Flex Utilities</a>
						</li>
						<li >
							<a href="download-archive.html" title="Previous Versions">Previous Versions</a>
						</li>
					</ul>
				</div>
			</div>
		</div>
	</footer>

	<div class="container subfooter">
		<div class="row">
			<div class="span12">
				<p class="pull-right"><a href="#">Back to top</a></p>
				<p class="copyright">Copyright &copy;2016 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.</p>
				<p><a href="http://github.com/andriusvelykis/reflow-maven-skin" title="Reflow Maven skin">Reflow Maven skin</a> by <a href="http://andrius.velykis.lt" target="_blank" title="Andrius Velykis">Andrius Velykis</a>.</p>
			</div>
		</div>
	</div>

	<!-- Le javascript
	================================================== -->
	<!-- Placed at the end of the document so the pages load faster -->
	<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

	<script src="./js/bootstrap.min.js"></script>
	<script src="./js/lightbox.min.js"></script>
	<script src="./js/reflow-scroll.js"></script>
	<script src="http://yandex.st/highlightjs/7.5/highlight.min.js"></script>

	<script src="./js/reflow-skin.js"></script>

	</body>
</html>
