iOS傳感器

1 . iOS設(shè)備的傳感器簡介 (注釋 所有的調(diào)試設(shè)備必須是真機(jī))

? ?1.1 環(huán)境傳感器 Ambient Light sensor ?作用 讓眼睛更舒適,照相的時(shí)候自動開啟閃光。

? ?1.2 距離傳感器 Proximity sensor 作用:用于檢測是否含有其他的物體靠近設(shè)備。(例如當(dāng)你打電話的時(shí)候設(shè)備靠近耳朵踊沸,手機(jī)的屏幕就會自動關(guān)閉,好處是節(jié)約電量,防止耳朵或面部觸摸屏幕引起一些意外的操作)

代碼如下:

開啟:距離傳感器

?[UIDevice currentDevice].ProximityMonitoringEnabled = YES;

監(jiān)聽距離傳感器的方法

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(changes) name:UIDeviceProximityStateDidChangeNotification object:nil];

}

實(shí)現(xiàn)監(jiān)聽的方法

-(void)changes{

[UIDevice currentDevice].proximityState 是一個(gè)BOOL值。通過bool值來判斷是靠近還是遠(yuǎn)離典徘。

if ([UIDevice currentDevice].proximityState) {

NSLog(@"有物品靠近");

}else{

NSLog(@"有物品離開");

}

1.3.加速計(jì)傳感器?

? (檢測那個(gè)方向有力的作用,用處:搖一搖腺律,計(jì)步器)。

1.3.1在iOS ?5.0以前實(shí)現(xiàn)的方法非常簡單

//? ? 加速器 這是一個(gè)單例

UIAccelerometer *accelerometer = [UIAccelerometer sharedAccelerometer];

設(shè)置代理(UIAccelerometerDelegate)

accelerometer.delegate = self;

accelerometer.updateInterval = 1.0;

// 實(shí)現(xiàn)代理方法

- (void)accelerometer:(UIAccelerometer *)accelerometer didAccelerate:(UIAcceleration *)acceleration {

NSLog(@"x:%f,y:%f,z:%f",acceleration.x,acceleration.y,acceleration.z);

}

通過這個(gè)代理方法在這里就可以看到那個(gè)方向有受力宜肉。

1.3.2

? iOS 5.0 ?以后加速器有全面升級了匀钧,并且引入了陀螺儀 與運(yùn)動相關(guān)的編程越來越重要 apple 在ios4.0 中增加了專門處理Motion的框架 Coremotion.framework 。不僅能夠提供實(shí)時(shí)的加速值 和旋轉(zhuǎn)速速谬返,而且apple 還集成了很多牛逼的算法榴捡。

Core Motion 獲取數(shù)據(jù)的兩種方式

? push?

創(chuàng)建運(yùn)動管理者 ?

導(dǎo)入頭文件 #import <CoreMotion/CorMotion.h>

首先在擴(kuò)展中? 定義一個(gè)屬性 @property (nonatomic, strong) CMMotionManager *manager;

self.manager = [[CMMotionManager alloc]init];

判斷是否可用

if (!_manager.isAccelerometerAvailable) {

NSLog(@"加速計(jì)不可用");

return;

}

設(shè)置采樣間隔

[_manager startAccelerometerUpdatesToQueue:[NSOperationQueue mainQueue] withHandler:^(CMAccelerometerData * _Nullable accelerometerData, NSError * _Nullable error) {

// 當(dāng)采樣到加速計(jì)信息就會執(zhí)行

if (!error) {

// 獲取加速劑信息

CMAcceleration acceleration = accelerometerData.acceleration;

NSLog(@"x:%f,y :%f, z:%f",acceleration.x,acceleration.y,acceleration.z);

}

}];

在這里面可以得到加速計(jì)的信息

post 方式

self.manager = [[CMMotionManager alloc]init];

判斷是否可用

if (!_manager.isAccelerometerAvailable) {

NSLog(@"加速計(jì)不可用");

return;

}

// 開始采樣

?self.manager startAccelerometerUpdates];

// 獲得加速計(jì)的信息

CMAcceleration accertino = self.manger.ccccelerometerData.acceleration;


1.4 陀螺儀

// 陀螺儀

if (![self.manager isGyroActive]) {

NSLog(@"你的手機(jī)不支持陀螺儀");

return;

}

