Difference between revisions of "Android Interface"

From Free Pascal wiki
Jump to navigationJump to search
(New page: == Roadmap == # Learn how to write a Java Android application # Learn how to use the JNI # Start building the encapsulating Java application # Start building the new widgetset # Develop b...)
 
Line 1: Line 1:
 +
== Architecture ==
 +
 +
As of August 2010 (and Android 2.2), the Android platform can only execute Java Android applications, but these applications can load native libraries. The main idea of the Lazarus Android port is using capability to allow Android to run the existing Lazarus apps. A generic Java application will be created which exposes the Java Android API to the LCL though the Java Native Interface. The Lazarus user application will be built as a Linux-arm library and be attached to the generic Java encapsulating application. Both will then communicate to ensure that the existing LCL applications run under Android with as little changes as possible.
 +
 +
The encapsulating Java program wouldn't need to be changed by Lazarus users, and no knowledge of Java will be necessary to develop Lazarus applications for Android. Of course Java knowledge will be necessary to work on the LCL Android Widgetset.
 +
 
== Roadmap ==
 
== Roadmap ==
  

Revision as of 14:22, 9 August 2010

Architecture

As of August 2010 (and Android 2.2), the Android platform can only execute Java Android applications, but these applications can load native libraries. The main idea of the Lazarus Android port is using capability to allow Android to run the existing Lazarus apps. A generic Java application will be created which exposes the Java Android API to the LCL though the Java Native Interface. The Lazarus user application will be built as a Linux-arm library and be attached to the generic Java encapsulating application. Both will then communicate to ensure that the existing LCL applications run under Android with as little changes as possible.

The encapsulating Java program wouldn't need to be changed by Lazarus users, and no knowledge of Java will be necessary to develop Lazarus applications for Android. Of course Java knowledge will be necessary to work on the LCL Android Widgetset.

Roadmap

  1. Learn how to write a Java Android application
  2. Learn how to use the JNI
  3. Start building the encapsulating Java application
  4. Start building the new widgetset
  5. Develop both together until the following components are working: TApplication, TForm, TButton, TComboBox, TEdit, TStaticText