【问题标题】:APIs are not responding fast is APP is using Multipeer Connectivity frameworkAPI 没有快速响应是 APP 正在使用 Multipeer Connectivity 框架
【发布时间】:2016-10-14 20:55:32
【问题描述】:

我在我的 APP 中使用 Multipeer Connectivity Framework,它工作得非常好,但是当 APP 调用任何 API 或从服务器下载任何文件时,它会延迟响应。有时它会失败,有时我会收到超时错误。

我还在 xCode 调试导航器上检查了“网络”状态,发现速度会立即上升和下降,并且永远不会超过 6kb/s,有时它会显示为 0 kb/s,但是当我禁用 Multipeer Connectivity 时它可以工作很好,速度也可以达到 70kb/s。

我还注意到,如果蓝牙是开启的,那么它不会发生在 Wifi 上。

任何建议都将是非常可观的。

【问题讨论】:

    标签: ios api afnetworking multipeer-connectivity


    【解决方案1】:

    发生这种情况是因为在做广告时,Multipeer 总是在 wifi 上做广告(没有办法只说蓝牙)。它的广告方式是每秒多次将 wifi 访问模式切换为 adhoc 以查找其他对等方,然后切换回 AP 模式(即恢复其与您的 wifi 路由器的连接)。这样做会对大额传输造成极大破坏

    您有两种选择来解决此问题:

    1) 建立联系后,请尽快致电stopAdvertising()。这将阻止 wifi 模式不断变化,您的吞吐量将恢复到正常速率。警告:您不能对此进行微观管理,因为调用stopAdvertising()后最多需要30秒才能生效

    2) 从 Multipeer 切换到允许您指定仅蓝牙且仅使用蓝牙的替代框架。我写了一个名为BluePeer 的应用程序。它是单播(不是多播)并且支持像客户端/服务器这样的角色(以及像 Multipeer 这样的无角色)

    【讨论】:

      猜你喜欢
      • 2013-10-18
      • 2016-01-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-27
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多