Git Product home page Git Product logo

opengisch / qfield Goto Github PK

View Code? Open in Web Editor NEW
781.0 67.0 219.0 390.54 MB

A simplified touch optimized interface for QGIS

Home Page: http://www.qfield.org

License: GNU General Public License v2.0

Java 3.01% Shell 0.82% C++ 57.05% QML 29.69% Python 0.68% CMake 6.16% Perl 1.50% Objective-C++ 0.89% C 0.07% Dockerfile 0.07% Ruby 0.05% Batchfile 0.01%
qgis qml mobile android ios windows gis linux macos

qfield's Introduction

Read the Docs Discussions Sponsor Contribute Release OpenSSF Best Practices

QField for QGIS

A simplified touch optimized interface for QGIS in the field.

QField

Get it

Check the documentation

Android

Get in Google play

iOS

Get it on the App store

Windows

Download the latest windows beta version

Linux (Beta)

Download the latest Linux beta version.

MacOS (Beta)

Download the latest MacOS beta version.

Verify Authenticity of the App (Android only)

SHA-256 hash of signing certificate:

5a7dd946a4b700c081a5bd375dbc8f0d11aa89d53832567ce5b8a92088e0e898

Use the following command to verify the hash of the signing certificate:

apksigner verify --print-certs [filename.apk] | grep "5a7dd946a4b700c081a5bd375dbc8f0d11aa89d53832567ce5b8a92088e0e898"

Contribute

QField is an open source project, licensed under the terms of the GPLv2 or later. This means that it is free to use and modify and will stay like that.

We are very happy if this app helps you to get your job done or in whatever creative way you may use it.

If you found it useful, we will be even happier if you could give something back. A couple of things you can do are

Get master (unstable) version

We automatically publish the latest master build to a dedicated channel on the playstore. You'll need to join the beta program to start getting the latest version.

Please remember that this is the latest development build and is not meant for production.

Development

For development information, refer to the dedicated developer documentation.

qfield's People

Contributors

3nids avatar bfabio avatar darkdragon-001 avatar dependabot[bot] avatar domi4484 avatar elpaso avatar florida63 avatar geo-ninja avatar geocode-dev avatar gitter-badger avatar hieu-van avatar jhonalex06 avatar kant avatar m-kuhn avatar marioba avatar mbernasocchi avatar mejiafabiandj avatar mohsend98 avatar nirvn avatar nyalldawson avatar olivierldff avatar opengis-ch avatar peterpetrik avatar qgep-ninja avatar riggsd avatar shrimprugbysnowowl avatar signedav avatar suricactus avatar web-flow avatar why-not-try-calmer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qfield's Issues

Version mismatch : About vs. PlayStore information

updated to from v. 0.5.2 to 0.5.6 on play store but realized that 0.5.5 (instead of 0.5.6) was installed. 0.5.5 seems to be very unstable since i cannot open projects worked on 0.5.2

using android 5.1.1

QtQuick optimized feature highlight

The current method of highlighting features is based on QWidget/QGraphicScene/QPainter. And makes browsing the map horribly slow.
A native QtQuick implementation is required to have an acceptable speed.

sdcard - points not saved

If the project and spatiallite db is on sdcard of smartphone, the points disappear after closing and ropening the project. There is no error message that points cannot be saved. The project/database on memory of smartphone is working fine

coordinate double precision

In many placed coordinate precision is limited to float precision (using the QML type point or C++ side QPointF). If ever, this should only get transformed for display.

pinch zoom not working properly