// 設(shè)置時(shí)間間隔

self.manager.gyroUpdateInterval = 1.0;

// 開始采樣

[self.manager startGyroUpdatesToQueue:[NSOperationQueue mainQueue] withHandler:^(CMGyroData * _Nullable gyroData, NSError * _Nullable error) {

CMRotationRate rate = gyroData.rotationRate;

NSLog(@"%f,%f,%f",rate.x,rate.y,rate.z);

}];

其他的傳感器 和以上的使用方法都是一樣的。


傳感器的使用 手機(jī)搖一搖功能 ?直接實(shí)現(xiàn)者三個(gè)方法就可以以可

-(void)motionBegan:(UIEventSubtype)motion withEvent:(UIEvent *)event{

NSLog(@"監(jiān)聽到用戶搖一搖朱浴,可以在這里面執(zhí)行你想要的操作");

}

-(void)motionCancelled:(UIEventSubtype)motion withEvent:(UIEvent *)event{

NSLog(@"監(jiān)聽到搖一搖被取消");

}

-(void)motionEnded:(UIEventSubtype)motion withEvent:(UIEvent *)event {

NSLog(@"監(jiān)聽到搖一搖結(jié)束");

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市达椰,隨后出現(xiàn)的幾起案子翰蠢,更是在濱河造成了極大的恐慌,老刑警劉巖啰劲,帶你破解...
    沈念sama閱讀 216,744評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件梁沧,死亡現(xiàn)場離奇詭異,居然都是意外死亡蝇裤,警方通過查閱死者的電腦和手機(jī)廷支,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,505評論 3 392
  • 文/潘曉璐 我一進(jìn)店門频鉴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人恋拍,你說我怎么就攤上這事垛孔。” “怎么了施敢?”我有些...
    開封第一講書人閱讀 163,105評論 0 353
  • 文/不壞的土叔 我叫張陵周荐,是天一觀的道長。 經(jīng)常有香客問我僵娃,道長概作,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,242評論 1 292
  • 正文 為了忘掉前任默怨,我火速辦了婚禮讯榕,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘匙睹。我一直安慰自己愚屁,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,269評論 6 389
  • 文/花漫 我一把揭開白布垃僚。 她就那樣靜靜地躺著集绰,像睡著了一般。 火紅的嫁衣襯著肌膚如雪谆棺。 梳的紋絲不亂的頭發(fā)上栽燕,一...
    開封第一講書人閱讀 51,215評論 1 299
  • 那天,我揣著相機(jī)與錄音改淑,去河邊找鬼碍岔。 笑死,一個(gè)胖子當(dāng)著我的面吹牛朵夏,可吹牛的內(nèi)容都是我干的蔼啦。 我是一名探鬼主播,決...
    沈念sama閱讀 40,096評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼仰猖,長吁一口氣:“原來是場噩夢啊……” “哼捏肢!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起饥侵,我...
    開封第一講書人閱讀 38,939評論 0 274
  • 序言:老撾萬榮一對情侶失蹤鸵赫,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后躏升,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體辩棒,經(jīng)...
    沈念sama閱讀 45,354評論 1 311
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,573評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了一睁。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片钻弄。...
    茶點(diǎn)故事閱讀 39,745評論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖者吁,靈堂內(nèi)的尸體忽然破棺而出窘俺,到底是詐尸還是另有隱情,我是刑警寧澤砚偶,帶...
    沈念sama閱讀 35,448評論 5 344
  • 正文 年R本政府宣布批销,位于F島的核電站,受9級特大地震影響染坯,放射性物質(zhì)發(fā)生泄漏均芽。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,048評論 3 327
  • 文/蒙蒙 一单鹿、第九天 我趴在偏房一處隱蔽的房頂上張望掀宋。 院中可真熱鬧,春花似錦仲锄、人聲如沸劲妙。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,683評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽镣奋。三九已至,卻和暖如春怀愧,著一層夾襖步出監(jiān)牢的瞬間侨颈,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,838評論 1 269
  • 我被黑心中介騙來泰國打工芯义, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留哈垢,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,776評論 2 369
  • 正文 我出身青樓扛拨,卻偏偏與公主長得像耘分,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子绑警,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,652評論 2 354

推薦閱讀更多精彩內(nèi)容