Trying a Cute Approach to Android
Amidst all the chaos surrounding the Qt project, the power of open source software has shown itself. The Romanian developer Bogdan Vatra has ported Qt to Android. To avoid trademark conflicts, the result was named Necessitas.
Before looking at how to setup the tools and build an application, lets look at the system from the users' view. When downloading a Qt based application, the size matters. The classic wiggly example that has shipped with Qt since the dawn of time is only about 113kB. Animated Tiles, provided by Bogdan Vatra, requires a 153kB download.
When the user has downloaded and installed the application, it is time to run it. When started, every Qt application looks for a helper called Ministri. The job of Ministri is to provide shared Qt libraries for all Qt applications. This saves disk space and bandwidth. When starting wiggly for the first time, the user is guided to Android Market from where Ministri can be downloaded and installed for free.
Ministri now takes over and downloads the Qt libraries. After this, wiggly happily runs. It uses the native Android on-screen keyboard and even rotates with the device when I change its orientation.
In my opinion, the fun part of using Qt is not to use the applications, but to write them. To do that, download the necessitas installer. Run through it, but make sure to install in /opt/necessitas and nowhere else. You will have to chmod +x the installer to make it executable. Then follow this great setup guide to configure QtCreator. If the Qt version complains about not being properly installed, you might have to create a symbolic link to get things working.
Then it is just a matter of coding, building and deploying. Try it yourself today!
Johan Thelin is a consultant working with Qt, embedded and free
software. On-line, he is known as e8johan.
- Is the Private Cloud a Real Cloud?
- Give new life to old phones and tablets with these tips!
- Readers' Choice Awards 2014 Poll
- rsync, Part II
- Tech Tip: Really Simple HTTP Server with Python
- Linux Systems Administrator
- Senior Perl Developer
- Technical Support Rep
- Memory Ordering in Modern Microprocessors, Part I