Video Chat for Android in 30 Lines of Code

Here is a simple Video Chat application I built with Flex 4 and deployed on AIR for Android. The Application is just 30 lines of code and allows multiple users to join a chat room and “video chat”.

Video streaming is powered by LiveCycle Collaboration Services, a set of hosted Flash Services that enable developers to easily add real-time collaboration and social capabilities to their applications.

This application is obviously a bare-bones proof of concept. However, it is fully operational, and the same code can run on different runtime environments: AIR for Android, AIR on the Desktop, and Flash Player in the Browser. Users can participate in the same collaboration session regardless of the runtime environment they use.

Watch the video:

The 30 lines of code:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:cs="AfcsNameSpace" currentState="logon" fontSize="28">

	<fx:Script>
		[Bindable] private var roomURL:String = "http://connectnow.acrobat.com/YOUR_ROOM_NAME";

		protected function connect():void {
			auth.userName = userName.text;
			currentState = "default";
			session.login();
		}
	</fx:Script>

	<s:states>
		<s:State name="default"/>
		<s:State name="logon"/>
	</s:states>

	<fx:Declarations>
		<cs:AdobeHSAuthenticator id="auth"/>
	</fx:Declarations>

	<s:TextInput id="userName" includeIn="logon" top="200" horizontalCenter="0"/>
	<s:Button label="Connect" click="connect()" includeIn="logon" top="250" horizontalCenter="0" height="50" width="150"/>

	<cs:ConnectSessionContainer id="session" roomURL="{roomURL}" authenticator="{auth}" autoLogin="false" width="100%" height="100%" includeIn="default">
		<cs:WebCamera top="10" left="10" bottom="10" right="10"/>
	</cs:ConnectSessionContainer>

</s:Application>

Android Trader Desktop with Flex and AIR — Updated for Froyo + Source Code Available

A few weeks ago, I posted a video of a Mobile Trader Desktop application I built using Flex 4 and AIR for Android. I recently updated the application for Froyo (Android 2.2), and I can now share the application file and the source code.

Watch the video:

Download the Application and Source Code

  • You can download the application (MobileTrader.apk) here
  • You can download the source code (MobileTrader.fxp project file) here

The latest version of AIR for Android is available here.

NOTE: In this version of the application, the stock updates are simulated at the client side so that you don’t have to install the server infrastructure. Modifying the application to get the stock updates from a server is easy: use this application as an example.

Employee Directory Sample Application Using Flex and AIR for Android – Updated for Froyo

I finally took the time to rebuild the Employee Directory application with the latest version of AIR for Android (available here) to run on Froyo. See the links below to download the apk and the source code. (If you are still running Eclair see my original post).

The Employee Directory application demonstrates how to build Flex applications for Android using the AIR runtime.

Watch the video:

The key point when you look at the source code of this application is that you build Flex applications for Android the exact same way you build Flex applications for the Browser and the Desktop: same programming model, same language, same tools, same code. This application for example uses a local SQLite database on your device that you access using the same database API you’d use for any other Flex application running on the AIR runtime.

The other good news is that you have access to additional APIs (GPS, accelerometer), and you can integrate with other applications on your phone (dialer, SMS, email, etc).

Download the Application and Source Code

  • You can download the application (EmployeeDirectory.apk) here
  • You can download the source code (EmployeeDirectory.fxp project file) here

"VoiceNotes for Android": Sample App using Flex, AIR, and the Microphone API

VoiceNotes for Android is a sample application built with Flex and deployed on Adobe AIR for Android. The application allows you to record voice messages and play them back later. It demonstrates the Microphone API introduced in the latest builds of AIR for Android. VoiceNotes for Android is based on the desktop version of VoiceNotes I recently blogged as an AIR 2 sample.

Watch the video:

Download the Application and Source Code

  • You can download the application (VoiceNotes.apk) here
  • You can download the source code (VoiceNotes.fxp project file) here

If you want to compile or run the application on your device, make sure you install the latest version of the AIR for Android SDK and Runtime respectively. The apk was built using the AIR for Android 20100720 build.

Creating a Web Server using the new Server Socket API in AIR 2

During the Adobe AIR 2 beta, I wrote a simple Web Server application to explore the new Server Socket API available in AIR 2. Here is the updated version of the application for AIR 2 GA.

