Ich schreibe eine Anwendung in QTCreator für Android. Ich habe ein Problem mit meinem Standort von GPS. Wenn ich Anwendung in meinem Telefon ausführen, koordinierte ich nicht. In qDebug
Ich sehe dies:Seltsame Fehler mit QGeoPositionInfoSource von Android
(Leeren GPS :: startLocationAPI()): QGeoPositionInfoSourceAndroid (0x9f8c06d0)
Was ist Klammer, weil jedes Mal, keine Bedeutung hat dieser Wert unterscheidet (0xb03c9ba0 , 0xb03d2ba0, 0xf01c9d10)
dies ist mein Code:
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)
{
}
Wird 'gps :: positionUpdated' aufgerufen? Haben Sie versucht, 'qDebug() <<" Hello "' da hinein zu stellen, um zu sehen, ob es aufgerufen wird? – jpo38