DoubleGIS port of Qt for Android (grym-android-lighthouse): first tagged version · My Notes

The first beta version of our port Qt for Android has been tagged: grym-android-01.

Although the directory contains all files from android-lighthouse, it is 99% another port done by our team and only our own plugin (called Lite) is currently supported in our repo.

The primary goal of the development is:

Providing stability and functionality necessary to run and release real-life, quality applications to Android Market ASAP.

At the moment we do not have QtCreator integration and to use our version one needs to have some basic knowledge about Android development and Qt functioning and be ready to read the scripts and build files and etc. and debug using command-line and logs.

The port is released under BSD license.

·· [Continuing] ··

Some differences with android-lighthouse:

  • A lot of work has been done on stability. At the moment, there are NO known crashes, screen blackouts, crashes on exit, and etc. We have tested it on a dozen of devices in-house and have reports on many more others.
  • Qt run-times are always put into APK.
  • Built using Crystax NDK4/QADK-based NDK. NDK5 is not tested. Official support for NDK5 is planned soon.
  • Supports Android 2.1 and up (tested on 2.1-2.3.3). Android 1.6 is planned but not here yet.
  • QtAndroidCore library which implements all Qt & Android integration except QPA windowing system integration, which can be made OS-version dependent and developed/released separately from QtAndroidCore. All applications are linked against this library (like against QtCore and QtGui) and can call some low-level fine-tuning functions it exports, although this may be unnecessary for some apps.
  • 90% completed keyboard support, including support for all languages, voice input, predictive input and third-party keyboards, like Swype.
  • Exported platform-specific functions to provide access to some basic functionality like minimizing app, controlling software keyboard (like in CE, Symbian), getting paths of Android-specific directories, accessing Java environment, checking memory status, getting device name and OS version.
  • Workarounds for some current problems in Lighthouse, namely problems with TLW widgets placed over QGraphicsScene which try to spawn windowing system windows.
  • More environment variables are set on startup, like HOME, TMPDIR, LANG, and Android-specific paths (if you don't like using exported functions).
  • Optional keep-alive service which makes sure Android won't terminate your application until it's too low on memory or battery.
  • Advanced build script (android.sh).
  • Basic support for multiple top-level windows is in progress.

Plans:

  • Finalizing support for keyboard: add support for multi-character keys and full-screen keyboard mode.
  • Support for NDK5.
  • Support for Android 1.6.
  • Integration with android-lighthouse support for QtCreator and with Necessitas (spare time project).
  • Improving multiple top-level window support (spare time project).

Where it is:

http://qt.gitorious.org/+grym/qt/grym-android-lighthouse

Branches to look at:

android-master - primary branch.
alh-integration - the branch fully merged with android-lighthouse/android-stable, take this one if you want to help integrating the repos.
unstable - the branch fully merged with current Lighthouse (may be broken or buggy some times).

If you have any questions or want to try our version and got stuck and need help please contact me.




Comments:

No Comments for this post yet...

Leave a comment:

Your email address will not be displayed on this site.
Your URL will not be displayed on this site. Comments containing URL's of non-personal pages may be removed.
Confirmation Code:
Human Confirmation Code (Captcha)

HTML tags and "<", ">" symbols are not allowed. Links will not be converted to hyperlinks. Any commercials are removed and reported as abuse.

Archives

                                                                                                                                                                                                                                                                   


© Sergey A. Galin, 1998-2004 http://sageshome.net/b2e/blogs/