Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.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
Swift iOS无法正确检测PIS信号_Swift_Bluetooth Lowenergy_Ibeacon_Eddystone_Bluegiga - Fatal编程技术网

Swift iOS无法正确检测PIS信号

Swift iOS无法正确检测PIS信号,swift,bluetooth-lowenergy,ibeacon,eddystone,bluegiga,Swift,Bluetooth Lowenergy,Ibeacon,Eddystone,Bluegiga,我将我的raspberry pi转为ibeacon发射机,但我的iPhone无法检测到我的pibeacon信号进行测距,例如,它无法在距离pibeacon很近的时候发出(推送通知)。但是,我的手机可以与其他类型的USB信标(如Bluegiga和Radbeacon)正常工作。有人曾经遇到过同样的问题吗?iOS设备不会检测iBeacons数据包,除非将信标数据包的ProximityUID预先配置到正在搜索它们的iOS应用程序中。根据问题中显示的命令,配置Pi的ProximityUID为43F2ACD

我将我的raspberry pi转为ibeacon发射机,但我的iPhone无法检测到我的pibeacon信号进行测距,例如,它无法在距离pibeacon很近的时候发出(推送通知)。但是,我的手机可以与其他类型的USB信标(如Bluegiga和Radbeacon)正常工作。有人曾经遇到过同样的问题吗?

iOS设备不会检测iBeacons数据包,除非将信标数据包的ProximityUID预先配置到正在搜索它们的iOS应用程序中。根据问题中显示的命令,配置Pi的ProximityUID为43F2ACD1-5522-4E0D-9E3F-4A828EA12C25

可能只是您尝试将其检测为iBeacon数据包的iOS应用程序没有预先配置为查找上述ProximityUID

iOS上的非信标应用程序可以看到Pi的广告,因此非信标应用程序检测到它的事实仍然意味着这就是问题所在

如果您成功使用信标应用程序检测雷达信标,它可能会检测到默认的雷达信标接近UUID 2F234454-CF6D-4A0F-ADF2-F4911BA9FFA6。如果您的应用程序可以检测到,请尝试将其配置到Raspberry Pi start advertising命令中,如下所示:

sudo hciconfig hci0 up sudo hciconfig hci0 leadv 3 sudo hcitool -i hci0 cmd 0x08 0x0008 1E 02 01 1A 1A FF 4C 00 02 15 2F 23 44 54 CF 6D 4A 0F AD F2 F4 91 1B A9 FF A6 00 00 00 00 C8

iOS设备不会检测iBeacons数据包,除非将信标数据包的ProximityUID预先配置到正在搜索它们的iOS应用程序中。根据问题中显示的命令,配置Pi的ProximityUID为43F2ACD1-5522-4E0D-9E3F-4A828EA12C25

可能只是您尝试将其检测为iBeacon数据包的iOS应用程序没有预先配置为查找上述ProximityUID

iOS上的非信标应用程序可以看到Pi的广告,因此非信标应用程序检测到它的事实仍然意味着这就是问题所在

如果您成功使用信标应用程序检测雷达信标,它可能会检测到默认的雷达信标接近UUID 2F234454-CF6D-4A0F-ADF2-F4911BA9FFA6。如果您的应用程序可以检测到,请尝试将其配置到Raspberry Pi start advertising命令中,如下所示:

sudo hciconfig hci0 up sudo hciconfig hci0 leadv 3 sudo hcitool -i hci0 cmd 0x08 0x0008 1E 02 01 1A 1A FF 4C 00 02 15 2F 23 44 54 CF 6D 4A 0F AD F2 F4 91 1B A9 FF A6 00 00 00 00 C8

显然,Pi传输的格式有问题,以至于iOS设备无法将其识别为iBeacon数据包。您需要提供更多有关发射机正在执行的操作的信息(如果有的话,请提供post code)。我的BLE设备应用程序可以检测到它,当它进入其区域(确实进入了区域)时,它们也可以检测到它,但当涉及到测距时,当处于特定距离范围内时,它无法将通知推送到应用程序,而同一应用程序可以检测到其他ibeacons范围。我正在使用此代码开始传输和使用Bluez.sudo hciconfig hci0 up sudo hciconfig hci0 leadv 3 sudo hci0 cmd 0x08 0x0008 1E 02 01 1A FF 4C 00 02 15 43 F2 AC D1 55 22 4E 0D 9E 3F 4A 82 8E A1 2C 25 00 00 00 00 C8您是否开始使用
sudo hciconfig hci0 leadv 0
做广告?您是如何在iOS上进行检测的?您是在编写自己的代码还是在使用应用程序?如果您使用自己的代码,请说明如何设置信标区域。我从sudo hciconfig hci0 leadv 3开始。不,我使用不同的应用程序扫描BLE,所有这些应用程序都可以检测到我的信标的RSSI和距离,但当涉及到测距时,它无法作为其他信标检测到,我不知道那是因为树莓pi信号问题,也许?不知道为什么会出现问题,我看到的信号很强,一切看起来都很好,不知道这是不是与每秒广告包有关的问题?!显然,Pi传输的格式有问题,以至于iOS设备无法将其识别为iBeacon数据包。您需要提供更多有关发射机正在执行的操作的信息(如果有的话,请提供post code)。我的BLE设备应用程序可以检测到它,当它进入其区域(确实进入了区域)时,它们也可以检测到它,但当涉及到测距时,当处于特定距离范围内时,它无法将通知推送到应用程序,而同一应用程序可以检测到其他ibeacons范围。我正在使用此代码开始传输和使用Bluez.sudo hciconfig hci0 up sudo hciconfig hci0 leadv 3 sudo hci0 cmd 0x08 0x0008 1E 02 01 1A FF 4C 00 02 15 43 F2 AC D1 55 22 4E 0D 9E 3F 4A 82 8E A1 2C 25 00 00 00 00 C8您是否开始使用
sudo hciconfig hci0 leadv 0
做广告?您是如何在iOS上进行检测的?您是在编写自己的代码还是在使用应用程序?如果您使用自己的代码,请说明如何设置信标区域。我从sudo hciconfig hci0 leadv 3开始。不,我使用不同的应用程序扫描BLE,所有这些应用程序都可以检测到我的信标的RSSI和距离,但当涉及到测距时,它无法作为其他信标检测到,我不知道那是因为树莓pi信号问题,也许?不知道为什么会出现问题,我看到的信号很强,一切看起来都很好,不知道这是不是与每秒广告包有关的问题?!还有一件事,是否有必要知道ios应用程序测距功能检测到的信标的次要和主要部分?或者我们只需要UUID,所以次要和主要对测距检测不重要?您只需要知道UUID。当您开始对监视信标进行测距时,您将构造一个
CLBeaconRegion
对象,它告诉操作系统要匹配哪个。uuid是必需的,但主要和次要是可选的。如果您将它们保留为零,它将匹配所有主、次或值。还有一件事,需要知道ios应用程序测距功能检测到的信标的主、次吗?或者我们只需要UUID,所以次要和主要对测距检测不重要?您只需要知道UUID。当您开始对监视信标进行测距时,您将构造一个
CLBeaconRegion
对象,它告诉操作系统要匹配哪个。uuid是必需的,但主要和次要是可选的