Sinch Instant Messaging Android

时间:2016-02-25 19:00:40

标签: android sinch

我正在使用适用于Android的Sinch Instant Messaging API。 所有其他更改都已到位,例如AndroidManifest等的更改已到位。

我在Sinch客户端初始化中添加了以下内容。

sinchClient.setSupportMessaging(true);
sinchClient.setSupportManagedPush(true);

现在,当我发送消息时,它的发送没有例外,因为我确实看到消息发送计数在我的Sinch Dashboard上。但是,在我的发件人代码中,我没有收到有关消息失败或消息传递的任何回调。我收到有关消息已发送的消息。此外,接收器永远不会得到任何回调。

我假设我正在使用Sinch Push,我不需要任何类型的服务器来连接GCM。 Sinch会自动将查询路由到我的接收器。

Sender和Receiver都使用相同的API Key / Secret / Env。

登录

之前任何人都遇到过这种情况。

1 个答案:

答案 0 :(得分:1)

所以我的工作并不完全确定哪一步对我有帮助,但这是以下所做的:

  1. 使我的Android Manifest与Sinch Push示例完全相同,当然除了类名。
  2. 我觉得可能已经解决的另一个重要事情虽然不是100%肯定,但是我在代码中初始化和注册Sinch Client的方式。我从

    改变了它
            sinchClient = Sinch.getSinchClientBuilder().context(this).userId(username).applicationKey(ApplicationConstants.SINCH_SANDBOX_API_KEY)
                    .applicationSecret(ApplicationConstants.SINCH_SANDBOX_API_SECRET).environmentHost(ApplicationConstants.SINCH_SANDBOX_API_URL).build();
            sinchClient.addSinchClientListener(this);
            sinchClient.setSupportMessaging(true);
            sinchClient.setSupportManagedPush(true);
            sinchClient.checkManifest();
            sinchClient.start();
            sinchClient.getMessageClient().addMessageClientListener(messageClientListener);
    
  3.                 sinchClient = Sinch.getSinchClientBuilder().context(this).userId(username).applicationKey(ApplicationConstants.SINCH_SANDBOX_API_KEY)
                    .applicationSecret(ApplicationConstants.SINCH_SANDBOX_API_SECRET).environmentHost(ApplicationConstants.SINCH_SANDBOX_API_URL).build();
                sinchClient.setSupportMessaging(true);
                sinchClient.setSupportManagedPush(true);
                sinchClient.checkManifest();
                sinchClient.addSinchClientListener(this);
                sinchClient.getMessageClient().addMessageClientListener(messageClientListener);
                sinchClient.start();