mirror of
https://gitlab.com/kelteseth/ScreenPlay.git
synced 2024-09-18 16:32:33 +02:00
Add anonymous telemtry. This will only used for basic statisitcs like how many people have screenplay open and which menu point is clicked the most.
This commit is contained in:
parent
31fe7a91ac
commit
e0b1a6c529
@ -20,7 +20,6 @@ App::App()
|
|||||||
|
|
||||||
QQuickWindow::setTextRenderType(QQuickWindow::TextRenderType::NativeTextRendering);
|
QQuickWindow::setTextRenderType(QQuickWindow::TextRenderType::NativeTextRendering);
|
||||||
|
|
||||||
|
|
||||||
qRegisterMetaType<QQmlApplicationEngine*>();
|
qRegisterMetaType<QQmlApplicationEngine*>();
|
||||||
qRegisterMetaType<GlobalVariables*>();
|
qRegisterMetaType<GlobalVariables*>();
|
||||||
qRegisterMetaType<ScreenPlayManager*>();
|
qRegisterMetaType<ScreenPlayManager*>();
|
||||||
@ -44,9 +43,13 @@ App::App()
|
|||||||
m_profileListModel = make_shared<ProfileListModel>(m_globalVariables);
|
m_profileListModel = make_shared<ProfileListModel>(m_globalVariables);
|
||||||
m_sdkConnector = make_shared<SDKConnector>();
|
m_sdkConnector = make_shared<SDKConnector>();
|
||||||
m_settings = make_shared<Settings>(m_globalVariables);
|
m_settings = make_shared<Settings>(m_globalVariables);
|
||||||
m_tracker = make_unique<GAnalytics>("UA-152830367-3");
|
// Only create tracker if user did not disallow!
|
||||||
m_tracker->setNetworkAccessManager(nam);
|
if (m_settings->anonymousTelemetry()) {
|
||||||
m_tracker->setSendInterval(1000);
|
m_tracker = make_unique<GAnalytics>("UA-152830367-3");
|
||||||
|
m_tracker->setNetworkAccessManager(nam);
|
||||||
|
m_tracker->setSendInterval(1000);
|
||||||
|
m_tracker->startSession();
|
||||||
|
}
|
||||||
|
|
||||||
m_create = make_unique<Create>(m_globalVariables);
|
m_create = make_unique<Create>(m_globalVariables);
|
||||||
m_screenPlayManager = make_unique<ScreenPlayManager>(m_globalVariables, m_monitorListModel, m_sdkConnector);
|
m_screenPlayManager = make_unique<ScreenPlayManager>(m_globalVariables, m_monitorListModel, m_sdkConnector);
|
||||||
@ -73,15 +76,17 @@ App::App()
|
|||||||
m_mainWindowEngine->load(QUrl(QStringLiteral("qrc:/main.qml")));
|
m_mainWindowEngine->load(QUrl(QStringLiteral("qrc:/main.qml")));
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
m_tracker->startSession();
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void App::exit()
|
void App::exit()
|
||||||
{
|
{
|
||||||
// Workaround because we cannot force to send exit event
|
if (!m_tracker) {
|
||||||
m_tracker->setSendInterval(5);
|
QGuiApplication::instance()->quit();
|
||||||
m_tracker->endSession();
|
return;
|
||||||
QTimer::singleShot(150,[](){ QGuiApplication::instance()->quit();});
|
} else {
|
||||||
|
// Workaround because we cannot force to send exit event
|
||||||
|
m_tracker->setSendInterval(5);
|
||||||
|
m_tracker->endSession();
|
||||||
|
QTimer::singleShot(150, []() { QGuiApplication::instance()->quit(); });
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -140,7 +140,9 @@ public slots:
|
|||||||
|
|
||||||
void exit();
|
void exit();
|
||||||
void setTrackerSendEvent(const QString& page){
|
void setTrackerSendEvent(const QString& page){
|
||||||
m_tracker->sendEvent("navigation",page);
|
if(m_tracker){
|
||||||
|
m_tracker->sendEvent("navigation",page);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -2,6 +2,6 @@
|
|||||||
"version":"1.0.0",
|
"version":"1.0.0",
|
||||||
"autostart":true,
|
"autostart":true,
|
||||||
"highPriorityStart":false,
|
"highPriorityStart":false,
|
||||||
"sendStatistics":false,
|
"anonymousTelemetry":true,
|
||||||
"absoluteStoragePath":""
|
"absoluteStoragePath":""
|
||||||
}
|
}
|
||||||
|
@ -138,7 +138,7 @@ Settings::Settings(const shared_ptr<GlobalVariables>& globalVariables,
|
|||||||
|
|
||||||
m_autostart = configObj.value().value("autostart").toBool();
|
m_autostart = configObj.value().value("autostart").toBool();
|
||||||
m_highPriorityStart = configObj.value().value("highPriorityStart").toBool();
|
m_highPriorityStart = configObj.value().value("highPriorityStart").toBool();
|
||||||
m_sendStatistics = configObj.value().value("sendStatistics").toBool();
|
m_anonymousTelemetry = configObj.value().value("anonymousTelemetry").toBool();
|
||||||
|
|
||||||
setupWidgetAndWindowPaths();
|
setupWidgetAndWindowPaths();
|
||||||
}
|
}
|
||||||
|
@ -45,10 +45,11 @@ class Settings : public QObject {
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
||||||
Q_PROPERTY(QVersionNumber version READ version)
|
Q_PROPERTY(QVersionNumber version READ version)
|
||||||
|
Q_PROPERTY(bool anonymousTelemetry READ anonymousTelemetry WRITE setAnonymousTelemetry NOTIFY anonymousTelemetryChanged)
|
||||||
Q_PROPERTY(bool silentStart READ silentStart WRITE setSilentStart NOTIFY silentStartChanged)
|
Q_PROPERTY(bool silentStart READ silentStart WRITE setSilentStart NOTIFY silentStartChanged)
|
||||||
Q_PROPERTY(bool autostart READ autostart WRITE setAutostart NOTIFY autostartChanged)
|
Q_PROPERTY(bool autostart READ autostart WRITE setAutostart NOTIFY autostartChanged)
|
||||||
Q_PROPERTY(bool highPriorityStart READ highPriorityStart WRITE setHighPriorityStart NOTIFY highPriorityStartChanged)
|
Q_PROPERTY(bool highPriorityStart READ highPriorityStart WRITE setHighPriorityStart NOTIFY highPriorityStartChanged)
|
||||||
Q_PROPERTY(bool sendStatistics READ sendStatistics WRITE setSendStatistics NOTIFY sendStatisticsChanged)
|
|
||||||
Q_PROPERTY(bool pauseWallpaperWhenIngame READ pauseWallpaperWhenIngame WRITE setPauseWallpaperWhenIngame NOTIFY pauseWallpaperWhenIngameChanged)
|
Q_PROPERTY(bool pauseWallpaperWhenIngame READ pauseWallpaperWhenIngame WRITE setPauseWallpaperWhenIngame NOTIFY pauseWallpaperWhenIngameChanged)
|
||||||
Q_PROPERTY(bool offlineMode READ offlineMode WRITE setOfflineMode NOTIFY offlineModeChanged)
|
Q_PROPERTY(bool offlineMode READ offlineMode WRITE setOfflineMode NOTIFY offlineModeChanged)
|
||||||
Q_PROPERTY(QString decoder READ decoder WRITE setDecoder NOTIFY decoderChanged)
|
Q_PROPERTY(QString decoder READ decoder WRITE setDecoder NOTIFY decoderChanged)
|
||||||
@ -89,11 +90,6 @@ public:
|
|||||||
return m_highPriorityStart;
|
return m_highPriorityStart;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool sendStatistics() const
|
|
||||||
{
|
|
||||||
return m_sendStatistics;
|
|
||||||
}
|
|
||||||
|
|
||||||
QString decoder() const
|
QString decoder() const
|
||||||
{
|
{
|
||||||
return m_decoder;
|
return m_decoder;
|
||||||
@ -109,10 +105,14 @@ public:
|
|||||||
return m_silentStart;
|
return m_silentStart;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool anonymousTelemetry() const
|
||||||
|
{
|
||||||
|
return m_anonymousTelemetry;
|
||||||
|
}
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void autostartChanged(bool autostart);
|
void autostartChanged(bool autostart);
|
||||||
void highPriorityStartChanged(bool highPriorityStart);
|
void highPriorityStartChanged(bool highPriorityStart);
|
||||||
void sendStatisticsChanged(bool status);
|
|
||||||
void hasWorkshopBannerSeenChanged(bool hasWorkshopBannerSeen);
|
void hasWorkshopBannerSeenChanged(bool hasWorkshopBannerSeen);
|
||||||
void decoderChanged(QString decoder);
|
void decoderChanged(QString decoder);
|
||||||
void setMainWindowVisible(bool visible);
|
void setMainWindowVisible(bool visible);
|
||||||
@ -122,6 +122,8 @@ signals:
|
|||||||
void resetInstalledListmodel();
|
void resetInstalledListmodel();
|
||||||
void silentStartChanged(bool silentStart);
|
void silentStartChanged(bool silentStart);
|
||||||
|
|
||||||
|
void anonymousTelemetryChanged(bool anonymousTelemetry);
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
bool writeSingleSettingConfig(QString name, QVariant value);
|
bool writeSingleSettingConfig(QString name, QVariant value);
|
||||||
void setqSetting(const QString& key, const QString& value)
|
void setqSetting(const QString& key, const QString& value)
|
||||||
@ -164,17 +166,6 @@ public slots:
|
|||||||
emit highPriorityStartChanged(m_highPriorityStart);
|
emit highPriorityStartChanged(m_highPriorityStart);
|
||||||
}
|
}
|
||||||
|
|
||||||
void setSendStatistics(bool sendStatistics)
|
|
||||||
{
|
|
||||||
if (m_sendStatistics == sendStatistics)
|
|
||||||
return;
|
|
||||||
|
|
||||||
m_sendStatistics = sendStatistics;
|
|
||||||
|
|
||||||
writeSingleSettingConfig("sendStatistics", sendStatistics);
|
|
||||||
emit sendStatisticsChanged(m_sendStatistics);
|
|
||||||
}
|
|
||||||
|
|
||||||
void setLocalStoragePath(QUrl localStoragePath)
|
void setLocalStoragePath(QUrl localStoragePath)
|
||||||
{
|
{
|
||||||
|
|
||||||
@ -234,6 +225,15 @@ public slots:
|
|||||||
}
|
}
|
||||||
void setupLanguage();
|
void setupLanguage();
|
||||||
|
|
||||||
|
void setAnonymousTelemetry(bool anonymousTelemetry)
|
||||||
|
{
|
||||||
|
if (m_anonymousTelemetry == anonymousTelemetry)
|
||||||
|
return;
|
||||||
|
|
||||||
|
m_anonymousTelemetry = anonymousTelemetry;
|
||||||
|
emit anonymousTelemetryChanged(m_anonymousTelemetry);
|
||||||
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void writeJsonFileFromResource(const QString& filename);
|
void writeJsonFileFromResource(const QString& filename);
|
||||||
void setupWidgetAndWindowPaths();
|
void setupWidgetAndWindowPaths();
|
||||||
@ -248,11 +248,11 @@ private:
|
|||||||
bool m_pauseWallpaperWhenIngame { false };
|
bool m_pauseWallpaperWhenIngame { false };
|
||||||
bool m_autostart { true };
|
bool m_autostart { true };
|
||||||
bool m_highPriorityStart { true };
|
bool m_highPriorityStart { true };
|
||||||
bool m_sendStatistics { false };
|
|
||||||
bool m_offlineMode { true };
|
bool m_offlineMode { true };
|
||||||
|
|
||||||
QString m_decoder { "" };
|
QString m_decoder { "" };
|
||||||
QString m_gitBuildHash;
|
QString m_gitBuildHash;
|
||||||
bool m_silentStart { false };
|
bool m_silentStart { false };
|
||||||
|
bool m_anonymousTelemetry { true };
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user