尝试发送有效负载时,为什么会引发STATUS_OUT_OF_ORDER_API_CALL?

时间:2019-04-03 18:40:39

标签: android google-nearby

我已成功建立连接({{1}中的STATUS_OK)后尝试从广告客户向发现者发送字节有效载荷,但出现onConnectionResult()错误(错误8009)。我该如何解决?

status codes的文档页面上,我知道应该首先调用一种方法,但我不是那种方法。

我在此问题上看到了"How to resolve STATUS_OUT_OF_ORDER_API_CALL error?"。接受的答案表明,如果在断开连接后尝试连接某人,则可能会收到错误消息。问题是当我第一次打开应用程序并尝试发送有效负载时,而我没有在STATUS_OUT_OF_ORDER_API_CALL中获得API_CONNECTION_FAILED_ALREADY_IN_USESTATUS_ALREADY_ADVERTISING状态代码。另外,该帖子与尝试请求连接时收到错误有关,而在我的情况下,广告客户和发现者都可以正常连接。

onConnectionResult()

奇怪的是,从第一个有效载荷开始,我尝试发送作品,但随后的有效载荷没有被发送。

错误消息:

if (isAdvertising) {
    Log.d(TAG, "send: advertising fine");
}

connectionsClient
    .sendPayload(endpointId, payload)
    .addOnFailureListener(e -> Log.w(TAG,
                 "(send payload) onFailure: " + failureMsg, e) )
    .addOnSuccessListener(aVoid -> Log.w(TAG,
                 "(send payload) onSuccess: " + successMsg));

1 个答案:

答案 0 :(得分:1)

免责声明:我在附近工作

在正常使用中不应出现此错误...这意味着我们已经失去了对您所使用策略的跟踪。这可能是因为您调用了stopAllEndpoints或以某种方式与我们的服务断开连接(注意:与从远程设备断开连接不一样)。或者可能是尝试混合搭配策略(例如CLUSTER,STAR,POINT_TO_POINT)的结果。

好消息是,此特定的错误情况在最近的提交中已被删除,并将很快推出到设备中。但是对于您如何使用它,我还是有些困惑。