评估连接速度的最佳方法

2024-03-21

我正在开发一个应用程序,需要通过流媒体获取音乐文件以进行现场播放。

在请求歌曲 api 中,我可以指定带宽(例如:50kbps、100kbps、300、600 或 1 Mbps)。

带宽越大,获取文件的时间就越多。因为我不希望用户受到限制,所以我有多种选择来处理它:

  • 检测手机是否使用 3g、wifi 或 Edge,并为每种连接速度指定带宽。

  • 让用户决定他将获得的歌曲的质量:就像youtube(但用户不会是对计算了解很多的人:软件越简单,就越适合)

  • 有一种方法可以正确评估连接速度:就像获取文件一样,测量所花费的时间并设置带宽。

我知道如果用户断开 wifi,或者在街上使用 3g,连接速度可能会发生很大变化。问题是我无法在播放歌曲时更改带宽。

也许您有想要分享的经验?

谢谢你!


Facebook 为此发布了一个库:

https://github.com/facebook/network-connection-class https://github.com/facebook/network-connection-class

这在2011年不存在..

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

评估连接速度的最佳方法 的相关文章

随机推荐

  • Laravel 4 Blade 表单格式化(隐藏输入)

    我有一个 艺术家 资源 在演出路线页面上我有一个表格 我正在使用 Laravel Blade 语法 作为此表单的一部分 我尝试将页面 ID 发送到 Laravel 4 项目的后端 我这样做 Form hidden artist id nul
  • 如何更改 Crashlytics Beta 电子邮件邀请上的应用程序名称

    在 Crashlytics Beta 中 有人知道如何更改电子邮件邀请上的应用程序名称 在应用程序图标下 我的 iOS 发行版来自 Xcode 7 存档 通过 MacOS 上的 Twitter Fabric 菜单栏进行 Xcode 项目的名
  • 订购数据框的奇怪行为

    我有以下数据框 我想按第五列 距离 排序 当我尝试 df order lt df order df 5 我总是收到以下错误消息 Error in order df 5 unimplemented type list in orderVect
  • 当设备即将解锁时会调用哪个方法?

    我想知道在哪里 void unlock 或任何所谓的 当我们 slide to unlock on the LockScreen is 有人有想法吗 试试这些 iOS 4 5 SBAwayController void finishedUn
  • 我应该为每个环境变量使用 configMap 吗?

    我现在正在使用 helm 我的项目是这样的 值 yaml environmentVariables KEY1 VALUE1 KEY2 VALUE2 配置映射 yaml apiVersion v1 kind ConfigMap metadat
  • //什么是路径,它与/有什么不同

    我们知道根目录是 根据posix 还有另一个与 不同的目录 当您 ls 和 ls 时 输出是相同的 就像 stat 一样 但是如果您 cd 和 cd 它们是不同的 尽管目录内容相同 这真的让我很困惑 有人得到答案吗 From Bash FA
  • 当 CDK 定义时,是否可以在本地运行 AWS Step Functions?

    AWS Step Functions 可以使用以下命令在本地 Docker 环境中运行Step Functions 本地 Docker https docs aws amazon com step functions latest dg s
  • Firebug Net 选项卡中报告的读取时间

    请参阅 Firebug 的 网络 选项卡中的屏幕截图 http www scdi org avernet try firefox times png http www scdi org avernet try firefox times p
  • LOCAL_MODULE_TAGS有什么用?

    我想更新包中的 Android mk 文件以构建新包 但我不明白该文件的目的是什么LOCAL MODULE TAGS is 什么是LOCAL MODULE TAGS do 更正 不再建议使用用户标签 反而 Add LOCAL MODULE
  • gitlab - 图标被矩形替换

    我最近安装了 gitlab 似乎所有图标都被矩形替换了 其他一切似乎都工作正常 知道是什么原因造成的吗 edit on another computer I seem to get Korean characters instead of
  • Ruby on Rails 实时搜索(过滤)

    我正在关注 Railscasts Rails ajax 教程并遇到了一些麻烦 实时搜索不起作用 我必须单击搜索按钮才能获取结果 我有两个搜索过滤器 第一个是 select tag 第二个是一个复选框 这是我的代码 结果 html erb t
  • 默认启动项目由什么决定?

    我有一个包含 Visual Studio 项目文件的开源项目 有一个包含四个项目文件的解决方案文件 当源文件被分发和解压时 Visual Studio 选择错误的项目作为默认项目 新用户不知道他们需要右键单击某个项目 然后选择设置为启动项目
  • Kendo Grid 导出到 Excel 时出错“无法读取 jQuery.js 文件中未定义的属性‘长度’”

    我正在尝试将剑道网格导出到 Excel 然后我在控制台中出现错误 如果有人知道的话请帮助我 提前致谢 angular js 13920 TypeError Cannot read property length of undefined a
  • 向我的免费 G​​itHub 帐户添加协作者?

    我创建了一个 GitHub 帐户 我想授予某人写入权限 以便他可以像我一样进行推送 有没有办法通过免费计划添加协作者 如果没有 我能做什么 除了购买付费帐户 这是我将来会做的 Go to Manage Access设置下的页面 https
  • 如何将旧式 Windows 图元文件写入文件

    我可以生成旧的 未增强的 图元文件 如何将其写入磁盘 使其成为正确的 wmf 文件 佩措尔德没有提到这一点 http www user tu chemnitz de heha petzold ch18b htm 但是将图元文件写入磁盘有一个
  • PHP 比较字符串是否(几乎)相等

    我需要比较可以用多种方式书写的名称 例如 像 St Thomas 这样的名字有时会写成 St Thomas 或 Sant Thomas 最好 我希望构建一个函数 为比较提供 平等 的百分比 就像一些论坛所做的那样 这篇文章已编辑 5 例如
  • 如何从应用程序后台录制视频:Android

    我正在开发一个应用程序 它将能够通过使用从应用程序后台录制视频Service 问题描述 1 我创建了一个活动来启动服务 如下所示 package com android camerarecorder import android app A
  • 由于缩放问题,响应式网站无法正确显示水平线

    我正在使用CSS向网站添加响应式功能 该网站已经属于他们一段时间了 现在正在添加响应式功能 以便它可以支持移动版本 我面临一个问题 假设有多行由水平线分隔 在某个地方我正在使用hr在某些地方我只是简单地使用div to 这是小提琴的示例链接
  • 在 ASP:Repeater 中查找控件

    我正在尝试访问中继器内的控件 该控件位于 标记内 我正在使用 FindControl 但它总是显示为 Null 我究竟做错了什么 我的猜测是 FindControl 只能用于记录级事件 例如 ItemDataBound protected
  • 评估连接速度的最佳方法

    我正在开发一个应用程序 需要通过流媒体获取音乐文件以进行现场播放 在请求歌曲 api 中 我可以指定带宽 例如 50kbps 100kbps 300 600 或 1 Mbps 带宽越大 获取文件的时间就越多 因为我不希望用户受到限制 所以我