iOS 近距离传感器的使用

使用使用近距离传感器

UIDevice 中有两个近距离传感器的属性:proximityMonitoringEnabled 和 proximityState。这两个属性都是 iOS 3.0 及以上才支持的。

要确定近距离传感器是否可用,可以尝试启用它,即 proximityMonitoringEnabled = YES,如果设置的属性值仍然为NO,说明传感器不可用。

proximityState 属性

传感器已启动前提条件下,如果用户接近近距离传感器,此时属性值为YES,并且屏幕已关闭(非休眠)。

Notification

UIDeviceProximityStateDidChangeNotification,当近距离传感器状态改变时发生。

代码实现:

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    
    // 1.开启距离传感器
    [UIDevice currentDevice].proximityMonitoringEnabled = YES;
    
    // 2.发送通知
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(proximityState) name:UIDeviceProximityStateDidChangeNotification object:nil];
}

// 3.近距离传感器状态改变
- (void)proximityState
{
    if ([UIDevice currentDevice].proximityState) {
        NSLog(@"有物体靠近");
    }else{
        NSLog(@"有物体离开");
    }
}

- (void)dealloc
{
    [[NSNotificationCenter defaultCenter] removeObserver:self];
}

使用场景:

可以通过近距离传感器计算做俯卧撑次数


iOS 近距离传感器的使用_第1张图片
俯卧撑.png

你可能感兴趣的:(iOS 近距离传感器的使用)