1

私は kontakt.io Eddystone ビーコンを持っており、ビーコンをスキャンするためのアプリを作成しようとしています。Android ビーコン ライブラリとバックグラウンド スキャンを使用しています。すべて問題なく、私のアプリは数秒でビーコンを見つけます。しかし、このマニュアルhttp://developer.android.com/training/monitoring-device-state/doze-standby.htmlを使用してDozeモードをシミュレートすると

検索には約 5 分かかります。数秒の時もあれば、5分の時もあります。

この記事では、Doze モードのコードを変更する必要はないと述べています。 http://developer.radiusnetworks.com/2015/09/29/is-your-beacon-app-ready-for-android-6.html

私は Android 6 の OnePlus One を持っています。

どこに問題があるのか​​教えてください。

4

1 に答える 1

0

バックグラウンドでは、Android ビーコン ライブラリは 2 つの手法を使用して、Android 5 以降でビーコンを見つけます。

  1. ハードウェア Bluetooth LE パケット フィルター。これらは、トリップした場合、数秒以内にアプリに警告します。

  2. 定期的な Bluetooth LE スキャンは、デフォルトでバックグラウンドで 5 分ごとに実行されます。これらは、上記のフィルターが失敗した場合のバックアップとして意図されています。

質問の説明は、ハードウェア フィルターがテストの条件下で動作していないことを示唆しています (One Plus、Android 6、Doze モード)。Nexus 9 などの Doze モードの他のデバイスでは、ハードウェア フィルターは Doze で動作することが知られています。モード。違いはファームウェア固有である可能性があります。つまり、異なる Android モデルでは動作が異なります。

ほとんどのアプリケーションでは、Doze モードでの迅速な検出は重要ではありません。このモードでは電話機は静止しており、新しい固定位置ビーコンに遭遇する可能性は低いためです。

于 2016-04-08T13:38:33.130 に答える