2014-10-05 130 views
0

我正在开发一款IOS应用程序,使用iBeacon监控和测距。该应用程序运行在IOS8的全新安装的iPad上,并且没有安装其他应用程序。通知的前台和后台监视功能非常好。测距也很好。但是,重新启动后,应用程序在检测到信标时不会收到回调。我确实启用了所需的背景模式。我为本地通知添加了回调,例如AppDelegate中的didEnterRegion,didExitRegion,didDetermineState。在重新启动后以及有活动信标时,这些都不会被调用。iOS8 iBeacon设备重启后的监控

但是,安装与原始应用程序一起以不同名称重新打包的同一应用程序会产生不同的结果。重启后大约4分钟,我开始接收来自这两个应用程序的通知。

如果我删除了两个应用程序中的一个,我最终会遇到在重新启动后没有收到回调的原始问题。请记住两者都使用相同的代码。

我一直在挠头,现在我想知道这种行为是否可以通过新安装的IOS在其他地方得到证实,只需安装一个启用iBeacon的应用程序即可。

回答

0

的一点想法:

  1. 尝试用类似Locate已知的工作灯塔参考应用程序重复你的测试。如果您在此重现问题,则可能是操作系统问题的硬件。

  2. 重新启动前关闭信标,重启后约四分钟将其重新开启,然后等待15分钟以便您的应用程序检测到。根据iPad型号的使用年限,后台的检测速度可能较慢。

  3. 如果Locate正常工作,但您的应用程序甚至在15分钟后仍未发布,请发布代码的简化版本以重现问题。

+0

在干净的IOS8安装。我只安装了Locate。重启后,等待5分钟,打开信标灯,等待30分钟。没有任何通知让我知道进入/退出某个地区的情况。 然后我用Locate安装了我的应用程序。重启后,等待5分钟,打开信标。我确实收到了这两个应用程序的通知 我在原帖中没有提到的是我测试了这个过程,其中包括网络上发现的多个信标演示,包括来自半径网络的其他信号演示。我能找到的结果都一样。 – dm82 2014-10-05 16:00:40