하나의 옵션은 Proximity Beacon API의 beaconinfo:getforobserved
방법을 사용하여 앱에서 알고있는 모든 표지에 대한 첨부 파일을 사전에 가져 오는 것입니다. 그 문서를 볼 수 있습니다 here.
앱은 알려진 각 신호에 대한 모든 첨부 정보를 얻기 위해 주기적으로 (예 : 인터넷 연결이 시작될 때 또는 시작할 때)이 호출을 할 수 있습니다. 메서드 호출에 대한 응답은 첨부 데이터가있는 BeaconInfo의 배열을 반환합니다. 그런 다음 응용 프로그램은 Firebase 또는 Eddystone 네임 스페이스 및 인스턴스 ID로 키가 지정된 다른 로컬 데이터 저장소에이 데이터를 저장할 수 있습니다.
분명히 앱이 작동하려면 모든 비컨 식별자를 알아야합니다. 웹 서비스 호출은 iOS 앱에서 API_KEY를 사용하여 만들 수 있습니다.
캐시에이 정보가 있으면 여전히 비콘 탐지을 기반으로 사용자에게 메시지를 보내도록 앱을 실행하는 방법이 필요합니다. 내가 아는 한, iOS 용 Nearby API는 첨부 파일 정보를 사용할 수없는 경우 오프라인으로 처리하지 않습니다. 평소와 같이 멋진 대답 (내가 기대하지 않았다 -
가
self.beaconScanner = [RNLBeaconScanner sharedBeaconScanner];
[self.beaconScanner startScanning];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didRangeBeacons:) name:@"didRangeBeacons" object:nil];
...
- (void) didRangeBeacons: (NSNotification *) notification {
NSArray *beacons = notification.userInfo[@"beacons"];
for (RNLBeacon *beacon in beacons) {
NSString *eddystoneNamespace = beacon.id1;
NSString *eddystoneInstance = beacon.id2;
// TODO: look up cached attachments for this beacon in data store
}
}
감사 데이비드 : 당신은 아직도 내가이와 함께 here.를 넣어 같은 아이폰 OS Eddystone 비콘 스캔 툴킷을 사용하여이 작업을 할 수 있습니다, 당신은 이런 식으로 뭔가를 할 수 당신은 이것이 Radius 플랫폼이 아닌 Google의 Nearby Messages API에 주로 관한 것이라는 점을 감안할 때 이것에 답할 것입니다 :-) 나는 후속 작업을 위해 이메일을 보낼 것입니다. – James