How to know exact flex sdk version from existing project files? - apache-flex

I received an inheritance old flex project. I've never worked with Flex. I installed the latest Flash Builder and I need to know the exact version of used Flex SDK. Is there any way to know used SDK version from project files?
Thanks in advance!

Is it's an AIR project, you can open up the -app.xml, based on which the project is built and check out the application namespace
<application xmlns="http://ns.adobe.com/air/application/1.0">
Represents AIR 1.0 (Flex SDK 3.2)
<application xmlns="http://ns.adobe.com/air/application/2.0">
Represents an AIR 2.0 Project (SDK 4.0 ?)
If it's a WebProject (that runs on FlashPlayer), check the .actionScriptProperties file in your project. In one of my project files, under the compiler tag, I can find a property called flexSDK="Flex 3.2". Not sure if this will be there for every project, as i could not find the same property for other projects.
One more thing you can check is the target FlashPlayer version you are going to compile against. Check the htmlPlayerVersion property of the compiler tag in your .actionScriptProperties file.
If the htmlPlayerVersion is greater than or equal to 10.0.0, you should use Flex SDK 3.2 or above.

Right-click on project folder in flash builder, then property, then flex compilator.

Related

How to fix Xamarin Forms pipeline Target Framework error

Locally, I can build and run my Xamarin Forms application with no issues. In my Azure build pipelines I have my master branch failing because of my target framework version. It says it is 9.0 when it should be at least 10.0.
In my Android project file I have the framework version set to 10.0. I have made sure it is also v10 in the properties tab for the project. Yet I still get the below error.
##[error]C:\Users\VssAdministrator\.nuget\packages\xamarin.forms\5.0.0.2012\build\Xamarin.Forms.targets(188,5): Error XF005: The $(TargetFrameworkVersion) for MyApp.Android (v9.0) is less than the minimum required $(TargetFrameworkVersion) for Xamarin.Forms (10.0). You need to increase the $(TargetFrameworkVersion) for MyApp.Android.
Try to open your .csproj file,and manually modify its targetFrameworkVersion.
<TargetFrameworkVersion>v10.0</TargetFrameworkVersion>
Verify that BOTH of the following project properties are set to 10.0:
Application / Compile using Android version (Target Framework).
Android Manifest / Target Android version.
https://learn.microsoft.com/en-us/xamarin/android/app-fundamentals/android-api-levels
If those are already both 10.0, then make sure the Azure build pipeline has up-to-date versions of Android SDKs and tools.
Another way to fix:
If you are able to create a new sample solution, and successfully build that via Azure, then start a new solution, and add all your files to it.

Project not compatible with netcoreapp2.0

I'm trying to add a full framework class library as a project reference to asp.net core 2.0 MVC project and getting the below error.
Project XYZ is not compatible with netcoreapp2.0 (.NETCoreApp,Version=v2.0).
Project XYZ supports: net462 (.NETFramework,Version=v4.6.2)
I have updated to the most recent version of Visual studio i.e, 15.3.5.
Is it even possible to reference 4.6.2 libraries in core 2.0 projects?
The first thing that you can try is to compile the library you want to consume as netstandard2.0.
Theoretically (according to the .net standard documentation), this will make it compatible with projects using net461 and later as well as netcoreapp2.0 and later.
In practice, sometimes you will end up with a problem with one of your dependencies that don't provide the same library version across different compilation targets.
In such cases you may simply need to add the .net core 2.0 as a target framework for the XYZ library.
The xml tag listing the targets is <TargetFrameworks> in the XYZ.csproj file and is not handled by the Gui of the project's properties.
So I would give a try at editing the XYZ.csproj by hand and add or replace what's listed as <TargetFrameworks> with netcoreapp2.0.
If you are adding it as additional target you need to separate them with ';' as in
<TargetFrameworks>net462;netstandard2.0;netcoreapp2.0</TargetFrameworks>
More details about this in this Microsoft doc.
Please keep in mind that this will trigger multiple compilations and will slow your build consequently...
It should be. Microsoft announced a ".NET Framework Compatibility Mode" with the release of .NET Standard 2.0. However, they didn't go into great detail about how it works exactly, or what to troubleshoot if it doesn't. Additionally, they only specific talk about it in relationship to Nuget packages, so it's possible there's some role Nuget is playing in the process, as well. Unfortunately, I've been unable to find any additional information about this feature outside of the announcement post.
That said, Microsoft's explicit recommendation is to not rely on the fact that your .NET Framework library may just happen to work in .NET Core; instead, you should be actively porting .NET Framework libraries you control to .NET Standard. I'd say you're likely going to spend more time trying to figure out why it doesn't "just work" than you would porting your code, so that it will definitely work, and be future-proof to boot.
The following solution worked for me.
Deleted bin and obj folders from all the projects in the solution, rebuild and if it still doesn't work try changing browser from debug options. for eg. If you already have chrome as default browser in Visual studio, switch to Edge or Firefox.

How to attach file extension with my AIR application that by default open with my AIR application?

I made an AIR application that parses some specific files. I am using flex builder 4.5 and SDK 3.6. I want to attach Icons with those files and when I double click those files they should open with my application. How can I do this?
Thanks
In the Application Descriptor file (look in your project structure for a file named like your application, plus -app.xml as an ending) find the tag fileTypes.
If you uncomment it, you can specify which file types you application handles, and which icons to show for those files.
We can not do this using SDK 3.6 in flex builder 4.5. To do this we need to use SDK 4.5.

Upgrading SDK for Flex Builder 3

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.

Compc "error: could not find source for resource bundle" in Flex 3 when upgrading from 2.0.1

I have moved our project from SDK 2.0.1 to 3.5 because I'm using TLF. This has compiled OK in flex builder 3 IDE but I am now using command line compilation for our build system and getting errors for all the standard Flex resource bundles: Sharedresources, collections, containers, controls etc. I can see this is because of the improvements in Flex 3 and the SDK local folder doesn't have these as .properties files but now has a framework_rb.swc.
Can anyone tell me how to get the resource bundles to compile using 3.5 SDK?
The application isn't doing anything clever with resource bundles or using the resourcebundle metatag.
Thanks,
Nigel
I guess it means framework resource bundles can't be found on the build system machine. You should create them with the copylocale command.
When adding other locales, you must
also include the framework resources
for that locale. The en_US locale is
already provided. For all other
locales, you must create the framework
resources. To create a locale’s
framework resources, use the
copylocale utility in the /sdk/bin
directory. For Flash Builder, the
copylocale utility is located in
flash_builder_install/sdks/4.0.0/bin.
You can only execute this utility from
the command line.
http://help.adobe.com/en_US/flex/using/WS2db454920e96a9e51e63e3d11c0bf69084-7f2d.html

Resources