PySide application example
==========================
This APK contains an example application, built with:
* Python
* PySide
* Qt Components
The application is fully self.contained.

Changelog
=========
1.2
- rebuild the C++ wrapper & Necessitas against Android API level 8
- as a result, the example should now work on Android 2.2 & 2.3 devices
1.3
- try both targets in Necessitas Qt Creator
1.4
- add Python compiled against API 9 (from android-python27 project) for both wrapper compilation and to the APK
- recompile PySide against it
1.5
- rebuild against Kivy Python compiled against API level 8 & rebuilt everything against API level 8
- manual libshiboken.so and libpyside.so loading moved to the C++ wrapper

How install & run
=================
Just install the APK and run "PySideExample".

First start
===========
If you don't yet have any Ministro using Qt application installed on your
Android device, you will be redirected to the Play store to install Ministro.
Ministro is a manager & updater for the Qt libraries that the example needs to run.
Just install it and everything else will be handled automatically.

Once Ministro is installed and does it's work, the example might still take some time to
start as it is unpacking Python, Qt Components, theme for Qt Components and the example program itself.
Once the unpacking is finished, the example application will be started.

The unpacking is done only once on the first start, following application starts are very fast,
at least on my device (HP Touchpad with CM9).

What the example application demonstrates
=========================================
* sending data to Python and back
-> the content of the entry fild is sent to Python,
where it is painted on the PySide image and returned to QML using ImageProvider
-> the date is retrived in Python and shown in QML
* working text entry with the Android virtual keyboard
* working screen rotation
* correct Portrait/Landscape orientation switching
-> in both normal & inverted orientations
* working notifications (InfoBanner)
* working ToolBar
* working Menu
* "tools" menu with rotation & opacity sliders for the PySide image

Size
====
The example APK has about 16 MB. This is because it needs to bundle quite a lot of
libraries and related files. Big part of it is actually not used by the example in any way.

For normal applications it should be possible to make the resulting APK much smaller by:
* includding only the PySide libraries that are actually used
* removing unused Python modules
* cutting down the Qt Components theme from all grahics & icons that are not used

Rebuilding the APK
==================
The project for the Necessitas Qt Creator that was used to build this APK is hosted on Github:
https://github.com/M4rtinK/android-pyside-example-project
Just load it & press deploy! :)

For more information, see the PySide for Android guide:
http://modrana.org/trac/wiki/PySideForAndroid#PySideforAndroidexampleapplication

