iBeacon应用程序在2个不同的iPhone上表现不同

时间:2015-11-06 02:16:10

标签: ios swift ibeacon

另一个灯塔问题。

我从亚马逊购买了10美元的灯塔用于测试和实验目的。 我在iOS swift中开发了一个基于距离的应用程序,它在屏幕上显示一条消息

func updateDistance(distance: CLProximity) {
    UIView.animateWithDuration(1.0) { [unowned self] in
        switch distance {
        case .Unknown:
            self.view.backgroundColor = UIColor.grayColor()
            self.distanceReading.text = "No Beacon Signal Detected"

        case .Far:
            self.view.backgroundColor = UIColor.redColor()
            self.distanceReading.text = "Weak Beacon Signal Detected"

        case .Near:
            self.view.backgroundColor = UIColor.yellowColor()
            self.distanceReading.text = "Medium Beacon Signal Detected"

        case .Immediate:
            self.view.backgroundColor = UIColor.greenColor()
            self.distanceReading.text = "Strong Beacon Signal Detected"
        }
    }
}

我在2台不同的iPhone上运行相同的应用程序。一个是iphone 6软件版本8.4.1,另一个是iPhone 5S软件版本8.4.1。

两个iphone都在相同的距离给我2个不同的读数。例如,当iPhone6显示"检测到强信标信号时#34; iphone 5s显示中等信号"。此外,当iphone 5S显示"没有检测到信标信号" iPhone 6仍显示"另一个15到20英尺的弱信号。 iPhone 5s有时会在一秒左右的时间内丢失信号。

所以我的问题是,两部手机的行为都不一样吗?

1 个答案:

答案 0 :(得分:2)

iBeacons的距离值是相对的,因此变得非常无用。它使用无线电信号强度来估计到信标的距离,无线电信号强度受到几乎无限数量的变量的影响。

其中一个变量是您用来测量信号的手机上的天线增益。我不希望2台新一代手机的结果与你报道的完全不同。

听起来你5s的蓝牙接收器可能是“狡猾的”。

你是否“裸体”使用它们? (不是在一个案例中)并在角落里抱着它们?像盒子一样,手机握持方式会影响信号强度,荧光灯和信号阻挡以及附近物体的回声等干扰也会影响信号强度。