I encountered a problem using QField with a bunch of spatialite-layers.
After reading your tweet about using spatialite OSM-Data in QField ( https://twitter.com/_mkuhn/status/748622494848917504 ) I gave it a try (with only 600MB and scale dependend visibility).
The data is loaded but the pinch zoom is not working properly anymore. The canvas is flickering when trying to zoom in and is zooming out instead. Then QField is freezing.

I tested it on two different tablets with the same experience:
Sony Xperia Tablet Z2 (SGB521) with Android 6.01 and newest QField-version
and
Samsung Galaxy Note Pro P905 Android 5.02 and newest QField-version.

WMS Reprojection Issue

I have a map using shapefiles in epsg 2272 with a WMS which gets reprojected. When the WMS gets reprojected the image is clipped. Sample data and screengrab attached.

screenshot_2016-03-31-16-33-20
sample data.zip

Not support mbtiles?

qfield not support mbtiles raster layer. crashes when uploaded the project with mbtiles raster layer. Sony xperia tablet z1, Android 4.3

GDAL/OGR unstable

Will generate random crashes.
Looks like a memory reallocation issue.

Affected drivers:

  • Shapefile
  • Mbtiles

Smartphone optimized interface

Currently the interface is optimized for tablets. As this app may also be used on smartphones with other size constraints on GUI elements there is the need to design a tweaked user interface adapted to smaller screens.

This is a meta-issue to coordinate this effort.

The following screenshot shows a problem on small screens for the identify window.

screenshot_2015-03-31-14-15-20

Proposal:
Disable the "follow current" button and use screen space 50/50 for map identify results.

Saved / Favourite folders not being saved

Hi,

I have to navigate to my SD card everytime I want to change project. The open project menu has a + icon which seems to create a shortcut to a favourite folder but this is only remembered for the current session. Once QField is closed and reopened - this area is blank.

Read only fields

An attribute set as uneditable on QGIS is still editable in QField. However edit widgets do transfer as check boxes or value maps work in QField, so I think the issue is captive to toggling edit on or off.

Problème d'affichage apres enregistrement des modifications

Mode: Parcourir
Geometrie selectionnée: point
Type de couche: Shape

J'appui sur les points (même géolocalisation) - apparition du menu à gauche - j'appui sur le crayon - je modifie un menu déroulant - j'enregistre - je passe au point suivant - si je reviens sur le point précédent je ne retrouve pas les informations saisies - pour les retrouver je dois fermer le menu de gauche puis le ré ouvrir.

Merci

QGS file with WMS layer

@m-kuhn

Hello,

Using QField for testing my little project tracker4R101 I have experimented some issues using WMS layers. Main issue is having some crashes when moving/panning/zooming in the project, which causes sometimes crashes (maybe related to failed download of the data?)

Attached is the QGIS project file which I use for this. You can find more details in my project site at GitHub https://github.com/jtornero/tracker4R101.git

Cheers,

Jorge

add screen rotation

dump android < 4.3 and set android:screenOrientation to
"fullUser" If the user has locked sensor-based rotation, this behaves the same as user, otherwise it behaves the same as fullSensor and allows any of the 4 possible screen orientations. Added in API level 18.

QGIS black screen on startup

After the update to version 0.2.9 I still have the same problem: the black scren on startup.

My environment is:
Device: Logic Instrument Fieldbook E1
Android V. 4.2.2
Kernel: 3.4.48-02295

Attached you can find the output from Logcat

WMS does not work?

The project does not work with a WMS layer. When you open only visible white sheet. Sony xperia tabletZ1, Android 4.3

GPS position does not refresh

To refresh the GPS position shown on map, user has to long touch on GPS button and then chose "Center on actual position". The GPS red point should update his position automatically, now it's not the case.

Data modifications done on existing objects are not saved

With version 0.7.1, it becames impossible to edit data of existing features :

1°/ Long touch on a point (Spatialite point layer)
2°/ Touche on start edit button
3°/ Change some values in the form
4°/ Touch on save button
5°/ Close the form
6°/ Long touch on the same point -> data modifications are OK
7°/ Exit and start QField
8°/ Long touch on the same point -> data modifications are lost ! They have not been saved

handling bad layers

QField does not handle bad layers at the moment
freeze when trying to open a project.

Screen shift Samsung Tab4

I've installed Qfield 0.3.4 on Samsung Tab4 10.1" running Android 4.4.2

There appears to be a shift in the mapping window towards the top of the screen. There is a white bar across the bottom of the screen. At the top of the screen the map and attribute box lies under the notification bar making it harder to select the correct button.

white_bar_bottom
under_notification_bar_top
under_notification_bar_top2

F-Droid or independant APK distribution

It would be great to be able to install QField without requiring a Google Play account.
This could be done either by :

  • providing a single APK file to download and install
  • use the F-Droid infrastructure

Unfortunately QField has stopped

When I run QField, the program crashes, prompted by the "QField has stopped Unfortunately".Qt in the application output error prompt as follows:

W/System.err( 2460):    at android.os.Handler.dispatchMessage(Handler.java:99)
W/System.err( 2460):    at android.os.Looper.loop(Looper.java:137)
W/System.err( 2460):    at android.app.ActivityThread.main(ActivityThread.java:5103)
W/System.err( 2460):    at java.lang.reflect.Method.invokeNative(Native Method)
W/System.err( 2460):    at java.lang.reflect.Method.invoke(Method.java:525)
W/System.err( 2460):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
W/System.err( 2460):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
W/System.err( 2460):    at dalvik.system.NativeStart.main(Native Method)
W/System.err( 2460): Caused by: java.lang.NoClassDefFoundError: android/graphics/drawable/VectorDrawable
W/System.err( 2460):    ... 25 more
W/System.err( 2460): Caused by: java.lang.ClassNotFoundException: Didn't find class "android.graphics.drawable.VectorDrawable" on path: DexPathList[[zip file "/data/app/ch.opengis.qfield-1.apk"],nativeLibraryDirectories=[/data/app-lib/ch.opengis.qfield-1, /system/lib]]
W/System.err( 2460):    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:53)
W/System.err( 2460):    at java.lang.ClassLoader.loadClass(ClassLoader.java:501)
W/System.err( 2460):    at java.lang.ClassLoader.loadClass(ClassLoader.java:461)
W/System.err( 2460):    ... 25 more
W/ResourceType( 2460): Skipping entry 0x10804d8 in package table 0 because it is not complex!
D/dalvikvm( 2460): GC_FOR_ALLOC freed 345K, 12% free 4538K/5152K, paused 19ms, total 19ms
D/dalvikvm( 2460): GC_FOR_ALLOC freed 424K, 13% free 4584K/5268K, paused 17ms, total 18ms
D/dalvikvm( 2460): GC_FOR_ALLOC freed 5K, 13% free 4665K/5356K, paused 16ms, total 18ms
D/dalvikvm( 2460): GC_FOR_ALLOC freed <1K, 13% free 4750K/5444K, paused 18ms, total 18ms
D/dalvikvm( 2460): GC_FOR_ALLOC freed <1K, 13% free 4922K/5620K, paused 17ms, total 18ms
D/dalvikvm( 2460): GC_FOR_ALLOC freed <1K, 13% free 5093K/5796K, paused 16ms, total 16ms
D/dalvikvm( 2460): GC_CONCURRENT freed 412K, 10% free 5441K/6044K, paused 3ms+9ms, total 35ms
D/dalvikvm( 2460): GC_CONCURRENT freed 616K, 12% free 5706K/6460K, paused 4ms+3ms, total 36ms
D/dalvikvm( 2460): GC_CONCURRENT freed 714K, 13% free 5947K/6800K, paused 4ms+3ms, total 40ms
D/dalvikvm( 2460): GC_CONCURRENT freed 898K, 15% free 6076K/7112K, paused 3ms+11ms, total 36ms
D/dalvikvm( 2460): GC_CONCURRENT freed 1007K, 16% free 6149K/7292K, paused 4ms+2ms, total 44ms
D/dalvikvm( 2460): GC_CONCURRENT freed 959K, 16% free 6329K/7472K, paused 4ms+22ms, total 45ms
D/dalvikvm( 2460): Trying to load lib /data/app-lib/ch.opengis.qfield-1/libqfield.so 0x416f69b0
D/        ( 2460): (null):0 ((null)): QML debugging is enabled. Only use this in a safe environment.
D/dalvikvm( 2460): Added shared lib /data/app-lib/ch.opengis.qfield-1/libqfield.so 0x416f69b0
D/dalvikvm( 2460): No JNI_OnLoad found in /data/app-lib/ch.opengis.qfield-1/libqfield.so 0x416f69b0, skipping init
W/EGL_emulation( 2460): eglSurfaceAttrib not implemented
D/QField  ( 2460): ../../QField/src/qgismobileapp.cpp:64 (QgisMobileapp::QgisMobileapp(QgsApplication*, QWindow*)): STORED DOTQGIS2_DIR: QVariant(QString, "/storage/sdcard/Android/data/ch.opengis.qfield/files/.qgis2")
D/QField  ( 2460): ../../QField/src/qgismobileapp.cpp:69 (QgisMobileapp::QgisMobileapp(QgsApplication*, QWindow*)): STORED SHARE_DIR: QVariant(QString, "/storage/sdcard/Android/data/ch.opengis.qfield/files/share")
W/QField  ( 2460): qrc:/qml/qgismobileapp.qml:188 ((null)): qrc:/qml/qgismobileapp.qml:188:5: Type LayerSelector unavailable
W/QField  ( 2460): qrc:/qml/LayerSelector.qml:5 ((null)): qrc:/qml/LayerSelector.qml:5:1: VectorLayer is not a type
F/libc    ( 2460): Fatal signal 11 (SIGSEGV) at 0x00000010 (code=1), thread 2588 (.opengis.qfield)
I/DEBUG   (   35): pid: 2460, tid: 2588, name: UNKNOWN  >>> ch.opengis.qfield <<<
D/Zygote  (   38): Process 2460 terminated by signal (11)
I/ActivityManager(  275): Process ch.opengis.qfield (pid 2460) has died.

