首页 > 解决方案 > Google Nearby 连接 - 无法在 2 个设备之间传输大字节

问题描述

当我尝试将具有多个图像的对象(使用 Base64 转换为字符串)作为 STREAM 类型发送时,从 onPayloadTransferUpdate() 方法中,我可以看到“失败”结果并且设备(仅在连接 2 个设备时测试)后自动断开连接那。Google Nearby 连接不是发送大字节的正确选择吗?

标签: streamgoogle-nearby

解决方案


附近的连接应该能够处理。STREAM 有效负载没有明确的大小限制。

我建议对字节进行分块(例如,一次发送几个 KB),看看是否有帮助。当您一次发送整个文件时,您可能会遇到奇怪的情况,因为它将字节两次加载到内存中(一次在您的应用程序中,一次在附近进程中),这可能会导致内存不足错误。Binder,Android 上的进程间通信层,也有一个有限的缓冲区来在进程之间发送数据。

您还可以将其保存为临时文件并将其作为 FILE 有效负载发送,在这种情况下,我们将为您处理分块。

免责声明:我在附近的连接上工作。


推荐阅读