[go: nahoru, domu]

Jump to content

Google Cloud Messaging: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
Fixed error in verb tense
Tags: Mobile edit Mobile web edit
m Add internal link to "SDK"
 
(7 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Short description|Mobile notification service}}
{{Infobox software platform
{{Infobox software platform
| name = Google Cloud Messaging
| name = Google Cloud Messaging
Line 15: Line 16:
}}
}}


'''Google Cloud Messaging''' ('''GCM''') was a mobile [[notification service]] developed by [[Google]] that enables third-party application developers to send notification data or information from developer-run servers to applications that target the [[Android (operating system)|Google Android]] Operating System, as well as applications or extensions developed for the [[Chrome (browser)|Google Chrome]] internet browser. It was available to developers free of charge. The GCM Service was first announced in June 2012<ref>{{Cite web|url=https://android-developers.blogspot.ca/2012/06/introducing-android-41-jelly-bean.html|title=Android Developers Blog|last=Ghosh|first=Angana|date=2012-06-27|website=Introducing Android 4.1 (Jelly Bean) preview platform, and more|publisher=|access-date=2016-09-09}}</ref> as a successor to Google's now-defunct [[Android Cloud to Device Messaging]] (C2DM) service, citing improvements to authentication and delivery, new API endpoints and messaging parameters, and the removal of limitations on API send-rates and message sizes.<ref name="InfoQ">{{cite web|url=http://www.infoq.com/news/2012/08/GoogleCMReplacesC2Dm|last=Rubio|first=Daniel|title=Google Cloud Messaging for Android (GCM) Unveiled, to Replace C2DM Framework|date=August 12, 2012|accessdate=October 15, 2015}}</ref> It has been superseded by Google's [[Firebase Cloud Messaging]] (FCM) on May 29, 2019.<ref name="GoogDev">{{Cite web|url=https://developers.google.com/cloud-messaging/|title=Cloud Messaging (Deprecated)|date=2019-03-29|publisher=Google}}</ref>
'''Google Cloud Messaging''' ('''GCM''') was a mobile [[notification service]] developed by [[Google]] that enables third-party application developers to send notification data or information from developer-run servers to applications that target the [[Android (operating system)|Google Android]] Operating System, as well as applications or extensions developed for the [[Google Chrome]] internet browser. It was available to developers free of charge. The GCM Service was first announced in June 2012<ref>{{Cite web|url=https://android-developers.blogspot.ca/2012/06/introducing-android-41-jelly-bean.html|title=Android Developers Blog|last=Ghosh|first=Angana|date=2012-06-27|website=Introducing Android 4.1 (Jelly Bean) preview platform, and more|access-date=2016-09-09}}</ref> as a successor to Google's now-defunct [[Android Cloud to Device Messaging]] (C2DM) service, citing improvements to authentication and delivery, new API endpoints and messaging parameters, and the removal of limitations on API send-rates and message sizes.<ref name="InfoQ">{{cite web|url=http://www.infoq.com/news/2012/08/GoogleCMReplacesC2Dm|last=Rubio|first=Daniel|title=Google Cloud Messaging for Android (GCM) Unveiled, to Replace C2DM Framework|date=August 12, 2012|access-date=October 15, 2015}}</ref> It has been superseded by Google's [[Firebase Cloud Messaging]] (FCM) on May 29, 2019.<ref name="GoogDev">{{Cite web|url=https://developers.google.com/cloud-messaging/|title=Cloud Messaging (Deprecated)|date=2019-03-29|publisher=Google}}</ref>


==Development==
==Development==
{{expand section|date=September 2014}}
{{expand section|date=September 2014}}
GCM first launched as Google's '''[[Android Cloud to Device Messaging]]''' (C2DM) service, first featured in [[Android version history#2.2|Android 2.2]] by [[Google]].<ref name="androiddev">{{cite web|url=http://code.google.com/android/c2dm/|title=Android Cloud to Device Messaging Framework|publisher=Google Inc.}}</ref><ref name="androidver">{{cite web|url=http://developer.android.com/sdk/android-2.2-highlights.html|title=Android 2.2 Platform Highlights|publisher=Google Inc.|url-status=dead|archiveurl=https://www.webcitation.org/68xmGXBy7?url=http://developer.android.com/about/versions/android-2.2-highlights.html|archivedate=2012-07-06}}</ref><ref name="androidans">{{cite web|url=https://support.google.com/googleplay/android-developer/support/bin/answer.py?hl=en&answer=2663268|title=Google Cloud Messaging (GCM) - Google Play for Developers Help|publisher=Google Inc}}</ref>
GCM first launched as Google's '''[[Android Cloud to Device Messaging]]''' (C2DM) service, first featured in [[Android version history#2.2|Android 2.2]] by [[Google]].<ref name="androiddev">{{cite web|url=http://code.google.com/android/c2dm/|title=Android Cloud to Device Messaging Framework|publisher=Google Inc.}}</ref><ref name="androidver">{{cite web|url=http://developer.android.com/sdk/android-2.2-highlights.html|title=Android 2.2 Platform Highlights|publisher=Google Inc.|url-status=dead|archive-url=https://web.archive.org/web/20120623234611/http://developer.android.com/about/versions/android-2.2-highlights.html|archive-date=2012-06-23}}</ref><ref name="androidans">{{cite web|url=https://support.google.com/googleplay/android-developer/support/bin/answer.py?hl=en&answer=2663268|title=Google Cloud Messaging (GCM) - Google Play for Developers Help|publisher=Google Inc}}</ref>


The transition to '''Google Cloud Messaging''' was first announced when the Android service was unveiled on June 27, 2012, at [[Google I/O#2012 .28June 27.E2.80.9329.2C 2012.29|Google I/O]].<ref name = "Google’s New Cloud Messaging System Does More for Less – Gizmodo">{{cite web|url=https://gizmodo.com/5921766/android-messaging-is-headed-to-the-cloud|title=Google’s New Cloud Messaging System Does More for Less|publisher=[[Gizmodo]]|last=Tarantola|first=Andrew|date=June 27, 2012|accessdate=August 10, 2012}}</ref> Shortly after announcing the Google Cloud Messaging service, Google published documentation to guide application developers with migrating from the C2DM and onto the new service.<ref name="GoogleMigration">{{cite web|url=https://developers.google.com/cloud-messaging/c2dm|title=Migration from C2DM|publisher=[[Google]]|accessdate=October 15, 2015|archive-url=https://web.archive.org/web/20150906095043/https://developers.google.com/cloud-messaging/c2dm|archive-date=September 6, 2015|url-status=dead}}</ref> Migrating to the service required SDK and code changes, as well as a release of an application update to the publish repository (such as [[Google Play]]) for downloading and updating.
The transition to '''Google Cloud Messaging''' was first announced when the Android service was unveiled on June 27, 2012, at [[Google I/O#2012 .28June 27.E2.80.9329.2C 2012.29|Google I/O]].<ref name = "Google’s New Cloud Messaging System Does More for Less – Gizmodo">{{cite web|url=https://gizmodo.com/5921766/android-messaging-is-headed-to-the-cloud|title=Google’s New Cloud Messaging System Does More for Less|publisher=[[Gizmodo]]|last=Tarantola|first=Andrew|date=June 27, 2012|access-date=August 10, 2012}}</ref> Shortly after announcing the Google Cloud Messaging service, Google published documentation to guide application developers with migrating from the C2DM and onto the new service.<ref name="GoogleMigration">{{cite web|url=https://developers.google.com/cloud-messaging/c2dm|title=Migration from C2DM|publisher=[[Google]]|access-date=October 15, 2015|archive-url=https://web.archive.org/web/20150906095043/https://developers.google.com/cloud-messaging/c2dm|archive-date=September 6, 2015|url-status=dead}}</ref> Migrating to the service required [[Software development kit|SDK]] and code changes, as well as a release of an application update to the publish repository (such as [[Google Play]]) for downloading and updating.


The Chrome service was announced before Google I/O 2013 in a blog post titled 'Building efficient apps and extensions with push messaging.'<ref name = "Building efficient apps and extensions with push messaging">{{cite web|url=http://googledevelopers.blogspot.com/2013/05/building-efficient-apps-and-extensions.html|title=Building efficient apps and extensions with push messaging|publisher=[[Google]]|last=Scott|first=Mark|date=May 9, 2013|accessdate=May 14, 2013}}</ref>
The Chrome service was announced before Google I/O 2013 in a blog post titled 'Building efficient apps and extensions with push messaging.'<ref name = "Building efficient apps and extensions with push messaging">{{cite web|url=http://googledevelopers.blogspot.com/2013/05/building-efficient-apps-and-extensions.html|title=Building efficient apps and extensions with push messaging|publisher=[[Google]]|last=Scott|first=Mark|date=May 9, 2013|access-date=May 14, 2013}}</ref>


At [[Google I/O|I/O 2015]], Google announced a new SDK and [[iOS]] support.
At [[Google I/O|I/O 2015]], Google announced a new SDK and [[iOS]] support.
Line 30: Line 31:
Google Cloud Messaging functions using server [[Application programming interface|APIs]] and [[Software development kit|SDKs]], both maintained by Google. The GCM has the ability to send [[Push technology|push notifications]], deep-linking commands, and application data. Larger messages can be sent with up to 4 KB of [[Payload (computing)|payload]] data.<ref name="Google Cloud Messaging Reference">{{cite web|url=http://developer.android.com/guide/google/gcm/index.html|title=Google Cloud Messaging for Android|publisher=[[Google]]}}</ref>
Google Cloud Messaging functions using server [[Application programming interface|APIs]] and [[Software development kit|SDKs]], both maintained by Google. The GCM has the ability to send [[Push technology|push notifications]], deep-linking commands, and application data. Larger messages can be sent with up to 4 KB of [[Payload (computing)|payload]] data.<ref name="Google Cloud Messaging Reference">{{cite web|url=http://developer.android.com/guide/google/gcm/index.html|title=Google Cloud Messaging for Android|publisher=[[Google]]}}</ref>


Upon allowing the application permission to receive and display notifications, the client application sends a registration API request to the Google Cloud Messaging interface to begin the registration process. The GCM Service receives and acknowledges the request and responds by giving the device a ''GCM Registration ID'', a unique identifier that the developer later uses to send a notification to the individual device. The identifier is stored onto the device, and is typically sent to the developer's application server to be stored. The GCM Registration ID is a randomly-generated identifier that does not contain any personal or device information that could allow a developer to discover the personal identity of the user.<ref>{{cite web|url=https://developers.google.com/cloud-messaging/registration|title=Registering Client Apps|publisher=[[Google]]|date=January 14, 2016|accessdate=February 5, 2016|archive-url=https://web.archive.org/web/20160428055921/https://developers.google.com/cloud-messaging/registration|archive-date=April 28, 2016|url-status=dead}}</ref> When the developer wishes to send a notification event to a device, the process begins with an API POST request being sent to the GCM Authentication Service. The POST request includes the GCM Registration ID, priority, optional values and links, and the information that is to be displayed on the device upon its arrival. Upon successful verification of the GCM Registration ID and other credentials, an authentication token is returned. Both identifiers are then sent to the GCM Service to be enqueued and delivered to the device.
Upon allowing the application permission to receive and display notifications, the client application sends a registration API request to the Google Cloud Messaging interface to begin the registration process. The GCM Service receives and acknowledges the request and responds by giving the device a ''GCM Registration ID'', a unique identifier that the developer later uses to send a notification to the individual device. The identifier is stored onto the device, and is typically sent to the developer's application server to be stored. The GCM Registration ID is a randomly-generated identifier that does not contain any personal or device information that could allow a developer to discover the personal identity of the user.<ref>{{cite web|url=https://developers.google.com/cloud-messaging/registration|title=Registering Client Apps|publisher=[[Google]]|date=January 14, 2016|access-date=February 5, 2016|archive-url=https://web.archive.org/web/20160428055921/https://developers.google.com/cloud-messaging/registration|archive-date=April 28, 2016|url-status=dead}}</ref> When the developer wishes to send a notification event to a device, the process begins with an API POST request being sent to the GCM Authentication Service. The POST request includes the GCM Registration ID, priority, optional values and links, and the information that is to be displayed on the device upon its arrival. Upon successful verification of the GCM Registration ID and other credentials, an authentication token is returned. Both identifiers are then sent to the GCM Service to be enqueued and delivered to the device.


==See also==
==See also==
* [[Android software development]]
* [[Android software development]]
* [[Apple Push Notification Service]]
* [[Apple Push Notification service]]
* [[SQL Server Notification Services]]
* [[SQL Server Notification Services]]
* [[Windows Notification Service]]
* [[Windows Push Notification Service]]


==References==
==References==
Line 47: Line 48:
* [https://web.archive.org/web/20160613171109/https://developers.google.com/cloud-messaging/chrome/client Official Chrome Developer Page]
* [https://web.archive.org/web/20160613171109/https://developers.google.com/cloud-messaging/chrome/client Official Chrome Developer Page]
* [http://www.collegelib.com/t-google-cloud-messaging-gcm-technology-push-notifications-android.html GCM Collegelib Seminar]
* [http://www.collegelib.com/t-google-cloud-messaging-gcm-technology-push-notifications-android.html GCM Collegelib Seminar]
* [http://www.mindask.com/push/ Google Chrome Push Notifications implementation by MindAsk]{{Dead link|date=February 2020|url=https://web.archive.org/web/20160812032342/http://www.mindask.com/push/}}
* [http://www.mindask.com/push/ Google Chrome Push Notifications implementation by MindAsk]
* [https://web.archive.org/web/20170203012746/https://pushem.org/ PushEm - Google Cloud Messaging Provider]
* [https://web.archive.org/web/20170203012746/https://pushem.org/ PushEm - Google Cloud Messaging Provider]


{{Android}}
{{Android}}


[[Category:Mobile telecommunications]]
[[Category:Mobile telecommunication services]]
[[Category:Google Cloud|Cloud Messaging]]
[[Category:Google Cloud|Cloud Messaging]]

Latest revision as of 08:01, 22 March 2024

Google Cloud Messaging
Overview of the GCM Service architecture.
Developer(s)Google
Target platform(s)Android, Chrome
Programming language(s)Java
StatusDefunct
LicenseProprietary

Google Cloud Messaging (GCM) was a mobile notification service developed by Google that enables third-party application developers to send notification data or information from developer-run servers to applications that target the Google Android Operating System, as well as applications or extensions developed for the Google Chrome internet browser. It was available to developers free of charge. The GCM Service was first announced in June 2012[1] as a successor to Google's now-defunct Android Cloud to Device Messaging (C2DM) service, citing improvements to authentication and delivery, new API endpoints and messaging parameters, and the removal of limitations on API send-rates and message sizes.[2] It has been superseded by Google's Firebase Cloud Messaging (FCM) on May 29, 2019.[3]

Development[edit]

GCM first launched as Google's Android Cloud to Device Messaging (C2DM) service, first featured in Android 2.2 by Google.[4][5][6]

The transition to Google Cloud Messaging was first announced when the Android service was unveiled on June 27, 2012, at Google I/O.[7] Shortly after announcing the Google Cloud Messaging service, Google published documentation to guide application developers with migrating from the C2DM and onto the new service.[8] Migrating to the service required SDK and code changes, as well as a release of an application update to the publish repository (such as Google Play) for downloading and updating.

The Chrome service was announced before Google I/O 2013 in a blog post titled 'Building efficient apps and extensions with push messaging.'[9]

At I/O 2015, Google announced a new SDK and iOS support.

Technical details[edit]

Google Cloud Messaging functions using server APIs and SDKs, both maintained by Google. The GCM has the ability to send push notifications, deep-linking commands, and application data. Larger messages can be sent with up to 4 KB of payload data.[10]

Upon allowing the application permission to receive and display notifications, the client application sends a registration API request to the Google Cloud Messaging interface to begin the registration process. The GCM Service receives and acknowledges the request and responds by giving the device a GCM Registration ID, a unique identifier that the developer later uses to send a notification to the individual device. The identifier is stored onto the device, and is typically sent to the developer's application server to be stored. The GCM Registration ID is a randomly-generated identifier that does not contain any personal or device information that could allow a developer to discover the personal identity of the user.[11] When the developer wishes to send a notification event to a device, the process begins with an API POST request being sent to the GCM Authentication Service. The POST request includes the GCM Registration ID, priority, optional values and links, and the information that is to be displayed on the device upon its arrival. Upon successful verification of the GCM Registration ID and other credentials, an authentication token is returned. Both identifiers are then sent to the GCM Service to be enqueued and delivered to the device.

See also[edit]

References[edit]

  1. ^ Ghosh, Angana (2012-06-27). "Android Developers Blog". Introducing Android 4.1 (Jelly Bean) preview platform, and more. Retrieved 2016-09-09.
  2. ^ Rubio, Daniel (August 12, 2012). "Google Cloud Messaging for Android (GCM) Unveiled, to Replace C2DM Framework". Retrieved October 15, 2015.
  3. ^ "Cloud Messaging (Deprecated)". Google. 2019-03-29.
  4. ^ "Android Cloud to Device Messaging Framework". Google Inc.
  5. ^ "Android 2.2 Platform Highlights". Google Inc. Archived from the original on 2012-06-23.
  6. ^ "Google Cloud Messaging (GCM) - Google Play for Developers Help". Google Inc.
  7. ^ Tarantola, Andrew (June 27, 2012). "Google's New Cloud Messaging System Does More for Less". Gizmodo. Retrieved August 10, 2012.
  8. ^ "Migration from C2DM". Google. Archived from the original on September 6, 2015. Retrieved October 15, 2015.
  9. ^ Scott, Mark (May 9, 2013). "Building efficient apps and extensions with push messaging". Google. Retrieved May 14, 2013.
  10. ^ "Google Cloud Messaging for Android". Google.
  11. ^ "Registering Client Apps". Google. January 14, 2016. Archived from the original on April 28, 2016. Retrieved February 5, 2016.

External links[edit]