Samsung S-Pen not working with QField 0.5.5 Elbrus

I'm running QField on two Samsung Galaxy Tab A tablets. One (call it Tab1) has version 0.5.2 - Elbrus and the other (call it Tab2) is 0.5.5 - Elbrus. The stylus that comes with the tablet - the S-Pen - has some integration with the software of the tablet. The stylus has full functionality with QField (and other apps) on Tab1, but no functionality with QField on Tab2. The stylus works with all other apps on Tab2.

This is mainly a concern in colder weather when you can't take gloves off for very long. Non-proprietary styli still work with QField and Tab2, so that is a workaround. They are not as precise, though.

Fatal error on Asus zenfone 5

Hi, i've just install QField to my Asus zenfone 5 but it just crashed. Error: "Your application encountered a fatal error and cannot continue". Please check this, thank you! :)

wms layer not working in 0.3.4

I had a wms layer working but once I updated to 0.3.4 it stopped showing up in my drawing. I have a one plus one using CyanogenMod 11s. Mapfiles created in QGIS 2.8.1.

Cannot Digitize/Double fields

I cannot digitize in the QField mobile app at all any longer since installing the second most recent update maybe a week ago. Also, when choosing which field to digitize it shows me two entries for each, one with Capital letters (as they appear in the .sqlite database) and one with lower letters as the layers appear in QGIS layers panel. Neither allow me to create a point that is visible.

