首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >艾比肯不起作用

艾比肯不起作用
EN

Stack Overflow用户
提问于 2015-05-19 12:48:32
回答 2查看 83关注 0票数 0

info.plist中:

我们增加了NSLocationAlwaysUsageDescription。在required background modes上,我们添加了所有蓝牙设备(与蓝牙通信和共享数据)和位置- "register for location updates"

我们引进了location and bluetooth frameworks和基金会。

我们从以下几个方面开始蓝牙:

代码语言:javascript
运行
复制
  if([self.locationManager respondsToSelector:@selector(requestAlwaysAuthorization)])
    {
        [self.locationManager requestAlwaysAuthorization];
     }



    self.locationManager = [[CLLocationManager alloc] init];
    self.locationManager.delegate = self;



    self.beaconRegion.notifyOnEntry=YES;
    self.beaconRegion.notifyOnExit=YES;
    self.beaconRegion.notifyEntryStateOnDisplay=YES;
    [self.locationManager requestAlwaysAuthorization ];
    [self.locationManager requestWhenInUseAuthorization];



    NSUUID *uuid_in = [[NSUUID alloc] initWithUUIDString:uuid];
    self.beaconRegion = [[CLBeaconRegion alloc] initWithProximityUUID:uuid_in identifier:@"com.name.us"];
    [self.locationManager startMonitoringForRegion:self.beaconRegion];

委托称为

代码语言:javascript
运行
复制
- (void)locationManager:(CLLocationManager *)manager didStartMonitoringForRegion:(CLRegion *)region {

    NSLog(@"started:%@",region);
    //[self.locationManager requestStateForRegion:self.beaconRegion];

    self.beaconRegion.notifyEntryStateOnDisplay=YES;

}

问题是,当我们打开硬件信标(它正在与其他应用程序一起工作)时,委托并不被称为 (iPhone6):

代码语言:javascript
运行
复制
- (void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region {
-(void)locationManager:(CLLocationManager *)manager didExitRegion:(CLRegion *)region {
-(void)locationManager:(CLLocationManager *)manager didRangeBeacons:(NSArray *)beacons inRegion:(CLBeaconRegion *)region {
EN

Stack Overflow用户

回答已采纳

发布于 2015-05-19 13:23:02

以下是一些小窍门:

  1. 你应该只做这两个中的一个。如果你有第一行,就去掉第二行。(上面还重复了相同的第一行。) self.locationManager requestAlwaysAuthorization;self.locationManager requestWhenInUseAuthorization;
  2. 不需要特殊的背景模式。
  3. 不需要蓝牙框架。
  4. 在初始化CLBeaconRegion之前,您正在修改它。以self.beaconRegion.notifyOnEntry=YES;开头的行需要向下移动,以便在初始化后进行。
  5. 确保在ProximityUUID中定义的uuid_in实际上与您的信标匹配。请张贴这是如何初始化的代码,以便我们可以帮助确定。
  6. 尝试卸载和重新安装您的应用程序。确保在第一次启动和接受时会提示您获得位置权限。如果你没有得到提示,事情就不对劲了。
票数 2
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30326106

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档