2017-02-17 7 views
0

私は近くのビーコンを監視できるswift 3.0でIOSアプリケーションを実装しています。私はdidRangeBeacon機能に関連する問題を有していて、詳細は以下の手順を再現:didRangeBeaconsはビーコンがオフの場合でも呼び出されます

1-アプリケーション

2-ビーコンがdidRangeBeacon関数が依然として呼び出され、次の10秒間で

3-オフされるビーコン領域に入りましたレスポンスにはまだ1つのビーコンオブジェクトがあります。

私はビーコンがすぐにオフであることを認識できません。ビーコンがすぐにオフであることを私はどのように認識できますか?

答えて

2

iBeaconの場合、エリアは1つ以上のビーコンの範囲によって定義されます。これにより、通常のジオフェンシングよりも細かく精度が向上します。後者は、セルタワー、WiFi、GPSからの信号のミックスに基づいています。ビーコンジオフェンスの応答性も向上します。「入力」イベントは通常、トリガーに数秒かかり、イベントは「終了」します。 (CLLocationManagerのドキュメントによると、通常のジオフェンスでは平均3〜5分かかる)

"enter"イベントをテストすることは、あなたがその領域の外にいることを確認することを含む。 「フリップ・スリープ」を有効にすると、範囲外に出ることを簡単にシミュレートできます。 「終了」イベントは最大30秒かかりますが、「入力」イベントは数秒でトリガーになります。

地域の監視がかなり遅いので、より一般的な通知で使用することができます。この信号強度を使用して、ビーコンが見えなくなったかどうかを判断できます(CoreLocationは、消滅してから数秒後にもビーコンが見える傾向があります)。