SlideShare a Scribd company logo
1 of 17
GCM
Agenda
• Polling Mechanism
• What is GCM
• Need / advantages of GCM
• GCM Architecture
• Working of GCM
• GCM – Send to Sync [ HTTP ] and Send Data [ XMPP ]
• Google Cloud Messaging – APIs
• Implementation
2
Existing FCM uses Polling
3
Polling is simple to implement,
But Polling consumes lot of battery , resource.
Extra Network Usages.
Any new updates ?
No
Any new updates ?
No
Any new updates ?
YES
GCM
4
What is GCM
5
• GCM stands for Google Cloud Messaging.
• It is a free service that allows you to send data from your
servers to your users and vice versa.
• Handles queuing of messages and delivery to the target
application.
Need / advantages of GCM
6
• Application does not need to be running in the background
for receiving data messages. The system will wake up the
Android application via Intent broadcast when the
message arrives.
• Lower cost and better tracking than SMS
• Scalability & extensibility
• GCM is completely free no matter how big your messaging
requirements
7
GCM Architecture
Working of GCM
8
Mobile App
GCMGCM
1.Request for Registration
2.Reply with Registration Id
5. Send Message
3.Send Registration Id 4. Send message {RegId, msg }
GCM – Send to Sync [HTTP]
9
Mobile App
GCMGCM
2. Send Notification message
3. Download data 1. Send Notification message
GCM – Send Data [ XMPP ]
10
Mobile App
GCMGCM
Send message
Send message
Persistent XMPP connection
11
Google Cloud Messaging – APIs
Time To Live and Delay While Idle
Multiple Senders
Message Multicasting
Implementation
• Creating a
Google API
project
• Enabling the
GCM Service
12
GCM Server
Implementation
13
Mobile App
Implementation
• Expose Service to receive and store user information and GCM
registration Id.
• Send message to GCM service.
14
Application Server
Minimum requirements ( device side )
• Android 2.2 +
• Google Play Store application should be installed
• Internet connection
• Google account ( device version < 4.0.4 )
• For Developer Emulator with Google APIs
15
References
• https://developer.android.com/google/gcm/index.html
• Presentation by Francesco Nerieri
https://developers.google.com/events/io/sessions/324893448
16
Thank you
Any questions?

More Related Content

What's hot

GOOGLE CLOUD MESSAGING PPT 2017
GOOGLE CLOUD MESSAGING PPT 2017GOOGLE CLOUD MESSAGING PPT 2017
GOOGLE CLOUD MESSAGING PPT 2017ketan Bordekar
 
Introduction to google cloud messaging in android
Introduction to google cloud messaging in androidIntroduction to google cloud messaging in android
Introduction to google cloud messaging in androidRIA RUI Society
 
GCM with Pushbots
GCM with PushbotsGCM with Pushbots
GCM with PushbotsAshish RAj
 
Firebase Cloud Messaging Device to Device
Firebase Cloud Messaging Device to DeviceFirebase Cloud Messaging Device to Device
Firebase Cloud Messaging Device to DeviceTakuma Lee
 
GCM Technology for Android
GCM Technology for AndroidGCM Technology for Android
GCM Technology for AndroidRanjitha R_14
 
google cloud messaging
google cloud messaginggoogle cloud messaging
google cloud messagingBhavana Sharma
 
Push it! How to use Google Cloud Messaging in your Android App
Push it! How to use Google Cloud Messaging in your Android AppPush it! How to use Google Cloud Messaging in your Android App
Push it! How to use Google Cloud Messaging in your Android AppAchim Fischer
 
Effective use of amazon web services for web deployment
Effective use of amazon web services for web deploymentEffective use of amazon web services for web deployment
Effective use of amazon web services for web deploymentGhazanfar Latif (Gabe)
 
SPSBE 2014 Content Enrichment in SharePoint Search
SPSBE 2014 Content Enrichment in SharePoint SearchSPSBE 2014 Content Enrichment in SharePoint Search
SPSBE 2014 Content Enrichment in SharePoint SearchSteven Van de Craen
 
Google app engine introduction
Google app engine introductionGoogle app engine introduction
Google app engine introductionrajsandhu1989
 
AWS serverless infrastructure - Integration testing
AWS serverless infrastructure - Integration testingAWS serverless infrastructure - Integration testing
AWS serverless infrastructure - Integration testingAWS User Group Bengaluru
 
