草庐IT

didEnterRegion

全部标签

ios - iBeacon 案例 - 触发具有距离限制的 didEnterRegion

对于特定的业务案例,我想通过利用iBeacon技术来触发基于接近度的通知(推送或UILocalNotification)。这是为了在应用程序处于后台/锁定屏幕时工作。我有一些特定的限制:该产品必须在特定级别进行扩展,因此不可能涵盖20个区域。我们将仅使用一个UUID(如果我们开发一组新功能,可能是2或3个,但我们不会为每个物理信标注册一个区域)我们将使用major和minor来调用webservices关于这一点,我知道我将不得不使用以下方法:首先didEnterRegion:没有关于主要/次要/距离的先验信息,然后didRangeBeacon:执行更高级的操作。考虑到信标的快速发射率

ios - 以更大的半径调用 didEnterRegion (iOS)

我希望更精确地调用didEnterRegion,但我做不到。这是我所做的:我使用了distanceFilter和desiredAccuracy的最佳值(根据Apple的最精确的GPS设置)并且有一个目的地CLCircularRegion(CLRegion的子类)。self.locationManager.distanceFilter=kCLLocationAccuracyBestForNavigation;self.locationManager.desiredAccuracy=kCLLocationAccuracyBestForNavigation;@property(nonatom

ios - didEnterRegion 中的 iBeacon major 和 minor 值

我正在尝试访问didEnterRegion委托(delegate)中最近的信标的主要值和次要值。但是,当将值打印到控制台时,它们返回null-(void)locationManager:(CLLocationManager*)managerdidEnterRegion:(CLRegion*)region{if([regionisKindOfClass:[CLBeaconRegionclass]]){CLBeaconRegion*beaconRegion=(CLBeaconRegion*)region;intmajor=[beaconRegion.majorintValue];intmi

ios - 如果应用程序在区域内启动,startMonitoringForRegion 不会调用 didEnterRegion

我遇到一个问题,如果我在区域内启动应用程序,我的应用程序将不会触发didEnterRegion事件。如果我在区域外启动应用程序然后进入该区域,它会触发。如果我在区域内启动应用程序,然后离开该区域,然后重新进入该区域,它会触发。如有任何关于如何在应用程序打开时立即启动它的建议(如果它在该地区),我们将不胜感激! 最佳答案 我建议你使用这段代码[locationManagerrequestStateForRegion:region];并使用委托(delegate)方法didDetermineState:检查状态是CLRegionStat

ios - iBeacon - 当应用程序在区域中启动时没有调用 didEnterRegion

我制作了一个注册信标区域并使用CLLocationManager开始监控这些区域的应用CLLocationManager*manager=[[CLLocationManageralloc]init];manager.delegate=self;CLBeaconRegion*region=[[CLBeaconRegionalloc]initWithProximityUUID:estimoteUUIDmajor:12445identifier:@"id"];region.notifyEntryStateOnDisplay=YES;region.notifyOnEntry=YES;[mana

ios - didEnterRegion 在前台工作但不在后台或其他 VC

如果应用程序正在运行并且CLLocationManagerDelegate类是前景(即可见),那么didEnterRegions会触发,我会同时获得NSLog和AlertView。但是,当应用程序在后台运行时,或者本质上,如果屏幕只显示委托(delegate)类,我什么也得不到。我已经在plist的“Requiredbackgroundmodes”下设置了“Appregistersforlocationupdates”,尽管我不确定这是否必要。这是我认为的相关代码,尽管我可能是错的(并且很乐意添加更多)。我应该注意到,viewDidLoad中的所有内容都包含在一个if中,它检查区域监控

ios - 如果我的应用程序处于终止状态,iOS 区域监控会在我的应用程序上调用 didEnterRegion 吗?

如果用户进入在应用程序终止之前已成功监控的区域,iOS区域监控是否会在后台启动我的应用程序?我知道重大更改API会这样做,并且会在启动时通过包含UIApplicationLaunchOptionsLocationKey键让我知道。如果区域监控也能将我的应用程序从终止状态唤醒,那么启动过程会是什么样子?是否有我应该寻找的特殊key? 最佳答案 是的,参见RegionMonitoringIniOS,regionsassociatedwithyourapparetrackedatalltimes,includingwhenyourappi

ios - iBeacon - 可以使用 startRangingBeacons 进行检测,但不能用于 didEnterRegion

我需要检测设备何时进入或离开某个区域并根据此执行一些操作。使用“startRangingBeaconsInRegion”,我可以检测到最近的iBeacon并据此更改背景颜色,如果无法检测到iBeacon,则更改为白色。不过,我无法让它在“didEnterRegion”或“didExitRegion”上触发。我知道如果设备已经在该区域中,则不会触发enterRegion。我确保未检测到信标(白屏),然后检测到信标(彩色屏幕)-但没有触发。我试过使用estimoteSDK,但我遇到了同样的问题。重新启动设备也无济于事。我的代码在下面,有什么建议吗?importUIKitimportCore

ios - 调用 didEnterRegion 时不再调用 didUpdateLocations

我在同时处理Geofence和用户当前位置时遇到问题。当应用程序开始工作时,didUpdateLocations被完美地调用并且我获得了所需的用户位置。funclocationManager(_manager:CLLocationManager,didUpdateLocationslocations:[CLLocation]){但是一旦didEnterRegion委托(delegate)被调用,funclocationManager(_manager:CLLocationManager,didEnterRegionregion:CLRegion){}didUpdateLocations

swift - didEnterRegion 和 didExitRegion 在 iOS8 中不起作用

我正在使用CoreLocation来跟踪区域,以检测用户是否进入或退出该区域。不幸的是,我的代码在iOS7中有效,但在iOS8中无效。这是我正在使用的代码:funcsetMonitoredRegion(){varstartLocation:CLLocationCoordinate2D=CLLocationCoordinate2D(latitude:+52.53753000,longitude:+13.35971000)varmonitoredRegion=CLCircularRegion(center:startLocation,radius:100,identifier:"Regio