0

ビーコンをスキャンするために、objective-c プロジェクト用に Google Nearby API をセットアップしました。

ビーコンの範囲内に移動すると、アプリはビーコンを正常に検出しますが、既に範囲内にいるときにアプリを起動すると機能しません。ビーコンから離れて戻る必要があります。

バックグラウンド スキャンは使用していません。私が使用するライブラリのバージョンは次のとおりです: 0.10.0

私のコードは次のとおりです。

[GNSMessageManager setDebugLoggingEnabled:YES];

_messageManager = [[GNSMessageManager alloc] initWithAPIKey:@"..."];

_beaconSubscription = [_messageManager subscriptionWithMessageFoundHandler:^(GNSMessage *message) {
    NSLog(@"beacon found: %@",message);
    ...
} messageLostHandler:^(GNSMessage *message) {
    NSLog(@"beacon lost: %@",message);
    ...
} paramsBlock:^(GNSSubscriptionParams *params) {
    params.deviceTypesToDiscover = kGNSDeviceBLEBeacon;
    params.beaconStrategy = [GNSBeaconStrategy strategyWithParamsBlock:^(GNSBeaconStrategyParams *params) {
        params.includeIBeacons = YES;
    }];
}];

コア ロケーション フレームワークのdidEnterRegion / didExitRegionメソッドはビーコン リージョンの境界を越えたときにのみ呼び出され、didDetermineStateメソッドを使用できることは知っていますが、NearbyAPI はこれらの内部でどのように機能し、どのようにアプリに検出させることができますか?それを使用して、ビーコンは起動時にすでに範囲内にありますか?

4

1 に答える 1