运行GCM示例应用程序时出错

时间:2016-04-03 14:06:53

标签: android google-cloud-messaging google-play-services

我尝试运行google为GCM提供的示例应用程序。

www.developers.google.com/cloud-messaging/android/start

我按照所有说明操作,但在error image

中显示以下错误

编辑1:

从开发者控制台复制的API密钥 和 我项目中使用的API密钥

检查此image

您可以看到两个API密钥相同

3 个答案:

答案 0 :(得分:0)

GcmSender中有一个名为API_KEY的变量,您没有使用正确的密钥。请按照以下步骤获取正确的API密钥。

  • 第1步:转到Google Developer Console。
  • 第2步:创建一个新项目。
  • 第3步:点击概览屏幕上的“Google Cloud Messaging”API。
  • 第4步:点击“启用”
  • 步骤5:转到“凭据并为Android创建新的API密钥。
  • 步骤6:获取API密钥并将粘贴复制到GcmSender。

答案 1 :(得分:0)

我遇到了同样的问题,我发现我使用的是错误的API密钥。由GCM提供的USE Server API密钥,而不是Dummy API密钥(API_Key)。希望你会成功。最好的运气!!

答案 2 :(得分:0)

我有类似的问题。在developers guidelines中,说明是:

  

当您的设备上加载示例应用程序时,请运行以下命令   gradle命令向所有已注册的应用程序实例发送通知:

     

的Linux / Mac的:

     

./ gradlew run -Pmsg =“message”

     

视窗:

     

。\ gradlew.bat run -Pmsg =“message”

但是每次运行gradle命令时都会发生同样的错误。

最后,我没有运行gradle命令,而是在android studio中运行foreach (GridViewRow grv in customTableDataList.UniGrid.GridView.Rows) { if (grv != null) { if (null != grv.FindControl(ItemCheckBoxID) && ((CheckBox)grv.FindControl(ItemCheckBoxID)).Checked) { itemIds += customTableDataList.UniGrid.ActionsID.ToArray()[rowCounter] + ", "; } rowCounter++; } } ,它运行正常,并且我的设备上出现了通知。

请注意,在运行func randomRangeNumber(range: Range<Int> = 1...6) -> Int { let min = range.startIndex let max = range.endIndex return Int(arc4random_uniform(UInt32(max - min))) + min } let max = Int(self.frame.width - 100) enemy?.position = CGPoint(x: CGFloat(randomRangeNumber(100...max)), y:self.frame.maxY) 之前,您必须编辑运行配置并将邮件作为GcmSender.java传递。