Hp0 m50 question answers
Hp0 m50 question answersHp0 m50 question answers
Hp0 m50 question answersMarcoMCervantes
 
What we have learned about API scaling throughout Messente's international SM...
What we have learned about API scaling throughout Messente's international SM...What we have learned about API scaling throughout Messente's international SM...
What we have learned about API scaling throughout Messente's international SM...MobileMonday Estonia
 

What's hot (18)

GOOGLE CLOUD MESSAGING PPT 2017
GOOGLE CLOUD MESSAGING PPT 2017GOOGLE CLOUD MESSAGING PPT 2017
GOOGLE CLOUD MESSAGING PPT 2017
 
Introduction to google cloud messaging in android
Introduction to google cloud messaging in androidIntroduction to google cloud messaging in android
Introduction to google cloud messaging in android
 
GCM with Pushbots
GCM with PushbotsGCM with Pushbots
GCM with Pushbots
 
FCM & GCM
FCM & GCMFCM & GCM
FCM & GCM
 
Firebase Cloud Messaging Device to Device
Firebase Cloud Messaging Device to DeviceFirebase Cloud Messaging Device to Device
Firebase Cloud Messaging Device to Device
 
Gcm tutorial
Gcm tutorialGcm tutorial
Gcm tutorial
 
GCM Technology for Android
GCM Technology for AndroidGCM Technology for Android
GCM Technology for Android
 
google cloud messaging
google cloud messaginggoogle cloud messaging
google cloud messaging
 
Push it! How to use Google Cloud Messaging in your Android App
Push it! How to use Google Cloud Messaging in your Android AppPush it! How to use Google Cloud Messaging in your Android App
Push it! How to use Google Cloud Messaging in your Android App
 
Magda badita gcm
Magda badita  gcmMagda badita  gcm
Magda badita gcm
 
Google cloud messaging
Google cloud messagingGoogle cloud messaging
Google cloud messaging
 
Effective use of amazon web services for web deployment
Effective use of amazon web services for web deploymentEffective use of amazon web services for web deployment
Effective use of amazon web services for web deployment
 
SPSBE 2014 Content Enrichment in SharePoint Search
SPSBE 2014 Content Enrichment in SharePoint SearchSPSBE 2014 Content Enrichment in SharePoint Search
SPSBE 2014 Content Enrichment in SharePoint Search
 
Google app engine introduction
Google app engine introductionGoogle app engine introduction
Google app engine introduction
 
AWS serverless infrastructure - Integration testing
AWS serverless infrastructure - Integration testingAWS serverless infrastructure - Integration testing
AWS serverless infrastructure - Integration testing
 
Hp0 m50 question answers
Hp0 m50 question answersHp0 m50 question answers
Hp0 m50 question answers
 
What we have learned about API scaling throughout Messente's international SM...
What we have learned about API scaling throughout Messente's international SM...What we have learned about API scaling throughout Messente's international SM...
What we have learned about API scaling throughout Messente's international SM...
 
Adventures in Serverless Backends
Adventures in Serverless BackendsAdventures in Serverless Backends
Adventures in Serverless Backends
 

Viewers also liked

Google Cloud Messaging
Google Cloud MessagingGoogle Cloud Messaging
Google Cloud MessagingArvind Devaraj
 
Android Cloud to Device Messaging with the Google App Engine
Android Cloud to Device Messaging with the Google App EngineAndroid Cloud to Device Messaging with the Google App Engine
Android Cloud to Device Messaging with the Google App EngineLars Vogel
 
Android studio 之 fcm 推播服務
Android studio 之 fcm 推播服務Android studio 之 fcm 推播服務
Android studio 之 fcm 推播服務政斌 楊
 
Automatic solar tracking system
Automatic solar tracking systemAutomatic solar tracking system
Automatic solar tracking systemAnuj Kumar
 
Firebase - cloud based real time database
Firebase - cloud based real time databaseFirebase - cloud based real time database
Firebase - cloud based real time databaseGlenn Bech
 
Firebase presentation
Firebase presentationFirebase presentation
Firebase presentationConnor Leech
 
Mobile Cloud Computing
Mobile Cloud ComputingMobile Cloud Computing
Mobile Cloud ComputingSimeon Oriko
 
