Upgrading SDK for Flex Builder 3 - apache-flex

I've got Flex Builder 3 running on a Mac. I'm using the Flex 3.2 SDK. I'd like to upgrade the SDK, so that I can target Flash Player 10. I've never upgraded the SDK; and I don't want to blow it and foul up my old projects.
I found this link to upgrade the SDK, but I'm not sure which version to upgrade to-- milestone, stable, or nightly. Also, which type-- Adobe Flex SDK, Open Source Flex SDK, or Adobe Add-ons. I would assume that I need the Adobe Flex SDK.
I also found this upgrade link. Should I use this version instead?
I want to keep using Flex Builder 3. I'm not ready to upgrade to Flash Builder 4, yet.
As I understand it, I download the SDK, uninstall Flash, got to Preferences->Flex->Installed SDKs and add the zip, and then re-install Flash. If I want to work on an old project, I just select the old SDK.
Thank you.
-Laxmidi

Yes Adobe Flex SDK is the one you want, a stable release. Your understanding of the installation is correct except you don't need to uninstall and reinstall Flash unless you're switching flash player versions, and unless I'm mistaken you can't select the zip without extracting it to a directory first.

Related

Xamarin Android app out of the box shows undefined Android.Support, Android.Views, Android.Content in MainActivity

I needed to rebuild my fairly ancient Xamarin Forms app from scratch and in the process arrived at a situation where I had a new working iOS app but had needed to delete the draft Android app and start it again. So as a next step I added a vanilla Android app project out of the box and immediately what I saw was that (in MainActivity) Android.Support, Android.Views and Android.Content were undefined with wiggy red lines beneath -- for example in a reference to Android.Support.V7.Widget.Toolbar.
Trying to solve the problem, I set each of Target Framework, Minimum Android Version and Target Android Version to Android 9.0 Pie (API Level 28). In SDK Manager I checked that Android SDK Location and Java SDK Location were 'Found' and that Android SDK Platform 28 was installed.
The following NuGets came installed along with the project, I deleted them and reinstalled them (removing bin/obj folders in between): Xamarin.Android.Support.Core.Utils, Xamarin.Android.Support.CustomTabs and Xamarin.Android.Support.Design.
I tried installing NuGets Xamarin.Android.Support.v7.*. And I added the Xamarin.Forms NuGet. I tried adding 'use' declarations.
None of this helped.
For comparison I separately installed a blank Android app solution-- it worked perfectly out of the box.
Android is pretty new to me - would be grateful for suggestions on fixing this.
The app has a .NET Standard 2.0 project, an iOS project, the (vanilla) Android project (all three with Xamarin Forms), and a .NET Standard 2.0 library project.
I'm using Visual Studio for Mac V8.5.4 (stable) on MacOS 10.15.3.
I noticed that the content of MainActivity.cs is quite different, depending whether the Android project is created separately or as part of a Xamarin Forms solution. Also the provided NuGets are different. So perhaps what I was trying to do, adding an Android app to an existing XF solution, is simply not allowed.
To fix the problem, I created an empty Xamarin Forms solution with Android and iOS projects, added a further empty library project, then in Finder replaced the content of all the project folders, except the Android one, with the content of the corresponding folders in my working solution (the one with a working iOS app).
Migrating to AndroidX is a good idea though.
I don't know if this will help, but you should migrate to AndroidX as soon as possible, nevertheless. Xamarin has migrated to them, starting from Forms 4.5
Here is some more information about the libraries - Introducing AndroidX for Xamarin
There is a special NuGet package for the migration - Xamarin.AndroidX.Migration. Also available is a built-in functionality in Visual Studio - here
What I can suggest is you try to migrate to AndroidX libraries, since the old support libraries won't be supported from now on, and you will surely encounter some issues if not like this one, then something else will pop-up in the future.

Migrating existing Flex 4.x projects to Apache Flex 4.x

I've been tasked with maintaining some existing flex 4.6 projects and am wanting to future proof them for the latest browsers. Should I move the projects over to Apache flex? If so what do I need to do to make these existing projects compatible with Apache flex?
No, you don't need to migrate these projects to Apache Flex.
Flex 4.6 projects can still be built and deployed; they just don't have the latest SDK changes. Your projects will remain compatible with future Flash Player versions.
The only reason to update to Apache Flex at this point is if you need features introduced in a later version of the Flex SDK.
Recent versions of the Apache Flex SDK have newer features, a large number of bug fixes, have been tested with the latest version of Flash Player, and in general have better performance and consume less memory than Adobe Flex 4.6.
So while Apache Flex is not required to run in the latest browsers you stil may want to consider moving to Apache Flex for these reasons.
My experience is with Flex/AIR desktop apps, I migrated using the Apache Flex installer to download latest SDK and AIR, then in the IDE you need to add the new SDK and select it. I did not had bugs or problems when I upgraded to latest versions(but you may encounter bugs or differences so you need to do some testing)

How to develop cross platform apps with Flex?

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.

flex for ARM compilation -?

i am trying to find out how to build my .as for mobile browser on Android 2.2 smartphone.
I downloaded latest distribution of "Hero" SDK, but all tutorials show only how to create mobile project with Flash Builder. Any idea how to build .swf from command line mxmlc for mobile ?
Thanks,
-V
Taken from this page:
http://labs.adobe.com/technologies/flex/mobile/faq.html
Can I build mobile applications using only Flex SDK "Hero" without Flash Builder "Burrito"?
Yes. However, in order to get your application onto a device for testing, you will need to install the Android SDK, and use a combination of the Adobe AIR SDK command-line packaging tool and the Android SDK's "adb" tool.
http://help.adobe.com/en_US/air/build/WSfffb011ac560372f-5d0f4f25128cc9cd0cb-7ffb.html
Haven't done this myself but that looks right.
Good luck,
Shaun

Installing Flex Builder Plugin on Eclipse 3.5 (galileo) Mac Cocoa 64bit

Is there a way to get the Flex Builder plugin working on the latest Eclipse running on the Mac?
I've read that there is no hope with the Cocoa/64 bit version, but some report it works with the Carbon version.
I need the 64bit/cocoa version on the Mac in order to have access to the JDK6 libraries via the embedded maven support in the Eclipse IAM plugin.
Unfortunately Eclipse 3.5 is unsupported by Flex Builder 3. There are a few bugs for this:
http://bugs.adobe.com/jira/browse/FB-21025
http://bugs.adobe.com/jira/browse/FB-21284
Please comment on those bugs and vote for them.
Try this one. That worked for me. I have Eclipse Galileo (3.5) and FlexBuilder 3.0
Goto your Eclipse Installation (example my installation is C:\eclipse) and there to this folder: C:\eclipse\links
Open File or create com.adobe.flexbuilder.feature.core.link and type in this text:
path=C:/Program Files/Adobe/Flex Builder 3 Plug-in
In my case the word path was missing. After that restart your Galileo and it should work.

Resources