Crash when photo added

Qfield crash when I add a photo on android 4.4 (samsung galaxy tab 2) and android 6.0.1 (Nexus 5).
Qfield crash when I validate the photo.

Release via f-droid

Hi, is it possible to release the app via f-droid store? This would allow the use on alternative OS as CyanogenMod, BlackberryOS, SailfishOS, ... Or does it rely on Google components as Play services?

Handling WMS / WFS

If the project done on QGIS Desktop use WMS or WFS layers. It could be great if they wher showing also in QField. But QField need a place to set the WMS or WFS parameters like name, URL, ID and password. If QField don't use private/specific flux, it could be great to use OSM or Google map and so on like QGis OpenLayers plugin do (https://plugins.qgis.org/plugins/openlayers_plugin/) .

Editing not working on Samsung TAB S2 8"

Hello,

We are using two different machines :

  • samsung tab S2 8", android 5.0
  • smartphone Crosscall trekker X2 android 4.4
    Project and data are the same on both machines on SD card.

With the smartphone, we manage to edit points, lines and atributes. Nevertheless with the tablet, editing doesn't work. With the last Qfield version (0.7.4) we can read this log :
Cannot start editing
Feature could not be added
Could not save changes. Rolling back

Any ideas ?
Thank's for answer

UTF-8 support

I had the first session with QField it is really great!.. I have a project in QGIS with Greek characters (UTF-8). When loaded to the QField the Greek characters are unreadable.
Any ideas what is wrong?.

DateTime field edit type

I have installed QField 0.3.2 on a Samsung Galaxy Note 8.0. I have a project with a shapefile layer. One of the fields, called "Time" is defined as Date (QDAte) and widget is set to display "yyyy-MM-dd HH:mm:ss", two other fields are called respectively Start_Date and End_Date, are defined as Date (QDate) and widget is set to display "yyyy-MM-dd" only.
However all fields do not automatically update when opened in QField editor, so that theoretically I'd have to insert all times and dates manually. On the other hand in QGIS for desktop everything is working fine.
When I use a spatialite layer the behavior is the same.

It may be useful to say that if a field was edited in QGIS (2.8.1), when opened in QField it displays as 2015-03-25T00:00:00, even if time was correct in QGIS. May be there a problem when copying the project file? Should I export projects and shapefiles differently, instead of just copying and pasting?

some error appear when i run project.please tell me how to fix it.

In file included from ../../QField/src/appinterface.h:26:0,
from ../../QField/src/appinterface.cpp:18:
../../QField/src/feature.h:21:24: fatal error: qgsfeature.h: No such file or directory
#include <qgsfeature.h>
^
make[1]: Leaving directory `/home/tq/QField/qfield/build-QField-Android_for_armeabi_v7a_GCC_4_8_Qt_5_5_1_d856d8-Debug/src'
compilation terminated.
make[1]: *** [appinterface.o] Error 1
make: *** [sub-src-make_first-ordered] Error 2
14:53:31: 进程"/usr/bin/make"退出,退出代码 2 。
Error while building/deploying project QField (kit: Android for armeabi-v7a (GCC 4.8, Qt 5.5.1))
When executing step "Make"
14:53:31: Elapsed time: 00:01.

Problem with line digitizing

When I try to digitize a polyline, the polyline is not saved in the database, and no shown on map. I can draw the points and fill the form, but when I click on save button, nothing is saved.

Device : Galaxy Note 2014 Edition with Android 5
BD : Spatialite

values in attribute tables from predefined lists

created point layer with three 4 attributes. Values of two attributes can be chosen from predefined lists (Wertabbildung). One of type INTEGER, one of type TEXT. Values of the other two attributes must be entered manually (cannot be selected from predefined lists).

When digitizing data values entered manually are saved without problem. Default values from predefined lists will not be saved but must be manipulated before they can be saved.

See example in file attached
AttrTable.docx

Data not saved if cursor does not go to another field

When entering data on a new or existing object, the data of the last field edited is not saved if the cursor remains in it. To save it, the user has to tap into another field after having entered the data of the last field.

Deleting features accidentally is too easy

Right now there's a trashcan button that will delete features immediately. The impact can be too heavy to make it the user that easy to mess up things.

Possibilities:

  • An undo option would be great because in the 90% where you DO want to delete something it's just one single click.
    E.g., show a message "feature deleted. click here to undo" for 5 seconds. The "problem" is, we try to push changes to the dataprovider as soon as possible and there may be triggers etc. attached, so once deleted it depends a lot on the dataprovider how a proper "undo" should be handled.
  • A confirmation dialog. It's always an extra click. So for this, it needs to be easier to delete several features at once (imagine deleting 20 features and confirm every time, that's not a good UX). Maybe a selection could be done and then operations performed on the selection (very common in Android apps).

Bad UX when navigating, if map has not finished refreshing

When doing a pan or a zoom on a map that has finished refreshing, all is ok. When doing a pan or a zoom on a map that has not finished refreshing, the map tries to refresh before the pan or zoom is finished, and the view does not display the right objects at the right place. This is frquently the case, because map can take a relatively long time to refresh, as CPU performance on tablet is not so good if tablet is not very recent. A solution could be to stop trying to refresh the map when user begins to pan or zoom.

Selecting/Identifying multipolygons leads to crash

I/DEBUG   (  183): backtrace:
I/DEBUG   (  183):     #00  pc 000a9596  /data/data/org.kde.necessitas.ministro/files/dl/4/testing/lib/libQt5Quick.so (QSGNode::markDirty(QFlags<QSGNode::DirtyStateBit>)+27)
I/DEBUG   (  183):     #01  pc 000a9657  /data/data/org.kde.necessitas.ministro/files/dl/4/testing/lib/libQt5Quick.so (QSGNode::removeChildNode(QSGNode*)+36)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.