6#include <QGeoPositionInfo>
22 &QGeoPositionInfoSourceAndroid::requestTimeout);
26 &QGeoPositionInfoSourceAndroid::regularUpdatesTimeout);
34 m_requestTimer.
stop();
47 if (msec == previousInterval)
53 reconfigureRunningSystem();
74 reconfigureRunningSystem();
87void QGeoPositionInfoSourceAndroid::setError(
Error error)
106 updatesRunning =
true;
109 m_regularUpdatesErrorRaised =
false;
112 updatesRunning =
false;
124 updatesRunning =
false;
125 m_regularUpdatesTimer.
stop();
155 m_requestTimer.
stop();
164 m_requestTimer.
stop();
167 m_regularUpdatesErrorRaised =
false;
179 queuedSingleUpdates.
append(pInfo);
187 if (queuedSingleUpdates.
size() == maxPossibleUpdates) {
188 m_requestTimer.
stop();
195 if (updatesRunning && !m_regularUpdatesErrorRaised) {
196 m_regularUpdatesErrorRaised =
true;
208void QGeoPositionInfoSourceAndroid::requestTimeout()
213 if (queuedSingleUpdates.
isEmpty()) {
220 const qint64 timeDelta = best.timestamp().secsTo(
info.timestamp());
221 if (abs(timeDelta) > 20)
222 return timeDelta > 0;
240 queuedSingleUpdates.
end(), byAccuracy);
241 queuedSingleUpdates.
clear();
245void QGeoPositionInfoSourceAndroid::regularUpdatesTimeout()
247 if (!m_regularUpdatesErrorRaised) {
250 m_regularUpdatesErrorRaised =
true;
260void QGeoPositionInfoSourceAndroid::reconfigureRunningSystem()
static JNINativeMethod methods[]
static qint64 currentMSecsSinceEpoch() noexcept
virtual void stopUpdates() override
QGeoPositionInfo lastKnownPosition(bool fromSatellitePositioningMethodsOnly=false) const override
Returns an update containing the last known position, or a null update if none is available.
void processSinglePositionUpdate(const QGeoPositionInfo &pInfo)
virtual void startUpdates() override
void locationProvidersChanged()
~QGeoPositionInfoSourceAndroid()
virtual void requestUpdate(int timeout=0) override
void processPositionUpdate(const QGeoPositionInfo &pInfo)
void setPreferredPositioningMethods(PositioningMethods methods) override
void setUpdateInterval(int msec) override
int minimumUpdateInterval() const override
Error error() const override
Returns the type of error that last occurred.
PositioningMethods supportedPositioningMethods() const override
Returns the positioning methods available to this source.
QGeoPositionInfoSourceAndroid(QObject *parent=0)
void locationProviderDisabled()
int updateInterval
This property holds the requested interval in milliseconds between each update.
void positionUpdated(const QGeoPositionInfo &update)
If startUpdates() or requestUpdate() is called, this signal is emitted when an update becomes availab...
void errorOccurred(QGeoPositionInfoSource::Error)
This signal is emitted after an error occurred.
virtual void setPreferredPositioningMethods(PositioningMethods methods)
void supportedPositioningMethodsChanged()
This signal is emitted when the supported positioning methods changed.
Error
The Error enumeration represents the errors which can occur.
virtual void setUpdateInterval(int msec)
PositioningMethods preferredPositioningMethods
Sets the preferred positioning methods for this source.
qsizetype size() const noexcept
bool isEmpty() const noexcept
void append(parameter_type t)
static QMetaObject::Connection connect(const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
\threadsafe
void setSingleShot(bool singleShot)
void start(int msec)
Starts or restarts the timer with a timeout interval of msec milliseconds.
bool isActive() const
Returns true if the timer is running (pending); otherwise returns false.
void stop()
Stops the timer.
void timeout(QPrivateSignal)
This signal is emitted when the timer times out.
void unregisterPositionInfoSource(int key)
QGeoPositionInfo lastKnownPosition(bool fromSatellitePositioningMethodsOnly)
int registerPositionInfoSource(QObject *obj)
QGeoPositionInfoSource::Error requestUpdate(int androidClassKey, int timeout)
QGeoPositionInfoSource::Error startUpdates(int androidClassKey)
QGeoPositionInfoSource::PositioningMethods availableProviders()
void stopUpdates(int androidClassKey)
DBusConnection const char DBusError * error
static constexpr int kUpdateFromColdStart
static constexpr int kRegularUpdatesTimerInterval
GLbitfield GLuint64 timeout
[4]
QFileInfo info(fileName)
[8]
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent