我正在尝试让GCM与我的 Android 应用程序一起工作。我有一些问题。
- 在本文的第3 步:编写您的应用程序部分中,我看不到任何服务。我如何在没有服务的情况下启动我
BroadcastReceiver
的服务?我应该开始吗?在此部分中没有任何服务。 在编写服务器代码部分中,代码中有两个字符串:
用户名 = ''
密码 = ''
我应该为它们使用什么值?
@Tooto:如果您仔细阅读文章,您会在 Manifest.xml 中找到服务类的条目。
<service android:name=".MyIntentService" />
有关如何在您的 android 应用程序中设置 GCM 的更多详细信息,您可以参考此链接:http ://www.androidhive.info/2012/10/android-push-notifications-using-google-cloud-messaging-gcm -php 和 mysql/
不需要服务。当 GCM 消息到达时,Android 会启动广播接收器。在旧的实现中,广播接收器调用了一个意图服务,但不再需要它。
用户是<your Google API project Id>@gcm.googleapis.com
。密码是 API 密钥。但是,您提到的代码示例适用于新的基于 XMPP 的 API。使用基于 HTTP 的 API 更简单,它只需要请求标头中的 API 密钥。您提到的部分中的代码有一个指向 HTTP 示例的链接。
在 HTTP API 中,您 POST 一个如下所示的 HTTP 请求https://android.googleapis.com
:
Content-Type:application/json
Authorization:key=AIzaSyB-1uEai2WiUapxCs2Q0GZYzPu7Udno5aA
{
"registration_ids" : ["APA91bHun4MxP5egoKMwt2KZFBaFUH-1RYqx..."],
"data" : {
...
},
}