Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/116.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在iPhone X iOS Swift上测量WiFi dBm强度_Ios_Swift_Wifi_Iphone X_Dbm - Fatal编程技术网

如何在iPhone X iOS Swift上测量WiFi dBm强度

如何在iPhone X iOS Swift上测量WiFi dBm强度,ios,swift,wifi,iphone-x,dbm,Ios,Swift,Wifi,Iphone X,Dbm,我正在寻找获取wifi原始信号的方法,即iPhone X手机上的dBm,但只能从以下位置获取numberOfActiveBars: 尝试@Mosbash答案,结果崩溃了 线程1:EXC\u BAD\u访问(代码=1,地址=0x18)代码: class ViewController: UIViewController { var hotspot: NEHotspotNetwork! func viewDidLoad() { .... hotspot = NEHotspotN

我正在寻找获取wifi原始信号的方法,即iPhone X手机上的dBm,但只能从以下位置获取
numberOfActiveBars

尝试@Mosbash答案,结果崩溃了

线程1:EXC\u BAD\u访问(代码=1,地址=0x18)
代码:

class ViewController: UIViewController {

  var hotspot: NEHotspotNetwork!

  func viewDidLoad() {
   ....
   hotspot = NEHotspotNetwork()
  }

  func record() {
    hotspot.setConfidence(.high) /// <- Crash
    print(hotspot.signalStrength) /// <- Crash if above line is commented out
  }
}
类ViewController:UIViewController{
var热点:nehospotnetwork!
func viewDidLoad(){
....
热点=nehospotnetwork()
}
func记录(){

setConfidence(.high)//您可以使用NEHotspotNetwork的信号强度,如下所述

当热点助手应用程序被要求评估网络或 过滤Wi-Fi扫描列表,它会注释网络对象 通过setConfidence:方法

以下是将Wifi信号强度百分比转换为RSSI dBm的公式:

quality = 2 * (dBm + 100)  where dBm: [-100 to -50]

dBm = (quality / 2) - 100  where quality: [0 to 100]
有关更多详细信息,请参阅此答案:

您可以使用NEHotspotNetwork的信号强度,如下所述

当热点助手应用程序被要求评估网络或 过滤Wi-Fi扫描列表,它会注释网络对象 通过setConfidence:方法

以下是将Wifi信号强度百分比转换为RSSI dBm的公式:

quality = 2 * (dBm + 100)  where dBm: [-100 to -50]

dBm = (quality / 2) - 100  where quality: [0 to 100]
有关更多详细信息,请参阅此答案:

您需要获得Apple的许可并创建授权。

您需要获得Apple的许可并创建授权。

这将为您提供介于0.0(弱/无信号)到1.0(强信号)范围内的值。这不是dBm,它的范围在-20到-90之间。谢谢。我试图设置HotSpot helper,但出现了一个故障,手机没有使用金属。有什么想法吗?你能分享你的代码和故障堆栈跟踪吗?这会给你一个介于0.0(弱/无信号)到1.0(强信号)之间的值。这不是dBm,它的范围在-20到-90之间。谢谢。我试图设置HotSpot helper,但手机没有使用金属。有什么想法吗?你能分享你的代码和崩溃堆栈跟踪吗?任何想知道“Apple许可”的人,请参阅Apple文档:任何想知道的人“苹果许可”,请参阅苹果文档: