2017-10-17 7 views
0

Eddystoneビーコンの近くにあるたびにRESTサービスを呼び出すアプリを書く必要があります。 ターゲットはiOS 9以上で、Swiftに書き込みます。アプリが強制終了/中断されたときにiOSデバイスがEddystoneビーコンを検出することはできますか?

これまでのところ、アプリがフォアグラウンドにあるときとアプリがバックグラウンドに数時間いるときに、ビーコンからの広告にアプリが応答するようにしました。 その後、アプリがバックグラウンドになってから数時間後に何も起こりません。

私は、そのアプリケーションがOSによって殺されたか、または中断されている可能性があります。

私が試した最初のことは、CLLocationManagerとCLBeaconRegionでジオフェンシングでした。 しかし、私は周りをグーグルで回った後、私はこれがiBeaconでしか動作しないことを知り、私のビーコンはEddystoneプロトコルを確実に使用します。

iBeacon上のジオフェンシングは、アプリケーションが(人間によってもOSによっても)殺されたとしても、「起きて」いるはずです。私はEddystoneビーコンと同様の動作をすることができますか?

私はないと思いますが、この場合には、私は決定的な答えが欲しい:)

おかげところで

、このdocのでiBeaconsについてのビーコンや他のいくつかの程度、時にはhttps://developer.apple.com/library/content/documentation/UserExperience/Conceptual/LocationAwarenessPG/RegionMonitoring/RegionMonitoring.html

会談を、これがiBeaconsにのみ適用されるかどうかは明らかではありません。

答えて

1

CLBeaconRegionオブジェクトを監視するときに、iOS CoreLocation APIを使用してビーコン検出時にバックグラウンドにアプリを起動することができます。 CoreLocationはiBeaconだけを検出するため、これはiBeaconでは有効であり、Eddystoneではなくで機能しません。

iOSでEddystoneを検出するには、この機能を提供していないCoreBluetooth APIを使用する必要があります。

EddystoneとiBeaconの両方をインターリーブするビーコンを使用するのが一般的です。 iBeaconを使用してアプリとEddystoneを起動し、さらに処理します。

+0

iBeaconだけがスリープ状態またはデッド状態から復帰することができるというAppleの公式ドキュメントを教えてください。上記の文書は、技術者でない人には少し曖昧です。私は顧客に提示する必要があります:) – zontar

+0

申し訳ありませんが、そのような文書は存在しません。 (残念ながら、Eddystone n AppleのドキュメントのようなGoogleの技術については、それが存在しないふりをするのが好きです。)しかし、この正確な問題については、Googleの設計エンジニアとリリース前にEddystoneプロジェクトを開始しました。私たちは、上記の解決策が、Eddystoneを使ってiOS上でバックグラウンドで立ち上げる方法であることに同意しました。 – davidgyoung

+0

ありがとう!!私はあなたの言葉をそれに服用します。 – zontar

関連する問題