gpt4 book ai didi

ios - iBeacon监控实现ios7.1

转载 作者:行者123 更新时间:2023-11-29 12:50:55 25 4
gpt4 key购买 nike

我对 iBeacon 监控实现有疑问。当调用 locationManager:didDetermineState:forRegion: 方法时,我会触发本地通知。当应用程序进入后台时,我根本没有收到任何本地通知,但是当我按下主页按钮激活屏幕时,它们会立即全部出现。根据我离开 sleep 设备的时间,当我唤醒它时,我总是可以获得数十个通知。这怎么可能?有人遇到过同样的问题吗?

我使用装有 iOS 7.1 的 iPhone 5S 和 5C。本地通知是这样设置的:

- (void)locationManager:(CLLocationManager *)manager didDetermineState:(CLRegionState)state forRegion:(CLRegion *)region{

UILocalNotification *localNot = [[UILocalNotification alloc] init];
localNot.alertBody = [NSString stringWithFormat:@"Region state %d determined", state];
localNot.alertAction = @"Go for it!";
localNot.soundName = UILocalNotificationDefaultSoundName;
localNot.fireDate = nil;

[[UIApplication sharedApplication] presentLocalNotificationNow:localNot];
}

最佳答案

我怀疑您实际上根本没有进行任何背景检测,您在按下主页按钮时看到通知的原因是因为您设置了 notifyEntryStateOnDisplay 标志,这会导致您每当屏幕出现时,针对您正在监视并设置标志的每个区域,获得对 didDetermineState: forRegion: 的额外回调。

为什么在后台收不到回调?您可能需要等待长达 15 分钟才能在后台检测到 iBeacon,即使在 iOS 7.1 上也是如此。参见 here .

关于ios - iBeacon监控实现ios7.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22461036/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com