# cordova-plugin-device-motion 이 플러그인 장치의 속도계에 대 한 액세스를 제공합니다. 가 속도계 3 차원 *x*, *y*및 *z* 축 따라 현재 장치 방향 기준으로 이동 (*델타*) 변경 내용을 감지 하는 모션 센서입니다. 글로벌 `navigator.accelerometer` 개체를 통해 액세스가입니다. 개체 `navigator` 글로벌 범위 첨부 아니에요 때까지 사용할 수 있는 `deviceready` 이벤트 후. document.addEventListener("deviceready", onDeviceReady, false); function onDeviceReady() { console.log(navigator.accelerometer); } ## 설치 cordova plugin add cordova-plugin-device-motion ## 지원 되는 플랫폼 * 아마존 화재 운영 체제 * 안 드 로이드 * 블랙베리 10 * 브라우저 * Firefox 운영 체제 * iOS * Tizen * Windows Phone 8 * 윈도우 ## 메서드 * navigator.accelerometer.getCurrentAcceleration * navigator.accelerometer.watchAcceleration * navigator.accelerometer.clearWatch ## 개체 * 가속 ## navigator.accelerometer.getCurrentAcceleration *X*, *y* 및 *z* 축 따라 현재 가속도 얻을. 이 가속도 값이 `accelerometerSuccess` 콜백 함수에 반환 됩니다. navigator.accelerometer.getCurrentAcceleration(accelerometerSuccess, accelerometerError); ### 예를 들어 function onSuccess(acceleration) { alert('Acceleration X: ' + acceleration.x + '\n' + 'Acceleration Y: ' + acceleration.y + '\n' + 'Acceleration Z: ' + acceleration.z + '\n' + 'Timestamp: ' + acceleration.timestamp + '\n'); }; function onError() { alert('onError!'); }; navigator.accelerometer.getCurrentAcceleration(onSuccess, onError); ### 브라우저 만지면 X, Y 값 Z 모션은가 속도계 시뮬레이션 모든에 임의로 생성 된 순서입니다. ### iOS 단점 * iOS는 어떤 주어진된 시점에서 현재 가속도의 개념을 인식 하지 못합니다. * 가속을 감시 하며 데이터 캡처에 주어진 시간 간격. * 따라서,는 `getCurrentAcceleration` 에서 보고 된 마지막 값을 생성 하는 함수는 `watchAccelerometer` 전화. ## navigator.accelerometer.watchAcceleration 때마다 `accelerometerSuccess` 콜백 함수를 실행 정기적 소자의 현재 `Acceleration`을 검색 합니다. `acceleratorOptions` 개체의 `frequency` 매개 변수를 통해 밀리초 단위로 간격을 지정 합니다. 반환 된 시계 ID가 속도계의 시계 간격을 참조 하 고가 속도계를 보는 중지 하 `navigator.accelerometer.clearWatch`와 함께 사용할 수 있습니다. var watchID = navigator.accelerometer.watchAcceleration(accelerometerSuccess, accelerometerError, accelerometerOptions); * **accelerometerOptions**: 다음 선택적 키 개체: * **기간**: 밀리초에서 가속 데이터와 accelerometerSuccess에 대 한 호출의 요청된 기간. *(수)* (기본: 10000) ### 예를 들어 function onSuccess(acceleration) { alert('Acceleration X: ' + acceleration.x + '\n' + 'Acceleration Y: ' + acceleration.y + '\n' + 'Acceleration Z: ' + acceleration.z + '\n' + 'Timestamp: ' + acceleration.timestamp + '\n'); }; function onError() { alert('onError!'); }; var options = { frequency: 3000 }; // Update every 3 seconds var watchID = navigator.accelerometer.watchAcceleration(onSuccess, onError, options); ### iOS 단점 API 요청 간격 성공 콜백 함수를 호출 하지만 40ms 사이 장치에 요청의 범위를 제한 하 고 1000ms. 예를 들어 (3000ms) 3 초의 간격을 요청 하는 경우 API 마다 1 초 장치에서 데이터를 요청 하지만 성공 콜백을 3 초 마다 실행 됩니다. ## navigator.accelerometer.clearWatch `watchID` 매개 변수에서 참조 `가속도` 보고 중지 합니다. navigator.accelerometer.clearWatch(watchID); * **watchID**: ID 반환`navigator.accelerometer.watchAcceleration`. ### 예를 들어 var watchID = navigator.accelerometer.watchAcceleration(onSuccess, onError, options); // ... later on ... navigator.accelerometer.clearWatch(watchID); ## 가속 특정 시점에 캡처된 `Accelerometer` 데이터를 포함 합니다. 가속도 값 포함 중력의 효과 (9.81 m/s ^2) 때 장치 거짓말 평평 하 고 *x*, *y*, 최대 직면 하 고 반환 하는 *z* 값 ``, `` 및 `9.81` 이어야 한다,. ### 속성 * **x**: x 축에 가속의 금액. (m/s에서 ^2) *(수)* * **y**: y 축에 가속의 금액. (m/s에서 ^2) *(수)* * **z**: z 축의 가속도의 금액. (m/s에서 ^2) *(수)* * **타임 스탬프**: 생성 타임 스탬프 (밀리초)입니다. *(DOMTimeStamp)*