Push Notifications on Android: How to Register with the Server
世界上大多数智能手机都使用安卓系统。它很受欢迎,因为它是免费的,并且有一个易于使用的用户界面。它还拥有最大的应用程序库,可以做各种各样的事情,比如帮助你在办公室或通过玩游戏打发时间。自2008年推出以来,Android操作系统已经收到了几次更新(我们目前的版本是4.4)。据估计,全球71%的应用程序开发者为Android市场开发应用程序,Android市场每天都在不断扩大。如果您想创建自己的应用程序,学习如何创建是非常容易的,特别是如果您有一些Java (本课程是一个很好的起点!)
在本教程中,我们将概述推送通知以及如何为您的Android应用程序启动推送通知。在我们开始之前,让我们澄清推送通知的概念以及为什么它们很重要。
什么是推送通知?
由中央服务器发送或“推送”到设备的通知称为推送通知。推送通知是通过互联网接收到的。为了接收服务,应用程序必须预先在外部服务器上注册。
他们为什么重要?它们允许一旦可用的方式向用户显示新信息。例如,在社交媒体应用程序中,如果朋友向用户发送消息,则可以通过推送通知在接下来的几秒钟内显示给他。信息由外部服务器发送。这减少了应用程序和用户设备上的负载,因为服务器执行大部分工作。通过常规通知,应用程序必须随时与服务器保持联系并上传和下载数据。此外,有时可能会错过常规通知应用程序可能会被用户遗漏。例如,如果用户处于呼叫,则可能发生这种情况,或者设备已关闭。推送通知,因为它们位于外部服务器上,始终在设备准备就绪时向用户传送消息。
处理推送通知的服务器也能够接收来自用户设备的数据。信息通过推和拉协议在设备和服务器之间来回传递。在本课程中了解更多关于Android应用程序的通知。
设置外部推送通知服务器:注册GCM(云消息服务)
你可以注册谷歌Android云消息服务(GCM)来建立一个免费的推送通知服务。GCM是免费的,你可以发送和接收的信息没有任何限制。谷歌服务器也很可靠,所以你不必为服务花钱。
GCM允许您发送基于HTTP和XMPP的消息。HTTP是旧技术,与XMPP相比,但它可以并排使用它。XMPP技术是异步的,它允许您发送更多的推送通知,与HTTP不同,这是资源密集的。XMPP还允许设备将消息发送回服务器,如果您正在运行消息传递应用程序,这是非常宝贵的 - 这允许您的应用程序用户与另一个用户聊天。XMPP还在单个连接上运行。通过单独的连接来回传递消息。
您需要为应用程序安装Google Play Services SDK以支持GCM。你可以下载它这里。
注册GCM服务
在注册GCM之前,您需要先使用谷歌API开发服务来创建谷歌APbetwayapp下载安装I项目。你可以在此处查找开发人员控制台。
在这里,单击创建项目(或加载一个现有项目)。给项目命名后,你需要记下项目编号。这用于注册GCM服务。
在这之后,GCM服务可以通过选择左侧侧边栏的“api和auth”和打开“谷歌Android云消息”来启用。在此之后,您将需要为您的应用程序获得一个惟一的API密钥。如果你认为应用程序受到黑客的威胁,你可以选择创建新的密钥。
通过首先单击开发人员控制台左侧的“API和APIS”,然后选择“凭据”来获得API密钥。在子菜单中,选择“公共API Acces”,然后选择“创建新密钥”选项。然后选择“服务器密钥”选项。您需要在此处指定服务器的IP地址,然后单击“创建”选项。您需要缩小API键 - 稍后需要它进行身份验证。
实现GCM
您需要在应用程序编码(应用程序清单)中实现GCM客户端和GCM服务器。您需要在完成之前设置Google Play服务。这是过程中最复杂的步骤。它涉及设置权限,以便您的应用程序能够发送和接收消息。您还必须确保GCM服务无法在不受支持的设备上运行。
您还必须决定使用哪个服务器连接——HTTP还是XMPP。在任何一种情况下,GCM服务器都将与您的应用程序服务器(由)和用户的设备进行交互,并在它们之间来回发送和接收数据。
当然,您不会单独使用推送通知。本课程可以帮助您从头开始开发自己的Android应用程序。或者如果你更多的游戏类型,这里有一个课程可以帮助你开发自己的游戏在Android上。