Is it possible to use C library in Flex? - apache-flex

I am trying to make an SIP based application running on Adobe AIR using Flex. Can I use the PJSIP library written in C for my Flex project?

Yes, you can by using AIR native extensions. Quoting the introduction:
Native Extensions for Adobe AIR are code libraries that contain native code wrapped with an ActionScript API. You can use native extensions in an AIR application to access platform features not supported by AIR, to benefit from native-code-level performance for critical algorithms, and to reuse existing native code libraries.

Related

Can I use an Uno Cross-Platform Library within a UWP app?

I've created an Uno cross-platform library that includes a few different Uno controls.
Is it possible to use this library within a UWP project?
Assuming you've used cross-platform APIs (eg from Windows.UI.Xaml.* namespaces) and haven't used platform-specific APIs, then yes you can reference this library from a UWP project, as you would any other library.

Cannot find ExtensionContext

I'm using Flex Builder 4.6 in WinXP, but the line
import flash.external.ExtensionContext;
will get an error message. Why?
Native Extensions for Adobe AIR are code libraries that contain native
code wrapped with an ActionScript API. You can use native extensions
in an AIR application to access platform features not supported by
AIR, to benefit from native-code-level performance for critical
algorithms, and to reuse existing native code libraries.
Developing Native Extensions
You can write Native Extensions only for Adobe AIR

adobe air vs flex vs flash builder --- i need an explanation please

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

How to connect / communicate with fingerprint or scanner in flex

I want to write application in adobe flex/air through which I can communicate/connect with hardware devices such as Fingerprint reader, scanner.
Is there any way to do so?
Is flex/air support hardware interaction with the following devices.
It's possible in AIR if you use native extensions.
You will have to write a separate native extension for each platform and compile separate application versions.
Native extension example for Mac.
Native extension example for Mac and Windows in C++.

Should I use the Flex or Air SDK to develop an Air app?

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.

Resources