iOS

모션디텍터 라이브러리 - SOMotionDetector

by hooni posted Mar 19, 2014
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

SOMotionDetector

Simple library to detect motion for iOS by arturdev .

Based on location updates and acceleration.

Requierments

iOS > 6.0

Compatible with iOS 7

Works on all iOS devices (i.e. not need M7 chip)

SOMotionDetector.png

USAGE

Copy SOMotionDetector folder to your project.

Link CoreMotion.frameworkCoreLocation.framework.

Import "SOMotionDetector.h" file and implement 
protocol.

#import "SOMotionDetector.h
@interface ViewController ()<SOMotionDetectorDelegate>

@end

Set SOMotionDetector's delegate to self

[SOMotionDetector sharedInstance].delegate = self;

Implement delegate methods

- (void)motionDetector:(SOMotionDetector *)motionDetector motionTypeChanged:(SOMotionType)motionType
{

}

- (void)motionDetector:(SOMotionDetector *)motionDetector locationChanged:(CLLocation *)location
{

}

- (void)motionDetector:(SOMotionDetector *)motionDetector accelerationChanged:(CMAcceleration)acceleration
{

}

You are done!

Now to start detection motion just call

[[SOMotionDetector sharedInstance] startDetection];

To stop detection call

[[SOMotionDetector sharedInstance] stopDetection];

Detecting motion types

typedef enum
{
  MotionTypeNotMoving = 1,
  MotionTypeWalking,
  MotionTypeRunning,
  MotionTypeAutomotive
} SOMotionType;

CUSTOMIZATION

/**
 * Set this parameter to YES if you want to use M7 chip to detect more exact motion type. By default is No.
 * Set this parameter before calling startDetection method.
 * Available only on devices that have M7 chip. At this time only the iPhone 5S, the iPad Air and iPad mini with retina display have the M7 coprocessor.
 */
@property (nonatomic) BOOL useM7IfAvailable;

/**
 *@param speed  The minimum speed value less than which will be considered as not moving state
 */
- (void)setMinimumSpeed:(CGFloat)speed;

/**
 *@param speed  The maximum speed value more than which will be considered as running state
 */
- (void)setMaximumWalkingSpeed:(CGFloat)speed;

/**
 *@param speed  The maximum speed value more than which will be considered as automotive state
 */
- (void)setMaximumRunningSpeed:(CGFloat)speed;

/**
 *@param acceleration  The minimum acceleration value less than which will be considered as non shaking state
 */
- (void)setMinimumRunningAcceleration:(CGFloat)acceleration;

Installation with CocoaPods

CocoaPods is a dependency manager for Objective-C, which automates and simplifies the process of using 3rd-party libraries installation in your projects.

Podfile

pod "SOMotionDetector", "~> 1.0.1"

LICENSE

SOMotionDetector is under MIT License (see LICENSE file)

M7칩을 사용하지않는 iOS기기에서도 사용가능한 모션디텍터 라이브러리 오픈소스 SOMotionDetector 입니다.

다운로드는 첨부파일 또는 아래링크를 확인하세요>
https://github.com/SocialObjects-Software/SOMotionDetector/