gpt4 book ai didi

ios - 在 Objective-C 中使用 RSSI 每秒查找最近的信标

转载 作者:行者123 更新时间:2023-11-29 05:38:14 25 4
gpt4 key购买 nike

在 Stack Overflow 中,我看到了找到最近信标的答案 ( Swift find closest Beacon by rssi )。

在这里,我尝试准确地找到最接近的 Objective-C。我的应用程序每秒都会发现时间准确性无法正确找到最接近的信标。正如他所说,RSSI 每 1 秒更新一次。所以我想使用 RSSI 过滤最近的信标。我将您的 Swift 代码转换为 Objective-C,但它运行不正常。

这是 Swift 代码:

//Swift code
var closestBeacon: CLBeacon? = nil
for beacon in beacons {
if beacon.rssi < 0 && closestBeacon != nil && beacon.rssi > closestBeacon!.rssi {
closestBeacon = beacon as? CLBeacon
}
}

这是我转换后无法正常工作的 Objective-C 代码:

CLBeacon *closest = nil;

for (CLBeacon *beacon in beacons) {

if (beacon.rssi < 0 && closest != nil && beacon.rssi > closest.rssi) {

closest = beacon;

}
}

请让我完善我做错的地方。

最佳答案

正如 @paulw11 所建议的,两个版本的代码都存在错误。因为我在回答另一个问题时写了这个错误,所以这里是一个修复:

swift

var closestBeacon: CLBeacon? = nil
for beacon in beacons {
if closestBeacon == nil || beacon.rssi < 0 && beacon.rssi > closestBeacon!.rssi {
closestBeacon = beacon as? CLBeacon
}
}

objective-c

CLBeacon *closestBeacon = nil;

for (CLBeacon *beacon in beacons) {

if (closestBeacon == nil || beacon.rssi < 0 && beacon.rssi > closest.rssi) {

closestBeacon = beacon;

}
}

我也修复了原始帖子中的错误。

关于ios - 在 Objective-C 中使用 RSSI 每秒查找最近的信标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56815969/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com