Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/94.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如果iBeacon已在范围内,则找不到它_Ios_Ibeacon - Fatal编程技术网

Ios 如果iBeacon已在范围内,则找不到它

Ios 如果iBeacon已在范围内,则找不到它,ios,ibeacon,Ios,Ibeacon,我发现这是一个很好的使用iBeacon开发应用程序的教程: 但是在这个实现中,正如作者所说,如果你在接收器已经在信标范围内时启动它,它就不会发射。如果你想找到一个ibeacon,你需要远离它的区域,然后再回到范围内 我如何修改此代码,以便在我使用应用程序时找到它在范围内的指示灯 我使用Xcode6、IPad air和IOS 8 这是本教程中的简化代码: 在ViewController.h中 #import <UIKit/UIKit.h> #import <CoreLocati

我发现这是一个很好的使用iBeacon开发应用程序的教程:

但是在这个实现中,正如作者所说,如果你在接收器已经在信标范围内时启动它,它就不会发射。如果你想找到一个ibeacon,你需要远离它的区域,然后再回到范围内

我如何修改此代码,以便在我使用应用程序时找到它在范围内的指示灯

我使用Xcode6、IPad air和IOS 8

这是本教程中的简化代码:

在ViewController.h中

#import <UIKit/UIKit.h>
#import <CoreLocation/CoreLocation.h>

@interface ViewController : UIViewController<CLLocationManagerDelegate>

@property (strong, nonatomic) CLBeaconRegion *myBeaconRegion;
@property (strong, nonatomic) CLLocationManager *locationManager;

@end

只有当用户跨越区域边界时,才会触发didEnterRegion和didExitRegion回调。对于iBeacon,这意味着从“内部”移动到“外部”,反之亦然

当您启动应用程序并开始监控您的信标区域时,您可以请求您的信标区域的当前状态,以确定您的用户是在内部还是外部

实现以下回调:

- (void)locationManager:(CLLocationManager *)manager didDetermineState:(CLRegionState)state forRegion:(CLRegion *)region
在您开始监视您的区域后,每当跨越区域边界时(请注意不要在此处和didEnter/ExitRegion内部重复逻辑),就会触发此回调,并响应对requestStateForRegion的调用:

希望这有助于。。。如果您需要更多->:

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