美文网首页
iOS 传感器

iOS 传感器

作者: 40dd4b561abe | 来源:发表于2017-06-13 10:44 被阅读7次
    
    包含头文件#import<CoreMotion/CoreMotion.h>
    
    创建管理器 CMMotionManager * cmm = [CMMotionManager  new];
    
    1.加速度传感器
    
    设置检测频率cmm.accelerometerUpdateInterval = 1;//每秒一次
    
    if (cmm.accelerometerAvailable) {//检测设备有没有加速度模块
    
    [cmm startAccelerometerUpdatesToQueue:[[NSOperationQueue alloc] init] withHandler:^(CMAccelerometerData * _Nullable accelerometerData, NSError * _Nullable error) {//开始检测
    
    NSLog(@"%@",accelerometerData);
    
    }];
    
    }
    
    [cmm stopAccelerometerUpdates]//停止加速度的检测
    
    2.陀螺仪
    
    cmm.gyroUpdateInterval = 1;//陀螺仪的检测频率
    
    if (cmm.gyroAvailable) {//有没有陀螺仪
    
    [cmm startGyroUpdatesToQueue:[NSOperationQueue new] withHandler:^(CMGyroData * _Nullable gyroData, NSError * _Nullable error) {
    
    NSLog(@"%@",gyroData);
    
    }];
    
    }
    
    [cmm stopGyroUpdates]//停止陀螺仪的检测
    
    3.距离传感器
    
    [UIDevice currentDevice].proximityMonitoringEnabled = true;//启动距离传感器
    
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(proximity:) name:UIDeviceProximityStateDidChangeNotification object:nil];
    
    //接收距离传感器的的变化(只有yes 或no)
    
    -(void)proximity:(NSNotification *)not
    
    {
    
    NSLog(@"%u",[UIDevice currentDevice].proximityState);
    
    }
    
    //停止的时候删除通知即可
    
    [[NSNotificationCenter defaultCenter]removeObserver:self];
    

    相关文章

      网友评论

          本文标题:iOS 传感器

          本文链接:https://www.haomeiwen.com/subject/ynhdqxtx.html