我正尝试在Android中作为推送通知从服务器获取消息。我能够访问服务器,但是我从服务器得到了一个空消息。我可以在Android上看到没有消息的通知。 这是我的服务器代码,我从ANDROID HIVE中获得了Android代码。
public class GCMBroadcast {
@POST
@Path("/getgcm")
public String getGcmData(){
String str="success";
try {
System.out.println("From CLient");
Sender sender = new Sender(
"AIzaSyBbfXkbCYWQdE5qyjJKwl-YLBX-F01ICug");
// add your own google api key in android menifest
// use this to send message with payload data
Message message = new Message.Builder()
.collapseKey("message")
.timeToLive(3)
.delayWhileIdle(true)
.addData("message", "Welcome to Push Notifications")
// you can get this message on client side app
.build();
System.out.println("message:"+message);
System.setProperty("http.proxyHost", "192.168.1.110");
// write you own proxy
System.setProperty("http.proxyPort", "8080");
// write you own proxy host
// Use this code to send notification message to a single device
Result result = sender
.send(
message,
"APA91bFEmQ53TKnJQXa0HbF9lXGTMEyRrp-6H9-_zZNBdFAUMsvXIG0rpvKcXn_6L5wBP77HskWw4svo6GLHZwfWdDf-yQCBAvIqp4fQF05cWqDtJ8mfNDnAQ8qdXByaEqwDmK3aQi0xIq7L3XGF1dSkbOOfBFIjlfDzlj4SG3z_SA-v3IUz_g4",
1);
System.out.println("Message Result: " + result.toString());
// Use this code to send notification message to multiple
// devices
/*ArrayList<String> devicesList = new ArrayList<String>();
// add your devices RegisterationID, one for each device
devicesList
.add("APA91bFEmQ53TKnJQXa0HbF9lXGTMEyRrp-6H9-_zZNBdFAUMsvXIG0rpvKcXn_6L5wBP77HskWw4svo6GLHZwfWdDf-yQCBAvIqp4fQF05cWqDtJ8mfNDnAQ8qdXByaEqwDmK3aQi0xIq7L3XGF1dSkbOOfBFIjlfDzlj4SG3z_SA-v3IUz_g4");
// Use this code for multicast messages
MulticastResult multicastResult = sender.send(message,
devicesList, 0);
sender.send(message, devicesList, 0);
System.out.println("Message Result: "
+ multicastResult.toString());
*/
} catch (Exception e) {
e.printStackTrace();
str="Failure";
}
return str;
}
}
and I am using android hive example