Download - Qgis for Android
![Page 1: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/1.jpg)
OPENGIS.CH
Quantum GIS on Android
Marco Bernasocchi
MSc in Geography with specialisation in GIS UZH
Independent programmer
Ski and Dive instructor
![Page 2: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/2.jpg)
OPENGIS.CH
In this talk...
● Tell you about QGIS and the people who use it & make it
● Explain why it is important that projects like QGIS exist
● QGIS in Natural sciences● QGIS on Android● Live demo, discussion & questions
Part of this presentation are based on Tim Sutton's QGIS for humanity presentation: http://linfiniti.com/2011/11/zurich-qgis-developer-meeting-summary-november-2011/
![Page 3: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/3.jpg)
OPENGIS.CH
Some history: proprietary GIS
● Pay to use model● Pay for support model● Pay to share model● Good software for those who can afford it, no
software for those who can't
Cc image : http://en.wikipedia.org/wiki/File:Paul_Wall.jpg
![Page 4: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/4.jpg)
OPENGIS.CH
But, sometimes life is hard...
![Page 5: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/5.jpg)
OPENGIS.CH
...you can barely afford good hardware infrastructure... Let alone the cost of
expensive software
![Page 6: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/6.jpg)
OPENGIS.CH
What if there was another way?
![Page 7: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/7.jpg)
OPENGIS.CH
...to build something bigger than ourselves...
![Page 8: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/8.jpg)
OPENGIS.CH
...that many, many DO enjoy...
...hundreds of thousands...
![Page 9: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/9.jpg)
OPENGIS.CH
...all around the world...
![Page 10: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/10.jpg)
OPENGIS.CH
...and many help to build...
- slide courtesy G. Sherman
![Page 11: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/11.jpg)
OPENGIS.CH
To make something awesome like Linux, like LibreOffice, like GIMP...
Please welcome: “QGIS and the Open Source world”
![Page 12: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/12.jpg)
OPENGIS.CH
History of QGIS development
http://pvanb.wordpress.com/2011/01/10/how-qgis-has-grown-over-the-years/
![Page 13: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/13.jpg)
OPENGIS.CH
QGIS development this year
www.youtube.com/watch?v=3D60XJGerDFWI
![Page 14: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/14.jpg)
OPENGIS.CH
Now lets see some use cases...
![Page 15: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/15.jpg)
OPENGIS.CH
Emergency response
![Page 16: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/16.jpg)
OPENGIS.CH
Emergency response
![Page 17: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/17.jpg)
OPENGIS.CH
Animal Tracking
![Page 18: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/18.jpg)
OPENGIS.CH
Animal Tracking
![Page 19: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/19.jpg)
OPENGIS.CH
Filter for Zebra
![Page 20: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/20.jpg)
OPENGIS.CH
Zebra only
![Page 21: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/21.jpg)
OPENGIS.CH
Web map publishing
![Page 22: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/22.jpg)
OPENGIS.CH
Planning
![Page 23: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/23.jpg)
OPENGIS.CH
Marster Thesis in GIS
● Visualising multivariate spatio-temporal data● Design and evaluation of an open source
software environment based on 3D DEMs and multiple linked views
![Page 24: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/24.jpg)
OPENGIS.CH
Globe
![Page 25: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/25.jpg)
OPENGIS.CH
Globe 3D anaglyph
![Page 26: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/26.jpg)
OPENGIS.CH
Globe 3D on a geowall
![Page 27: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/27.jpg)
OPENGIS.CH
Linked Visualisation Framework
![Page 28: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/28.jpg)
OPENGIS.CH
Timeplot Summit
![Page 29: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/29.jpg)
OPENGIS.CH
Timeplot Face
![Page 30: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/30.jpg)
OPENGIS.CH
Helix Summit
![Page 31: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/31.jpg)
OPENGIS.CH
Helix Face
![Page 32: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/32.jpg)
OPENGIS.CH
QGIS Features
● PostGIS and SpatiaLite, most vector formats supported by the OGR library, including ESRI shapefiles, MapInfo, SDTS and GML.
● raster formats supported by the GDAL library*, such as digital elevation models, aerial photography or landsat imagery,
● GRASS locations and mapsets,
● online spatial data served as OGC-compliant WMS , WMS-C (Tile cache), WFS and WFS-T
● Convert other GPS formats to GPX, or down/upload directly to a GPS unit
● Perform spatial analysis, including: map algebra, terrain analysis, hydrologic modeling, network analysis
![Page 33: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/33.jpg)
OPENGIS.CH
QGIS Features
● on-the-fly reprojection
● print composer
● overview panel
● spatial bookmarks
● identify/select features
● edit/view/search attributes
● feature labeling (with data driven labelling as well)
● vector diagram overlay
● advanced vector and raster symbology
● graticule layer
● map decorations like north arrow, scale bar and copyright label
![Page 34: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/34.jpg)
OPENGIS.CH
QGIS Features
● digitizing tools for vector features
● field and raster calculator
● Georeferencer plugin
● Publish your map on the internet using QGIS Server or the "Export to Mapfile" capability (requires UMN MapServer)
● Adapt QGIS to your needs through the extensible python and C++ plugin architecture.
![Page 35: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/35.jpg)
OPENGIS.CH
Subprojects
● QGIS Browser● QGIS Server● QGIS Client● QGIS on Android
![Page 36: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/36.jpg)
OPENGIS.CH
Questions so far?
See you after the break for “Why and how go mobile?”
![Page 37: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/37.jpg)
OPENGIS.CH
Why go mobile? Because sometimes civilisation is far away...
![Page 38: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/38.jpg)
OPENGIS.CH
Why go mobile?
● Work on the terrain● Lightweight and portable● Automatic georeferencing and bearing● Possibility of custom calculations at input time
depending on position, bearing, …● So we can get off our offices :)
![Page 39: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/39.jpg)
OPENGIS.CH
Why to go mobile?
● Finally widespread of (almost) adequate hardware at “normal” prices
– Good performance– Good battery life– Integrated GPS and compass– Finger and pen input– In near future rugged tablets
● Strong development of software● It's modern ;)
![Page 40: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/40.jpg)
OPENGIS.CH
How to go mobile? By getting our hands dirty...
![Page 41: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/41.jpg)
OPENGIS.CH
How to go mobile?
● Choose a platform– IOS and you'll have little →
hardware choice– Win mobile and you'll be →
shaking hands with Lucifer soon :) and have almost no devices available
– Android Many devices, →Linuxish, Trendy
● Adapt UI to touch
![Page 42: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/42.jpg)
OPENGIS.CH
Strategy
● Two different version– First a 1-to-1 port of the FULL desktop
application with the same GUI ● targeting Tablets (10.1”)● Started as a Google Summer of Code project
– Later, a new application using an ad-hoc minimalistic GUI optimized for smaller screens like smart-phones
● Development not started yet
– Application installer
![Page 43: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/43.jpg)
OPENGIS.CH
Let's get technical: Technologies
● QGIS: Qt (C++) + cmake + external libs (GDAL, GEOS, Proj4, expat, GSL, Iconv, QWT, sqlite, libpq, open-ssl)
● ANDROID: Java + Android ant build system● NDK (android native development kit): Java + C++ +
JNI + Android ant build system● NECESSITAS (Qt-android port): Qt + qmake
= BIG complex mess !!!
![Page 44: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/44.jpg)
OPENGIS.CH
Let's get technical: implementation
● Necessitas consists of:– The Android port of the Qt libraries– Ministro II, the Qt libraries manager for android
(a sort of apt)– Java android application that takes care of the
Java to C++ (via JNI) binding of the UI and libraries dependency management.
![Page 45: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/45.jpg)
OPENGIS.CH
Let's get technical: implementation
● QGIS on Android consists of:– The cross compiled dependencies (in form of
unversioned .so files)– An .so file (shared object) of QGIS (there is no
executable binary) and of all the QGIS libs– A necessitas based Java application
![Page 46: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/46.jpg)
OPENGIS.CH
Let's get technical: workflow
● Cross compilation of dependencies● Cross compilation of QGIS linking the
croscompiled dependencies● Building and enhancing the Java wrapper● Packaging● Distributing● All by scripts and now automatically on the
server as well
![Page 47: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/47.jpg)
OPENGIS.CH
Let's get technical: application workflow
● Install apk (using the installer)● On first run, the assets (svg, translations, …)
are extracted to the filesystem (this could be optimized)
● A service call is issued to Ministro II to deliver the required Qt libs. If the libs are not installed, Ministro asks to download them
● After all dependencies are load the qgis.so is loaded and its main gets executed
![Page 48: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/48.jpg)
OPENGIS.CH
Current limitations
● No GPS nor compass reading yet● No right click gesture● Shapefiles bug preventing use of shapefiles
with strings in dbf● Some dialogs are too big● No SSL● Debug version with no armV7 optimization
![Page 49: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/49.jpg)
OPENGIS.CH
Bug Tracker
![Page 50: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/50.jpg)
OPENGIS.CH
Current features
![Page 51: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/51.jpg)
OPENGIS.CH
Use cases: on terrain digitizing
● Central DB (Postgress)● Save to spatiallite locally● Go on the field and get your hands dirty● Back in the office, sync it back to the Postgress
DB
![Page 52: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/52.jpg)
OPENGIS.CH
Multiple users on terrain digitizing
● As soon as Android QGIS will support Python plugins
![Page 53: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/53.jpg)
OPENGIS.CH
Next Plans
● Implement GPS● Fix Shape files bug● Implement Right click gesture (long click)
![Page 54: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/54.jpg)
OPENGIS.CH
Future Plans
● Implement Compass● Add ssl● Optimize build for arm-v7a● Fix “all” bugs at http://hub.qgis.org/projects/android-qgis/issues
● Add Python support● Create a new UI for the mobile version
![Page 55: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/55.jpg)
OPENGIS.CH
Conclusion
We build it for you to use!
![Page 56: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/56.jpg)
OPENGIS.CH
Conclusion
When you improve QGIS (by contributing time, money, code, translations, help on the mailing list
etc.), there is a huge multiplier effect that you don't get with proprietary software:
“By helping yourself, you help others”
![Page 57: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/57.jpg)
OPENGIS.CH
Conclusion
Use it and join our community – become a participant in the process of making the tools you
use.
![Page 58: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/58.jpg)
OPENGIS.CH
Conclusion
There are many other Free and Open Source GIS tools out there!
http://osgeo.org
![Page 59: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/59.jpg)
OPENGIS.CH
What next?
You can get your copy at
http://download.qgis.org http://android.qgis.org
Visit the home page at http://qgis.org
Visit QGIS' blog to find out about us and to read many informative articles:
http://planet.qgis.org
![Page 61: Qgis for Android](https://reader035.vdocuments.pub/reader035/viewer/2022081800/5535c4b855034676718b4731/html5/thumbnails/61.jpg)
OPENGIS.CH
Demos
● Multiview Plugin● Globe● Android● Offline editing