SwiftアプリにNearby APIを設定していて、アプリがフォアグラウンドにあるときにメッセージを受け取ることができます。私は適切な場所にparams.allowInBackground = true
を含めるしようが、私はエラーを取得instructions in the docs 次のとおりです。Google iOSのバックグラウンドスキャンでの近くのAPI
Value of type 'GNSBeaconStrategyParams' has no member 'allowInBackground'
だから、私はそれを行うことはできませんし、私のGNSSubscriptionオブジェクトは、次のようになります。
subscription = messageManager.subscriptionWithMessageFoundHandler(
messageFoundHandler, messageLostHandler: messageLostHandler,
paramsBlock: { (params: GNSSubscriptionParams!) in
params.deviceTypesToDiscover = .BLEBeacon
params.permissionRequestHandler = { (permissionHandler: GNSPermissionHandler!) in
// TODO: Show custom dialog here, and call permissionHandler after it is dismissed
// show the dialogue
}
params.beaconStrategy = GNSBeaconStrategy(paramsBlock: { (params: GNSBeaconStrategyParams!) in
params.includeIBeacons = true
//params.allowInBackground = true //*** THIS DOESN'T WORK ***
})
})
マイmessageHandlers
この設定と範囲内のエッジストーンビーコンを使用すると、バックグラウンドで通知が表示されます。これが私が欲しいものなので、私は幸せになるはずです。私はこのようなメッセージの流れを見始めるバックグラウンドでアプリをXcodeのために接続されたデバイスを残す場合は、(およそ5秒ごとのようです):
2016-07-23 19:35:08.243 Hoc[1269:622746] Can't endBackgroundTask: no background task exists with identifier 2f3, or it may have already been ended. Break in UIApplicationEndBackgroundTaskError() to debug.
私は、v0.10.0を使用しています近くのメッセージの誰かが正しい方向に私を向けることができれば、iOS上でバックグラウンドスキャンが確実にうまくいくようになるでしょう。
James、あなたはもともとPodfileで何を持っていましたか? 'pod 'NearbyMessages'、 '〜> 0.10.0' 'を持っていれば、バックグラウンドをサポートする最新のCocoaPodを入手することはできません。 'pod 'NearbyMessages'、 '〜> 1.0.1''を使うことで、1.0バージョンへのバグ修正のアップデートを得ることができますが、それが出てくるとバージョン1.1を得ることはできません。 –
ありがとう@DanWebb私はもともと、バージョン番号なしで 'pod 'NearbyMessages''しか持っていませんでした。更新を得るために変更しますが、私のcocoapod/git setupで変なことが起こっているので、とにかくそれらを取得しないかもしれません。ありがとう – James