有没有办法在Ionic 3中检测网络速度或强度?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有没有办法在Ionic 3中检测网络速度或强度?相关的知识,希望对你有一定的参考价值。

我有一个在服务器上有很多http请求的Ionic 3应用程序。我还想根据他/她的连接来检测用户连接的速度或速度。

例如,在Spotify和Messenger App中,他们可以检测到用户的慢速连接。

我尝试使用ionic/network但是uplinkMax属性总是返回null。在浏览器和android设备上测试过。

这是下面的代码。

async initializeApp() {
 await this.platform.ready()
  console.log(this.network.downlinkMax) // always returns null
}

我也试过这个solution,但如果网络速度太快,这并不能准确衡量速度,并且由于另一个请求,它也可能影响应用程序的性能。

还有其他想法吗?

感谢有人可以提供帮助。提前致谢。

答案

文档说你必须在提出请求之前等待

尝试这样的事情

this.network.onConnect().subscribe(() => {
  console.log('network connected!');
  setTimeout(() => {
      console.log(this.network.downlinkMax);
  }, 3000);
});

以上是关于有没有办法在Ionic 3中检测网络速度或强度?的主要内容,如果未能解决你的问题,请参考以下文章