Vehicle Tracking System
Vehicle Tracking SystemVehicle Tracking System
Vehicle Tracking SystemVikas Agarwal
 
Global Positioning System (GPS)
Global Positioning System (GPS) Global Positioning System (GPS)
Global Positioning System (GPS) richard_craig
 
Gps tracking system
Gps tracking system Gps tracking system
Gps tracking system Sumit Kumar
 
Vehicle tracking system using GSM and GPS
Vehicle tracking system using GSM and GPSVehicle tracking system using GSM and GPS
Vehicle tracking system using GSM and GPSBharath Chapala
 
DUAL AXIS SOLAR TRACKER USING LDR AS A SENSOR
DUAL AXIS SOLAR TRACKER USING LDR AS A SENSORDUAL AXIS SOLAR TRACKER USING LDR AS A SENSOR
DUAL AXIS SOLAR TRACKER USING LDR AS A SENSORSwetanshmani Shrivastava
 
Automatic sun tracking system
Automatic sun tracking systemAutomatic sun tracking system
Automatic sun tracking systemSreekanth Shastry
 

Viewers also liked (20)

Google Cloud Messaging
Google Cloud MessagingGoogle Cloud Messaging
Google Cloud Messaging
 
iOS 9.3
iOS 9.3iOS 9.3
iOS 9.3
 
Pitch that matters
Pitch that mattersPitch that matters
Pitch that matters
 
Android Cloud to Device Messaging with the Google App Engine
Android Cloud to Device Messaging with the Google App EngineAndroid Cloud to Device Messaging with the Google App Engine
Android Cloud to Device Messaging with the Google App Engine
 
Android studio 之 fcm 推播服務
Android studio 之 fcm 推播服務Android studio 之 fcm 推播服務
Android studio 之 fcm 推播服務
 
cloude computing
cloude computingcloude computing
cloude computing
 
Automatic solar tracking system
Automatic solar tracking systemAutomatic solar tracking system
Automatic solar tracking system
 
Java project-presentation
Java project-presentationJava project-presentation
Java project-presentation
 
Firebase - cloud based real time database
Firebase - cloud based real time databaseFirebase - cloud based real time database
Firebase - cloud based real time database
 
Brand tracking
Brand trackingBrand tracking
Brand tracking
 
Firebase presentation
Firebase presentationFirebase presentation
Firebase presentation
 
Mobile Cloud Computing
Mobile Cloud ComputingMobile Cloud Computing
Mobile Cloud Computing
 
Vehicle Tracking System
Vehicle Tracking SystemVehicle Tracking System
Vehicle Tracking System
 
Global Positioning System (GPS)
Global Positioning System (GPS) Global Positioning System (GPS)
Global Positioning System (GPS)
 
Solar tracking system - Report
Solar tracking system - ReportSolar tracking system - Report
Solar tracking system - Report
 
Gps tracking system
Gps tracking system Gps tracking system
Gps tracking system
 
Vehicle tracking system using GSM and GPS
Vehicle tracking system using GSM and GPSVehicle tracking system using GSM and GPS
Vehicle tracking system using GSM and GPS
 
Solar tracker
Solar trackerSolar tracker
Solar tracker
 
DUAL AXIS SOLAR TRACKER USING LDR AS A SENSOR
DUAL AXIS SOLAR TRACKER USING LDR AS A SENSORDUAL AXIS SOLAR TRACKER USING LDR AS A SENSOR
DUAL AXIS SOLAR TRACKER USING LDR AS A SENSOR
 
Automatic sun tracking system
Automatic sun tracking systemAutomatic sun tracking system
Automatic sun tracking system
 

Similar to Google Cloud Messaging

Push to Me: Mobile Push Notifications (Zend Framework)
Push to Me: Mobile Push Notifications (Zend Framework)Push to Me: Mobile Push Notifications (Zend Framework)
Push to Me: Mobile Push Notifications (Zend Framework)Mike Willbanks
 
A Google Cloud Solution Minus Dedicated Server - App Only (Server and Client)
A Google Cloud Solution Minus Dedicated Server - App Only (Server and Client)A Google Cloud Solution Minus Dedicated Server - App Only (Server and Client)
A Google Cloud Solution Minus Dedicated Server - App Only (Server and Client)Chinnayya Math
 
Real Time Tracking of Complete Transport System Using GPS
Real Time Tracking of Complete Transport System Using GPSReal Time Tracking of Complete Transport System Using GPS
Real Time Tracking of Complete Transport System Using GPSMit mysore
 