The “Mini AIR Web Server” is a simplistic implementation of an HTTPServer. Needless to say that it is far from being a production quality Web Server. The goal here is simply to use the well understood mechanics of a web server to learn how to use server sockets in AIR 2.0.

Installation Instructions

Make sure you have the AIR 2 runtime installed (you can download the AIR 2 runtime here), and install the application using the badge below:

Please upgrade your Flash Player This is the content that would be shown if the user does not have Flash Player 9.0.115 or higher installed.

Testing the Application

To test the application, open a browser and test the sample HTML pages provided with the application:

NOTE: You may have to change the port number in these URLs depending on the port number you enter in the application.

You can add your own content in the webroot folder in the applicationStorageDirectory.

Downloading the project

Click here to download the project

"AIR 2 Excel" Sample App Updated for AIR 2 GA

I updated the “AIR 2 Excel” sample application for the official AIR 2 launch. “AIR 2 Excel” demonstrates different techniques for AIR/Excel integration, including the new AIR 2 File.openWithDefaultApplication() API.

[Read more...]

"Voice Notes" Updated for AIR 2 GA

To mark the official release of AIR 2, I’m upgrading the samples I built during the beta, starting today with “Voice Notes”.

Voice Notes is a sample application that leverages the new Microphone API. The application lets you record voice notes and store them in a SQLite database so that you can replay them later.

Make sure you have the AIR 2 runtime installed (you can download the AIR 2 runtime here), and install the application using the badge below:

Please upgrade your Flash Player This is the content that would be shown if the user does not have Flash Player 9.0.115 or higher installed.

View Source (right click) is enabled.

NOTE: You can download the AIR 2 SDK here.

Sample Application using Flex and AIR for Android

Here is a simple Employee Directory application I wrote to demonstrate how to build Flex applications for Android using the AIR runtime.

Watch the video:

The key point when you look at the source code of this application is that you build Flex applications for Android the exact same way you build Flex applications for the Browser and the Desktop: same programming model, same language, same tools, same code. This application for example uses a local SQLite database on your device that you access using the same database API you’d use for any other Flex application running on the AIR runtime.

The other good news is that you have access to additional APIs (GPS, accelerometer), and you can integrate with other applications on your phone (dialer, SMS, email, etc).

Download the Application and Source Code

  • You can download the application (EmployeeDirectory.apk) here
  • You can download the source code (EmployeeDirectory.fxp project file) here

Android Trader Application with Flex 4 and AIR

I recently blogged about building a Real Time Trader Desktop Application using Flex 4 and LiveCycle Data Services. I posted the source code for the AIR version and the Browser version of the application. The next logical step was to build a Mobile version. I used Flex 4 and the prerelease version of AIR for Android.

Watch the video:

I made some changes to the User Interface to work better on a smaller screen, but for the most part, this version of the application uses the same code as the browser and the desktop versions: same data feed, subscription logic, model, controller, components, etc. This made it amazingly easy to take an existing Flex application and deploy it on Android… Three different deployment targets (Browser, Desktop, Mobile), same programming model, same language, same tools, same code.

The developer prerelease of AIR for Android is now available. More information here.

"Open in Excel": Another AIR 2 Mini Sample

In Adobe AIR 1.0 and 1.5, there were different options to “open” the data of a Flex DataGrid in Excel. For example, you could leverage the AIR native drag-and-drop support to drag rows from the DataGrid to an open Excel spreadsheet. You could also drag rows to the desktop (or anywhere on the file system) as an .xls file. These two approaches are demonstrated in my Salesbuilder sample application. Another approach was to use a server roundtrip to download the generated .xls file from the server and force Excel to open with the data.

There was however no immediate way to implement a straight (client-side only) “Open in Excel” feature (aka click a button to open your DataGrid data in Excel). With AIR 2.0 and the new File.openWithDefaultApplication() method this becomes extremely easy to implement. In the sample below, I provide an example of this new feature. The sample also supports the drag-and-drop approach from the AIR application to Excel and from the AIR application to the desktop (or anywhere else on the file system). This sample uses the as3xls library to create the Excel spreadsheet. View Source is enabled.

Installation Instructions

  1. Download the AIR 2.0 beta runtime here.
  2. Download AIR2Excel.air here.
  3. Double-click AIR2Excel.air in Explorer or Finder to start the installation process.