0

すべてのビーコンの範囲を調べて、最も近いビーコンを見つける方法に関する投稿を見つけました。私はそれをうまく機能させました。しかし今、私は複数のビーコンのグループに対して同じことをしたいと思っています. AltBeacon ライブラリでこれを行うには、リージョンが最適な方法であると想定しています。Apple/iBeacon の互換性については心配していません。

各部屋にビーコンのグループがある単純な家庭用ゾーニング システムの構築を検討しています。

Referenceアプリから作業しています。私は本当の開発者ではないので、私の努力は例に強く基づいています。私はJava構造についての手がかりがありません。いくつかのコード例を配置する場所を見つけるのは、私にとって困難でした。

今のところ、コードを didRangeBeaconsInRegion セクションに入れましたが、作成したすべての領域に対してトリガーされます (部屋ごとに 1 つ)。そのコード セクションを複数回実行して状態を追跡する方法がわかりません。

私の推測では、これにリージョンを使用できない場合、すべてのビーコンの状態を追跡し、上位のエントリに基づいて位置を判断するためのステータス「配列」とともに、ある種の位置配列が次善の選択肢であると思います。

ティア!

4

1 に答える 1

0

ホーム アプリケーションでは、通常、すべてのビーコンではないにしても、ほとんどのビーコンが常に範囲内にあります。ビーコンを複数の地域に編成しても、モバイル デバイスはビーコンがすべての地域にあることを同時に報告するため、地域はおそらくあまり役​​に立ちません。

私なら、各ビーコンの 3 番目のビーコン識別子 (ID3 または「マイナー」) を各部屋で同じ値に設定します。(例: キッチンに 1 つ、リビングルームに 2 つなど)。次に、すべてのビーコンに一致する単一のリージョンのみを使用します。

測距コールバックで、各ビーコンの距離フィールドを比較して、どのビーコンが最も近いかを見つけます。(最も低いものが最も近いです。) 最後に、最も近いビーコンの ID2 値を見て、自分がどの部屋にいるのかを判断します。

于 2015-01-14T04:01:41.343 に答える