1
我在QTCreator for Android中編寫應用程序。我的GPS位置有問題。 當我在手機上運行應用程序時,我沒有協調。在qDebug
我看到這一點:與Android的QGeoPositionInfoSource發生奇怪的錯誤
(無效GPS :: startLocationAPI()):QGeoPositionInfoSourceAndroid(0x9f8c06d0)
什麼是支架沒有意義,因爲每到這個值是不同的(0xb03c9ba0 ,0xb03d2ba0,0xf01c9d10)
這是我的代碼:
gps.h:
#ifndef GPS_H
#define GPS_H
#include <QMainWindow>
#include <QGeoPositionInfo>
#include <QGeoPositionInfoSource>
class gps : public QObject
{
Q_OBJECT
public:
explicit gps(QWidget *parent = 0);
virtual ~gps();
public slots:
void positionUpdated(QGeoPositionInfo geoPositionInfo);
void startLocationAPI();
private:
QGeoPositionInfoSource *m_pLocationInfo;
};
#endif //GPS_H
gps.cpp
#include "gps.h"
#include <QGeoCoordinate>
#include <QGeoPositionInfo>
#include <QGeoPositionInfoSource>
#include <QDebug>
gps::gps(QWidget *parent)
: QObject(parent), m_pLocationInfo(NULL)
{
startLocationAPI();
}
gps::~gps()
{
}
void gps::startLocationAPI()
{
if (!m_pLocationInfo)
{
m_pLocationInfo =QGeoPositionInfoSource::createDefaultSource(0);
m_pLocationInfo->setPreferredPositioningMethods(QGeoPositionInfoSource::NonSatellitePositioningMethods);
connect(m_pLocationInfo, SIGNAL (positionUpdated(QGeoPositionInfo)),this, SLOT (positionUpdated(QGeoPositionInfo)));
m_pLocationInfo->startUpdates();
qDebug() << m_pLocationInfo;
}
}
void gps::positionUpdated(QGeoPositionInfo geoPositionInfo)
{
}
是否調用了'gps :: positionUpdated'?你有沒有嘗試把'qDebug()<<「Hello」'放在那裏看看它是否被調用? – jpo38