[Interest] QML GPS not working on android? (5.7)

ekke ekke at ekkes-corner.org
Thu Apr 6 23:30:36 CEST 2017


works for me: Qt 5.7, 5.8
Android 6.0.1, Android 7, iOS 10.2.1

QT += qml quick core network positioning


importQtPositioning5.3


        PositionSource {
            id: positionSource
            updateInterval: 5000
            onPositionChanged: {
                var myCoordinate = {
                    "latitude" : position.coordinate.latitude,
                    "longitude" : position.coordinate.longitude,
                    "timestamp" : position.timestamp
                }
                dataUtil.setCurrentLocation(myCoordinate)
                dataServer.requestCurrentWeather(myCoordinate.latitude,
myCoordinate.longitude)
                // stop() because we only want a single position
                stop()
            }
            onSourceErrorChanged: {
                if (sourceError == PositionSource.NoError) {
                    console.log ("NO ERROR")
                    return
                }
                if (sourceError == PositionSource.AccessError) {
                    // on iOS ? att missed keys to info.plist
                    console.log ("PositionSource ACCESS ERROR")
                }
                if (sourceError == PositionSource.ClosedError) {
                    console.log ("PositionSource CLOSED ERROR")
                }
                if (sourceError == PositionSource.UnknownSourceError) {
                    console.log ("PositionSource UNKNOWN ERROR")
                }
                console.log("Source error: " + sourceError + " is GPS ON ?")
                active = false
            }
            onUpdateTimeout: {
                console.log ("TIMEOUT POSITION Source")
                active = false
            }
        } // positionSource




Am 06.04.17 um 22:32 schrieb Jason H:
> PositionSource.update() doesn't do anything. However valid is true, but latitude and longitude are both NaN.
>
> When using start()/active:
>
> D/QtPositioning(21346): Stopping updates
> W/System.err(21346): java.lang.IllegalArgumentException: invalid listener: null
> W/System.err(21346): at android.location.LocationManager.checkListener(LocationManager.java:1749)
> W/System.err(21346): at android.location.LocationManager.removeUpdates(LocationManager.java:910)
> W/System.err(21346): at org.qtproject.qt5.android.positioning.QtPositioning.removeActiveListener(QtPositioning.java:228)
> W/System.err(21346): at org.qtproject.qt5.android.positioning.QtPositioning.stopUpdates(QtPositioning.java:294)
> D/liboapp.so(21346): qrc:///main.qml:125 (expression for onUpdateTimeout):
> qml: PositionSource: update timed out
>
> Does anyone know how to fix this? It worked in 5.6... I can't backport, my entire UI is in QtQuickControls 2.0
>
>
> I have:
> QT += positioning
> import QtPositioning 5.2
> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20170406/d9ede312/attachment.html>


More information about the Interest mailing list