我尝试运行google为GCM提供的示例应用程序。
www.developers.google.com/cloud-messaging/android/start
我按照所有说明操作,但在error image
中显示以下错误编辑1:
从开发者控制台复制的API密钥 和 我项目中使用的API密钥
检查此image
您可以看到两个API密钥相同
答案 0 :(得分:0)
GcmSender中有一个名为API_KEY的变量,您没有使用正确的密钥。请按照以下步骤获取正确的API密钥。
答案 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
传递。