August 20, 2013

Delphi XE5 to develop Android applications

Delphi XE5 is about to be announced. I have the chance to use a preview version for several weeks now. I’m very impressed!

Using Delphi XE5 I was able to write my first Android application and deploy it to my Nexus 7 in a couple of minutes. OK, for now it is a very basic application: I just took one of the predefined application templates, added a few buttons and labels, hit F9. After a few seconds, the application was compiled and deployed on my Nexus 7 connected to my PC with an USB cable. The application was up and running and I was able to debug it. Waouw!

As you know, I the author of the Internet Component Suite (aka ICS). ICS is about internet programming according to the asynchronous non-blocking programming model. I already started porting my code to Android.

Delphi XE5 is a native compiler for Android. It means Delphi XE5 compile into ARM machine language. It is neither Java nor running under a Java Virtual Machine (Renamed Dalvik on Android). No, Delphi XE5 produces native code which runs fast.

This will help me porting ICS to Android because Delphi XE5 gives me access to the underlying operating system which is… Linux! ICS is all about low level programming and I’m very happy about how it is done in XE5.

Of course XE5 comes with the famous FireMonkey framework (FMX) which covers a lot of thing. The most noticeable is the user interface. For ICS I don’t care about the user interface but of course most application using ICS do. They will simply use FMX. And guess what? FMX is cross platform: the same components (You know edits, labels and hundreds of UI components) can be used for Windows, Android, iOS and MAC OSx.

In the upcoming blog articles, I will enter in more details about Delphi XE5. Stay tuned!

Note: This article is based on a preview version (beta). Retail product may be different. I have been given special permission from Embarcadero to speak about XE5 despite the NDA covering the beta version.

Visit the official RAD Studio/Delphi Android page:
Follow me on Twitter
Follow me on LinkedIn
Follow me on Google+
Visit my website:

August 14, 2013

Android application with Delphi

The next version of Delphi will include a new compiler for the Android ARM Platform. This compiler is based on LLVM architecture like Delphi for IOS compiler. It will produce native code (That is ARM assembly language) which is executed on your device (Phone, tablet of whatever).

You''ll said: Native? I tough that Android was Java. Actually no. Android is based on Linux and has of course a physical processor. Most implementations use ARM architecture, but not all.

Look at the 4 Delphi for Android default icons

Every Android application is a Java application. Well, almost. The truth is that the entry point for an Android process must be in a Java application. This application may be minimal, just a simple class with the only role of loading the native code. Android for Delphi will create a shared object Library containing everything you coded in Delphi. This shared object will be loaded by a minimal application - included with Delphi - that will load the shared object. So what the user see is an normal Android application.

Everything is done transparently for you. You write your Delphi application the usual way, you hit F9, after compilation, Delphi automatically creates an APK (an Android Package Application) with all required files (manifest, resources, and the binary), Delphi deploy the application to your device using Platform Tools, and start it.

To deploy your application using Delphi, you must connect your device thru USB and enable USB debugging on it. You can also deploy the application thru GMail by sending a mail to the user which can then accept to install it on his device. No need to send your application to Android Play Store!

To do all this magic, Delphi for Android requires both the NDK and the SDK to be available on the developer machine. The SDK and NDK are free of charge from Google.

Source: and

Follow me on Twitter
Follow me on LinkedIn
Follow me on Google+
Visit my website:

August 11, 2013

A first look at Delphi for Android

Delphi for Android has been in beta for a while now. The progress has been awesome. Since a few months, Delphi for iOS allowed us to build applications for iPhone and iPad. Now with Delphi for Android, you can simply change the target and rebuild it for Android. It's really Amazing said John Ray Thomas (AKA "JT"), director of Product Management at Embarcadero technologies.

On his blog, JT published a number of photos showing the same application running on an iPhone 5, A Samsung Galaxy S4 and an Nexus 7 tablet.

For those willing to dig into Delphi for Android, the beta program is open to the public: Register here

The roadmap for Delphi is here:

Source: John Thomas blog

Follow me on Twitter
Follow me on LinkedIn
Follow me on Google+
Visit my website:

August 8, 2013

RAD Studio Mobile Roadmap updated

Embarcadero updated his RAD Studio Mobile Roadmap. This concern Delphi and C++ Builder for Android and iOS.

What is in development:

- Integrated C++ and Delphi Native ARM toolchains for iOS and Android (compiler, linker, debugger)
- NDK based Android Platform support (Gingerbread, ICS and Jelly Bean)
- FireMonkey mobile Framework for Android
- Mobile designer for Android
- iOS 7 support
- Mobile sensor support for Android (GPS, Camera, Gyro, Accelerometer)
- Advertizing and payment for Android and iOS
- Native Android UX w/Native UI styles
- iOS 7 UX w/Native UI style
- High performance iOS and Android mobiel DACs for popular databases
- Interbase Lite and IBtoGo for Android support
- Datasnap middleware mobile enterprise enhancements
- Cross Platform desktop/tablet/phone
- Automatic retina/Hi-Res display handling
- Integrated Android Design, development, simulation, debugging and deployment
- Rest client Framework and mobile BaaS support
- Ad Hoc and AppStore deployment


- Delphi for Android: estimated fall 2013
- C++ Builder for Android: estimated winter 2013


Follow me on Twitter
Follow me on LinkedIn
Follow me on Google+
Visit my website: