初始化GCM的发件人(Google Cloud Message)问题

时间:2014-01-13 17:48:50

标签: java android google-cloud-messaging

我想通过GCM(Google Cloud Message)向Android手机发送消息。 但是当这个过程进行时 Sender sender = new Sender(serverKey);

进程已停止,但没有异常抛出。似乎在创建Sender实例时会发生问题,但它不会在外部抛出任何异常。

如何获取异常信息? serverKey是正确的。为什么这句话有错误?

@Override
public void sendMessage(String msg) {
    try {
        String serverKey = "aaaa";
        String regId = "xxxxxx";
        Sender sender = new Sender(serverKey);
        Message message = new Message.Builder().addData("msg", msg).build();
        Result result = sender.send(message, regId, 5);
        String status = "Sent message to one device: " + result;
        System.out.println(status);
    } catch (Exception e) {
        e.printStackTrace();
    }
}

1 个答案:

答案 0 :(得分:0)

Sender类只有一个构造函数,这里是它的代码:

  public Sender(String key) {
    this.key = nonNull(key);
  }

此构造函数抛出异常的唯一方法是,如果您传递null密钥(这将导致IllegalArgumentException)。

因此,要么将null传递给该构造函数,要么在该行中没有任何异常。

实际上,另一种选择是您的流程无法访问gcm-server.jar,其中包含Sender类。