GOOGLE CLOUD MESSAGING (GCM): A LIGHT WEIGHT COMMUNICATION MECHANISM BETWEEN ...
GOOGLE CLOUD MESSAGING (GCM): A LIGHT WEIGHT COMMUNICATION MECHANISM BETWEEN ...GOOGLE CLOUD MESSAGING (GCM): A LIGHT WEIGHT COMMUNICATION MECHANISM BETWEEN ...
GOOGLE CLOUD MESSAGING (GCM): A LIGHT WEIGHT COMMUNICATION MECHANISM BETWEEN ...ijistjournal
 
IMGS 2015 - Transport for London - Alun Pearsey
IMGS 2015 - Transport for London - Alun PearseyIMGS 2015 - Transport for London - Alun Pearsey
IMGS 2015 - Transport for London - Alun PearseyIMGS
 
Solace Strategic Update: October 2018
Solace Strategic Update: October 2018Solace Strategic Update: October 2018
Solace Strategic Update: October 2018Solace
 
Accelerrate your PaaS to the Mobile World
Accelerrate your PaaS to the Mobile WorldAccelerrate your PaaS to the Mobile World
Accelerrate your PaaS to the Mobile WorldRyan Campbell
 
Automate+ Final Presentation
Automate+ Final PresentationAutomate+ Final Presentation
Automate+ Final PresentationSanat Maharjan
 
Robi Idea Contest winning team Presentation
Robi Idea Contest winning team PresentationRobi Idea Contest winning team Presentation
Robi Idea Contest winning team PresentationYeasin Ar Rahman
 
google_cloud_presentation.pptx
google_cloud_presentation.pptxgoogle_cloud_presentation.pptx
google_cloud_presentation.pptxVagdevi15
 
Harnessing the Power of Google Cloud Platform: Strategies and Applications
Harnessing the Power of Google Cloud Platform: Strategies and ApplicationsHarnessing the Power of Google Cloud Platform: Strategies and Applications
Harnessing the Power of Google Cloud Platform: Strategies and ApplicationsHitesh Mohapatra
 
我的GCM時代-推送訊息的實做分享
我的GCM時代-推送訊息的實做分享我的GCM時代-推送訊息的實做分享
我的GCM時代-推送訊息的實做分享Morning Kao
 
