diff options
author | Ryan Chu <ryan.chu@qt.io> | 2018-04-11 16:48:38 +0200 |
---|---|---|
committer | Ryan Chu <ryan.chu@qt.io> | 2018-06-07 06:32:05 +0000 |
commit | d870b6d262a2f22ca7793c6336717bd5101e8fc7 (patch) | |
tree | 3a63b6654c9f33d4b91c09728ff0f800c5f006a3 /src | |
parent | d683d8b556f924a67aaa0012c417f9346b46ec1a (diff) |
Example of Android Push Notification with Firebase Console
This example demonstrates receiving push notifications from the Firebase
Console, and then displays the content on the screen in JSON format. You
can send push notifications to the devices running this example by using
the notifications composer in the Firebase Console. The Firebase servers
will notify the registered application that the new message is available
to sync.
Task-number: QTPM-182
Change-Id: Ie84ce7c1446af3a6bcf7db4be9911db2b18f08ef
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Ari Salmi <snowgrains@snowgrains.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/cloudmessaging/qcloudmessagingrestapi.cpp | 6 | ||||
-rw-r--r-- | src/cloudmessaging/qcloudmessagingrestapi_p.h | 5 | ||||
-rw-r--r-- | src/cloudmessagingfirebase/cloudmessagingfirebase.pro | 11 |
3 files changed, 16 insertions, 6 deletions
diff --git a/src/cloudmessaging/qcloudmessagingrestapi.cpp b/src/cloudmessaging/qcloudmessagingrestapi.cpp index c59e538..07fdb73 100644 --- a/src/cloudmessaging/qcloudmessagingrestapi.cpp +++ b/src/cloudmessaging/qcloudmessagingrestapi.cpp @@ -67,13 +67,15 @@ QCloudMessagingRestApi::QCloudMessagingRestApi(QObject *parent) : QObject(parent), d(new QCloudMessagingRestApiPrivate) { - - d->m_online_state = d->m_network_info.isOnline(); d->m_wait_for_last_request_response = false; d->m_waiting_counter = 0; +#ifndef QT_NO_BEARERMANAGEMENT + d->m_online_state = d->m_network_info.isOnline(); + connect(&(d->m_network_info), &QNetworkConfigurationManager::onlineStateChanged, this, &QCloudMessagingRestApi::onlineStateChanged); +#endif connect(&(d->m_manager), &QNetworkAccessManager::authenticationRequired, this, &QCloudMessagingRestApi::provideAuthentication); diff --git a/src/cloudmessaging/qcloudmessagingrestapi_p.h b/src/cloudmessaging/qcloudmessagingrestapi_p.h index 71e0547..7f13561 100644 --- a/src/cloudmessaging/qcloudmessagingrestapi_p.h +++ b/src/cloudmessaging/qcloudmessagingrestapi_p.h @@ -43,7 +43,10 @@ #include <QNetworkReply> #include <QTimer> #include <QNetworkAccessManager> + +#ifndef QT_NO_BEARERMANAGEMENT #include <QNetworkConfigurationManager> +#endif QT_BEGIN_NAMESPACE @@ -74,7 +77,9 @@ public: QTimer m_msgTimer; bool m_online_state; QList <QCloudMessagingNetworkMessage> m_network_requests; +#ifndef QT_NO_BEARERMANAGEMENT QNetworkConfigurationManager m_network_info; +#endif int m_waiting_counter; int m_server_message_timer; int m_server_wait_for_response_counter; diff --git a/src/cloudmessagingfirebase/cloudmessagingfirebase.pro b/src/cloudmessagingfirebase/cloudmessagingfirebase.pro index e9ad425..fe7fc5e 100644 --- a/src/cloudmessagingfirebase/cloudmessagingfirebase.pro +++ b/src/cloudmessagingfirebase/cloudmessagingfirebase.pro @@ -30,10 +30,13 @@ INCLUDEPATH += $$(GOOGLE_FIREBASE_SDK)/include android { QT += androidextras - - LIBS += $$(GOOGLE_FIREBASE_SDK)/libs/android/armeabi-v7a/gnustl/libmessaging.a - LIBS += $$(GOOGLE_FIREBASE_SDK)/libs/android/armeabi-v7a/gnustl/libapp.a - + equals(ANDROID_TARGET_ARCH, x86) { + LIBS += $$(GOOGLE_FIREBASE_SDK)/libs/android/x86/gnustl/libmessaging.a + LIBS += $$(GOOGLE_FIREBASE_SDK)/libs/android/x86/gnustl/libapp.a + } else { + LIBS += $$(GOOGLE_FIREBASE_SDK)/libs/android/armeabi-v7a/gnustl/libmessaging.a + LIBS += $$(GOOGLE_FIREBASE_SDK)/libs/android/armeabi-v7a/gnustl/libapp.a + } } else: macos { LIBS += -F$$(GOOGLE_FIREBASE_SDK)/frameworks/darwin \ -framework firebase \ |