获取Beacon Battery Level / Proximity并传​​递给URL

时间:2014-04-25 22:24:50

标签: ios objective-c ibeacon estimote

我有一个与我的iOS应用程序连接的Estimote信标。我成功地传递了主要ID和次要ID等参数,但我也希望获得电池电量和接近度,并在URL中传递它们。

我已经阅读了文档,似乎有一种方法可以做到这一点,但我还没有弄清楚如何将其写入此方法。任何想法都会非常有帮助!

-(void)beaconManager:(ESTBeaconManager *)manager didRangeBeacons:(NSArray *)beacons 
inRegion:(ESTBeaconRegion *)region {
    if([beacons count] > 0) {
        if(!self.selectedBeacon) {
            self.selectedBeacon = [beacons objectAtIndex:0];
        }
        else {
            for (ESTBeacon* cBeacon in beacons) {
                if([self.selectedBeacon.ibeacon.major unsignedShortValue] == 
                [cBeacon.ibeacon.major unsignedShortValue] &&
                   [self.selectedBeacon.ibeacon.minor unsignedShortValue] == 
                   [cBeacon.ibeacon.minor unsignedShortValue])
                {
                    self.selectedBeacon = cBeacon;
                }
            }
        }
        NSString *connectedToBeacon = [[NSUserDefaults standardUserDefaults] 
        stringForKey:@"connectedToBeacon"];

        if ([connectedToBeacon isEqualToString:@"FALSE"]) {
            NSString *userId = [[NSUserDefaults standardUserDefaults]
                                stringForKey:@"userId"];
            NSString *beaconURL = [NSString stringWithFormat:@"%@/directory/page.php?
            major=%i&minor=%i&user=%@", curr_host_variable,
            [self.selectedBeacon.ibeacon.major unsignedShortValue], 
            [self.selectedBeacon.ibeacon.minor unsignedShortValue], userId];

            NSData *BeaconURLResult = [NSData dataWithContentsOfURL:[NSURL 
            URLWithString:beaconURL]];   
        }  
    }
}

1 个答案:

答案 0 :(得分:0)

这是Wojtek Borowicz,我是Estimote的社区传播者。

您应该可以在此处找到您正在寻找的信息:http://estimote.github.io/iOS-SDK/Classes/ESTBeacon.html#//api/name/readBeaconBatteryWithCompletion:请注意,我们很快就会更改从我们的SDK获取电池电量的选项,因为我们和#39;将引入对此参数的计算方式的更改。

干杯。