Power Your Mobile Applications On The Cloud [IndicThreads Mobile Application ...
Power Your Mobile Applications On The Cloud [IndicThreads Mobile Application ...Power Your Mobile Applications On The Cloud [IndicThreads Mobile Application ...
Power Your Mobile Applications On The Cloud [IndicThreads Mobile Application ...IndicThreads
 
4_pillars_for_app_development_in_GCP.pdf
4_pillars_for_app_development_in_GCP.pdf4_pillars_for_app_development_in_GCP.pdf
4_pillars_for_app_development_in_GCP.pdfLuillyfe Blanco
 
Remotetestingfeaturev1 160109071942
Remotetestingfeaturev1 160109071942Remotetestingfeaturev1 160109071942
Remotetestingfeaturev1 160109071942Arunkumar H
 
Remotetestingfeature v1.1
Remotetestingfeature v1.1Remotetestingfeature v1.1
Remotetestingfeature v1.1Arunkumar H
 
Presentation of cloud computing
Presentation of  cloud computingPresentation of  cloud computing
Presentation of cloud computingShamim Hossain
 

Similar to Google Cloud Messaging (20)

Push to Me: Mobile Push Notifications (Zend Framework)
Push to Me: Mobile Push Notifications (Zend Framework)Push to Me: Mobile Push Notifications (Zend Framework)
Push to Me: Mobile Push Notifications (Zend Framework)
 
A Google Cloud Solution Minus Dedicated Server - App Only (Server and Client)
A Google Cloud Solution Minus Dedicated Server - App Only (Server and Client)A Google Cloud Solution Minus Dedicated Server - App Only (Server and Client)
A Google Cloud Solution Minus Dedicated Server - App Only (Server and Client)
 
Real Time Tracking of Complete Transport System Using GPS
Real Time Tracking of Complete Transport System Using GPSReal Time Tracking of Complete Transport System Using GPS
Real Time Tracking of Complete Transport System Using GPS
 
GCM aperitivo Android
GCM aperitivo AndroidGCM aperitivo Android
GCM aperitivo Android
 
GOOGLE CLOUD MESSAGING (GCM): A LIGHT WEIGHT COMMUNICATION MECHANISM BETWEEN ...
GOOGLE CLOUD MESSAGING (GCM): A LIGHT WEIGHT COMMUNICATION MECHANISM BETWEEN ...GOOGLE CLOUD MESSAGING (GCM): A LIGHT WEIGHT COMMUNICATION MECHANISM BETWEEN ...
GOOGLE CLOUD MESSAGING (GCM): A LIGHT WEIGHT COMMUNICATION MECHANISM BETWEEN ...
 
IMGS 2015 - Transport for London - Alun Pearsey
IMGS 2015 - Transport for London - Alun PearseyIMGS 2015 - Transport for London - Alun Pearsey
IMGS 2015 - Transport for London - Alun Pearsey
 
Solace Strategic Update: October 2018
Solace Strategic Update: October 2018Solace Strategic Update: October 2018
Solace Strategic Update: October 2018
 
AutoMate+
AutoMate+AutoMate+
AutoMate+
 
Accelerrate your PaaS to the Mobile World
Accelerrate your PaaS to the Mobile WorldAccelerrate your PaaS to the Mobile World
Accelerrate your PaaS to the Mobile World
 
Automate+ Final Presentation
Automate+ Final PresentationAutomate+ Final Presentation
Automate+ Final Presentation
 
A Journey into Google Cloud Messaging
A Journey into Google Cloud MessagingA Journey into Google Cloud Messaging
A Journey into Google Cloud Messaging
 
Robi Idea Contest winning team Presentation
Robi Idea Contest winning team PresentationRobi Idea Contest winning team Presentation
Robi Idea Contest winning team Presentation
 
google_cloud_presentation.pptx
google_cloud_presentation.pptxgoogle_cloud_presentation.pptx
google_cloud_presentation.pptx
 
Harnessing the Power of Google Cloud Platform: Strategies and Applications
Harnessing the Power of Google Cloud Platform: Strategies and ApplicationsHarnessing the Power of Google Cloud Platform: Strategies and Applications
Harnessing the Power of Google Cloud Platform: Strategies and Applications
 
我的GCM時代-推送訊息的實做分享
我的GCM時代-推送訊息的實做分享我的GCM時代-推送訊息的實做分享
我的GCM時代-推送訊息的實做分享
 
Power Your Mobile Applications On The Cloud [IndicThreads Mobile Application ...
Power Your Mobile Applications On The Cloud [IndicThreads Mobile Application ...Power Your Mobile Applications On The Cloud [IndicThreads Mobile Application ...
Power Your Mobile Applications On The Cloud [IndicThreads Mobile Application ...
 
4_pillars_for_app_development_in_GCP.pdf
4_pillars_for_app_development_in_GCP.pdf4_pillars_for_app_development_in_GCP.pdf
4_pillars_for_app_development_in_GCP.pdf
 
Remotetestingfeaturev1 160109071942
Remotetestingfeaturev1 160109071942Remotetestingfeaturev1 160109071942
Remotetestingfeaturev1 160109071942
 
Remotetestingfeature v1.1
Remotetestingfeature v1.1Remotetestingfeature v1.1
Remotetestingfeature v1.1
 
Presentation of cloud computing
Presentation of  cloud computingPresentation of  cloud computing
Presentation of cloud computing
 

Recently uploaded

Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingShane Coughlan
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingShane Coughlan
 
VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024VictoriaMetrics
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxRTS corp
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesKrzysztofKkol1
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...Bert Jan Schrijver
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogueitservices996
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprisepreethippts
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...OnePlan Solutions
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 
Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024Anthony Dahanne
 

Recently uploaded (20)

Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
 
VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilitiesAmazon Bedrock in Action - presentation of the Bedrock's capabilities
Amazon Bedrock in Action - presentation of the Bedrock's capabilities
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogue
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
Odoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 EnterpriseOdoo 14 - eLearning Module In Odoo 14 Enterprise
Odoo 14 - eLearning Module In Odoo 14 Enterprise
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 
Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024Not a Kubernetes fan? The state of PaaS in 2024
Not a Kubernetes fan? The state of PaaS in 2024
 

Google Cloud Messaging

  • 1. GCM
  • 2. Agenda • Polling Mechanism • What is GCM • Need / advantages of GCM • GCM Architecture • Working of GCM • GCM – Send to Sync [ HTTP ] and Send Data [ XMPP ] • Google Cloud Messaging – APIs • Implementation 2
  • 3. Existing FCM uses Polling 3 Polling is simple to implement, But Polling consumes lot of battery , resource. Extra Network Usages. Any new updates ? No Any new updates ? No Any new updates ? YES
  • 5. What is GCM 5 • GCM stands for Google Cloud Messaging. • It is a free service that allows you to send data from your servers to your users and vice versa. • Handles queuing of messages and delivery to the target application.
  • 6. Need / advantages of GCM 6 • Application does not need to be running in the background for receiving data messages. The system will wake up the Android application via Intent broadcast when the message arrives. • Lower cost and better tracking than SMS • Scalability & extensibility • GCM is completely free no matter how big your messaging requirements
  • 8. Working of GCM 8 Mobile App GCMGCM 1.Request for Registration 2.Reply with Registration Id 5. Send Message 3.Send Registration Id 4. Send message {RegId, msg }
  • 9. GCM – Send to Sync [HTTP] 9 Mobile App GCMGCM 2. Send Notification message 3. Download data 1. Send Notification message
  • 10. GCM – Send Data [ XMPP ] 10 Mobile App GCMGCM Send message Send message Persistent XMPP connection
  • 11. 11 Google Cloud Messaging – APIs Time To Live and Delay While Idle Multiple Senders Message Multicasting
  • 12. Implementation • Creating a Google API project • Enabling the GCM Service 12 GCM Server
  • 14. Implementation • Expose Service to receive and store user information and GCM registration Id. • Send message to GCM service. 14 Application Server
  • 15. Minimum requirements ( device side ) • Android 2.2 + • Google Play Store application should be installed • Internet connection • Google account ( device version < 4.0.4 ) • For Developer Emulator with Google APIs 15
  • 16. References • https://developer.android.com/google/gcm/index.html • Presentation by Francesco Nerieri https://developers.google.com/events/io/sessions/324893448 16

Editor's Notes

  1. Polling is about checking periodically for updates on your server and is bad for several reasons: 1) it consumes lot of battery, periodically waking up the mobile device network stack. 2) it consumes a lot of useless resources on the server as most of this resource lead to a “no update” reply. 3) it introduces latency as the request for new data can happen long after the data availability (unless you put a very low polling interval, which is even worse for the mobile battery). You can get your news alert hours after every one already knows about it, which defeat the purpose of the alert in the first place.
  2. Google Cloud Messaging have been announced last year as a replacement of Google Cloud to Device Messaging. This is a service that allows mobile developer to notify mobile devices (but also Chrome browser) about important changes on the server-side component of the application. It makes it possible for the device to stay up to date, without the need to use polling.
  3. Google-provided GCM Connection Servers take messages from a 3rd-party application server and send these messages to a GCM-enabled Android application (the &amp;quot;client app&amp;quot;) running on a device. Currently Google provides connection servers for HTTP and XMPP. The 3rd-Party Application Server is a component that you implement to work with your chosen GCM connection server(s). App servers send messages to a GCM connection server; the connection server enqueues and stores the message, and then sends it to the device when the device is online. The Client App is a GCM-enabled Android application running on a device. To receive GCM messages, this app must register with GCM and get a registration ID. If you are using the XMPP(CCS) connection server, the client app can send &amp;quot;upstream&amp;quot; messages back to the connection server.
  4. Give example of Email application. Give example of sending notification to the users to download videos or pictures.
  5. Give example of Instant Messaging Application. Give example of my favourite location on surf application.
  6. A) Time to live: allows you to set expiration date for a message. For example the surf application identify that my favourite location due to wind and tidy weather is a place which is perfect for surfing from this hour to next hour. So if GCM discovers that time is expired before device comes online, it simply drop that message. By Default time is 4 weeks. B) Delay when idle: can be use for less urgent notifications. Device will get it when becoming active again. Multiple Sender: GCM is even powerful when multiple senders want to send data to the same application. Multicasting: To send message via GCM, you need to use open http connection. When you want to connect to all of your users, it is difficult to open these many http connections. For 1000 recipeints 1 http request per message(GCM provides this facility).