下面是我的源代码
public final static int sendGCM(final String title, final List<String> registrationID) throws IOException{
int status = 0;
Sender sender = new Sender(apiKey);
Message message = new Message.Builder()
// .collapseKey("1")
.timeToLive(86400)//sets the time of 1 day for GCM to push notifications when android device is off, offline or unavailable
.delayWhileIdle(true)
.addData("message", title)
.build();
MulticastResult result = sender.send(message, registrationID, 1);
System.out.println("Result "+result);
if(result == null){
throw new IOException("Could not send message");
}else{
status = 1;
}
return status;
}
该问题是由于GCM支持单个消息最多1,000个收件人
因此,我将注册数组列表分成1000个相等的部分,然后将消息发送给GCM。现在我可以发送推送通知了。
以下是我更新的代码
public final static int sendGCM(final String title, final List<String> registrationID) throws IOException{
int status = 0;
MulticastResult result =null;
for (int start = 0; start < registrationID.size(); start += 1000) {
int end = Math.min(start + 1000, registrationID.size());
List<String> sublist = registrationID.subList(start, end);
System.out.println(sublist);
Sender sender = new Sender(apiKey);
Message message = new Message.Builder()
// .collapseKey("1")
.timeToLive(86400)//sets the time of 1 day for GCM to push notifications when android device is off, offline or unavailable
.delayWhileIdle(true)
.addData("message", title)
.build();
result = sender.send(message, sublist, 1);
System.out.println("Result "+result);
}
if(result == null){
throw new IOException("Could not send message");
}else{
status = 1;
}
return status;
}
在Client.ExecuteMethod调用上。 为什么会发生这种情况?
问题内容: 我试图在我的appsettings.json文件中写入连接字符串,并将其带入我的启动文件中,但我不断得到一个Value不能为null。参数名称:connectionString。我一直在使用各种示例,但似乎看不到带有ASP.NET 1.0 Core启动类的新设置。 Appsetting.json文件: 尝试Startup.cs的方法 问题答案: 首先, 与在Visual Studio中
我希望我的脚本执行其所有整数参数的乘积。我试图用替换空白,然后计算操作,而不是执行循环。但是我得到了以下我不明白的结果: 为什么第一个在使用中间变量工作正常时产生错误?
在使用RestAssured的cucumber api测试中,我试图将路径参数作为空/空传递。 例如,当我以>>http://localhost:8093/my-rest-call//指令调用endpoint时 它给404但我希望是500。在《邮递员》中,它和预期的一样工作 但是,如果末尾的path参数为null/empty。如下所示,我得到了500个内部服务器错误。 我尝试的其他选项是have“
问题内容: 我有一个发送参数的表格。在我的表格中,我有一个复选框。如果未选中我的复选框,则不会获得任何参数。 如果在我的模块中,我有: 并且如果未选中我的复选框(未传递参数) 然后在调试模式下,我收到错误消息: 错误的请求浏览器(或代理)发送了该服务器无法理解的请求。 什么都没有告诉我错误是什么。 我通过使用防止了异常: 但是我不能改变Flask处理这种情况的行为吗? 问题答案: 如果未定义参
我做了一个自动加载用户设置xml文件的程序,但一个问题是,当我在代码中添加新值时,程序试图读取没有“data5”值的xml文件时,程序返回一个错误: 当我关闭程序时,我得到了另一个关于另一个进程使用的文件的错误 我不明白为什么文件仍然被锁定。它应该在之后关闭。我试图让程序在读取xml之前创建一个新的xml值,但这不是一个好主意,因为它将替换修改后的值。这是我的密码