가속도계

W3C 후보 권고안 초안,

이 문서에 대한 자세한 정보
이 버전:
https://www.w3.org/TR/2026/CRD-accelerometer-20260514/
최신 공개 버전:
https://www.w3.org/TR/accelerometer/
편집자 초안:
https://w3c.github.io/accelerometer/
이전 버전:
이력:
https://www.w3.org/standards/history/accelerometer/
피드백:
public-device-apis@w3.org 에 제목 줄 “[accelerometer] … 메시지 주제 …”로 보내기(아카이브)
GitHub
구현 보고서:
https://www.w3.org/wiki/DAS/Implementations
테스트 모음:
https://github.com/web-platform-tests/wpt/tree/main/accelerometer
편집자:
Anssi Kostiainen (Intel Corporation)
이전 편집자:
Alexander Shalamov (Intel Corporation)

초록

이 명세는 센서를 호스팅하는 기기의 X, Y 및 Z축에 적용되는 가속도에 대한 정보를 얻기 위한 Accelerometer, LinearAccelerationSensorGravitySensor 인터페이스를 정의한다.

이 문서의 상태

이 절은 이 문서가 공개된 시점의 상태를 설명한다. 현재 W3C 간행물 목록과 이 기술 보고서의 최신 개정판은 W3C 기술 보고서 색인에서 찾을 수 있다.

이 문서는 Devices and Sensors Working GroupRecommendation 트랙을 사용하여 후보 권고안 초안으로 공개했다. 이 문서는 W3C Recommendation이 되는 것을 목적으로 한다.

이 문서에 대한 의견을 보내려면 public-device-apis@w3.org로 보내기 바란다 (구독, 아카이브). 이메일을 보낼 때는 제목에 “accelerometer”라는 텍스트를 넣고, 가능하면 다음과 같이 작성하라: “[accelerometer] …의견 요약…”. 모든 의견을 환영한다.

후보 권고안으로 공개되었다고 해서 W3C와 그 회원의 지지를 의미하는 것은 아니다. 후보 권고안 초안은 작업 그룹이 이후 후보 권고안 스냅샷에 포함하려는 이전 후보 권고안의 변경사항을 통합한다. 이 문서는 초안 문서이며 언제든지 다른 문서로 업데이트, 대체 또는 폐기될 수 있다. 진행 중인 작업 이외의 것으로 이 문서를 인용하는 것은 적절하지 않다.

이 문서가 Proposed Recommendation 단계에 진입하기 위한 진입 기준은, 이 명세의 모든 기능을 구현하는 독립적이고 상호 운용 가능한 사용자 에이전트가 최소 두 개 이상 존재하는 것이다. 이는 작업 그룹이 개발한 테스트 모음에 정의된 사용자 에이전트 테스트를 통과하는 것으로 판단한다. 작업 그룹은 진행 상황을 추적하기 위해 구현 보고서를 준비할 것이다.

이 문서는 W3C 특허 정책에 따라 운영되는 그룹이 작성했다. W3C는 이 그룹의 산출물과 관련하여 이루어진 특허 공개의 공개 목록을 유지한다. 해당 페이지에는 특허를 공개하기 위한 지침도 포함되어 있다. 개인이 필수 청구항을 포함한다고 믿는 특허에 대해 실제 지식을 가지고 있는 경우, 그 개인은 W3C 특허 정책 6절에 따라 해당 정보를 공개해야 한다.

이 문서는 2025년 8월 18일 W3C Process Document의 적용을 받는다.

이 명세는 기존 배포를 위해 유지관리된다. 여러 브라우저 엔진이 이 명세에 대해 우려를 표명했다. 새 프로젝트의 경우 개발자는 교차 엔진 지원이 있는 Device Orientation and Motion을 사용해야 한다. 작업 그룹은 새로운 동작 감지 기능을 Device Orientation and Motion에서 개발할 계획이다.

이 문서는 유지관리되며 언제든지 업데이트된다. 이 문서의 일부는 진행 중인 작업이다.

1. 소개

Accelerometer, LinearAccelerationSensorGravitySensor API는 Generic Sensor API [GENERIC-SENSOR] 인터페이스를 확장하여, 기기가 정의한 로컬 좌표계에서 기기의 X, Y 및 Z축에 적용되는 가속도에 대한 정보를 제공한다.

2. 예제

let sensor = new Accelerometer();
sensor.start();

sensor.onreading = () => {
    console.log("Acceleration along X-axis: " + sensor.x);
    console.log("Acceleration along Y-axis: " + sensor.y);
    console.log("Acceleration along Z-axis: " + sensor.z);
}

sensor.onerror = event => console.log(event.error.name, event.error.message);
다음 예제는 화면 좌표계에서 판독값을 제공하는 중력 센서를 사용하는 방법을 보여준다. 이 조각은 dom screen이 지면에 수직이고 렌더링된 웹페이지의 아래쪽이 아래를 향할 때 콘솔에 메시지를 출력할 것이다.
let sensor = new GravitySensor({frequency: 5, referenceFrame: "screen"});

sensor.onreading = () => {
  if (sensor.y >= 9.8) {
    console.log("Web page is perpendicular to the ground.");
  }
}

sensor.start();
다음 예제는 dom screen의 방향과 관계없이 기기의 x축을 따른 흔들기 제스처를 감지한다.
const shakeThreshold = 25;

let sensor = new LinearAccelerationSensor({frequency: 60});

sensor.addEventListener('reading', () => {
  if (sensor.x > shakeThreshold) {
    console.log("Shake detected.");
  }
});

sensor.start();

3. 사용 사례 및 요구사항

사용 사례와 요구사항은 Motion Sensors Explainer Sensor use cases 문서에 나열되어 있다.

4. 보안 및 개인정보 고려사항

가속도계와 같은 관성 센서가 제공하는 센서 판독값은 공격자가 여러 보안 위협을 악용하는 데 사용할 수 있다. 예를 들어, 키로깅, 위치 추적, 지문채취사용자 식별이 있다.

보안 커뮤니티가 발표한 연구 논문, 예를 들어 [KEYSTROKEDEFENSE]는 빈도를 제한해도 성공적인 공격의 위험이 완전히 제거되지는 않으며, 반면 제한은 센서를 사용할 정당한 이유가 있는 웹 애플리케이션의 유용성에 큰 영향을 줄 수 있음을 나타낸다.

[TOUCHSIGNATURES][ACCESSORY] 연구 논문은 구현이 관성 센서가 사용 중일 때 시각적 표시를 제공하거나 센서 판독값에 접근하기 위해 명시적 사용자 동의를 요구할 수 있다고 제안한다. 이러한 완화 전략은 Generic Sensor API [GENERIC-SENSOR]에 정의된 일반적 완화를 보완한다.

이 명세는 센서 보정 지문채취 [SENSORID] 및 고정밀 센서 판독값에 의존하는 공격을 완화하기 위해 가속도계 판독값 양자화 알고리즘(최신 판독값에서 값 가져오기 연산에서 호출됨)을 정의한다. 양자화 알고리즘의 세부 사항은 W3C Privacy Interest Group의 권고를 따른다.

5. Permissions Policy 통합

이 명세는 [DEVICE-ORIENTATION]에 정의된 "accelerometer" 문자열로 식별되는 정책 제어 기능을 활용한다.

6. 모델

6.1. Accelerometer

Accelerometer 센서 타입에는 다음 연결 데이터가 있다:

확장 센서 인터페이스

Accelerometer

센서 권한 이름

"accelerometer"

센서 기능 이름

"accelerometer"

권한 철회 알고리즘

"accelerometer"로 일반 센서 권한 철회 알고리즘을 호출한다.

기본 센서

기기의 주 가속도계 센서.

가상 센서 타입

"accelerometer"

최신 판독값Accelerometer 센서 타입Sensor에 대해, 가 "x", "y", "z"이고 그 이 해당 축에 대한 기기의 가속도를 포함하는 세 개의 항목을 포함한다.

가속도는 시간에 대한 기기 속도의 변화율이다. 그 단위는 초 제곱당 미터(m/s2) [SI]이다.

가속도 측정의 참조 프레임은 관성적이어야 한다. 예를 들어, 자유 낙하 중인 기기는 각 축에 대해 0 (m/s2) 가속도 값을 제공할 것이다.

가속도 값의 부호는 로컬 좌표계에서 오른손 법칙을 따라야 한다 (아래 그림 참조).

가속도계 좌표계.

6.2. Linear Acceleration Sensor

Linear Acceleration Sensor 센서 타입에는 다음 연결 데이터가 있다:

확장 센서 인터페이스

LinearAccelerationSensor

센서 권한 이름

"accelerometer"

센서 기능 이름

"accelerometer"

권한 철회 알고리즘

"accelerometer"로 일반 센서 권한 철회 알고리즘을 호출한다.

가상 센서 타입

"linear-acceleration"

최신 판독값Linear Acceleration Sensor 센서 타입Sensor에 대해, 가 "x", "y", "z"이고 그 이 해당 축에 대한 기기의 선형 가속도를 포함하는 세 개의 항목을 포함한다.

선형 가속도중력 힘의 기여 없이, 센서를 호스팅하는 기기에 적용되는 가속도이다.

참고: 중력선형 가속도의 관계는 Motion Sensors Explainer § gravity-and-linear-acceleration에서 논의된다.

6.3. Gravity Sensor

Gravity Sensor 센서 타입에는 다음 연결 데이터가 있다:

확장 센서 인터페이스

GravitySensor

센서 권한 이름

"accelerometer"

센서 기능 이름

"accelerometer"

권한 철회 알고리즘

"accelerometer"로 일반 센서 권한 철회 알고리즘을 호출한다.

가상 센서 타입

"gravity"

최신 판독값Gravity Sensor 센서 타입Sensor에 대해, 가 "x", "y", "z"이고 그 이 해당 축에 대한 중력으로 인한 가속도를 포함하는 세 개의 항목을 포함한다.

중력은 기기의 속도가 주변 질량을 향해 증가하는 것을 막는 기기 가속도의 성분이다. 짧은 시간을 초과하여 자유 낙하 중인 기기는 중력에 대해 잘못된 값을 계산할 수 있다.

참고: 중력선형 가속도의 관계는 Motion Sensors Explainer § gravity-and-linear-acceleration에서 논의된다.

6.4. 참조 프레임

로컬 좌표계Accelerometer, LinearAccelerationSensor, 및 GravitySensor 판독값에 대한 참조 프레임을 나타낸다. 이는 기기 좌표계 또는 화면 좌표계일 수 있다.

기기 좌표계는 물리적 기기에 결합된 3차원 데카르트 좌표계(x, y, z)로 정의된다. 디스플레이가 있는 기기의 경우, 기기 좌표계의 원점은 기기 디스플레이의 중심이다. 기기가 기본 위치로 잡혀 있으면, Y축은 디스플레이의 위쪽을 향하고, X축은 디스플레이의 오른쪽을 향하며, Z축은 X축과 Y축의 벡터곱이고 디스플레이 바깥쪽, 즉 보는 사람 쪽을 향한다. 기기 좌표계dom screen 방향과 관계없이 고정되어 있다(아래 그림 참조).

기기 좌표계.

화면 좌표계dom screen에 결합된 3차원 데카르트 좌표계(x, y, z)로 정의된다. 화면 좌표계의 원점은 dom screen의 중심이다. Y축은 항상 dom screen의 위쪽을 향하고, X축은 dom screen의 오른쪽을 향하며 Z축은 X축과 Y축의 벡터곱이고 dom screen의 바깥쪽, 즉 보는 사람 쪽을 향한다(아래 그림 참조).

화면 좌표계.

기기 좌표계화면 좌표계의 주요 차이는, 화면 좌표계가 항상 dom screen 방향을 따른다는 점이다. 즉, 현재 방향 타입이 변경되면 기기와의 관계에서 X축과 Y축을 서로 바꾼다. 반대로 기기 좌표계는 항상 기기에 대해 고정된 상태를 유지한다.

7. API

7.1. Accelerometer 인터페이스

[SecureContext, Exposed=Window]
interface Accelerometer : Sensor {
  constructor(optional AccelerometerSensorOptions options = {});
  readonly attribute double? x;
  readonly attribute double? y;
  readonly attribute double? z;
};

enum AccelerometerLocalCoordinateSystem { "device", "screen" };

dictionary AccelerometerSensorOptions : SensorOptions {
  AccelerometerLocalCoordinateSystem referenceFrame = "device";
};
new Accelerometer(options) 생성자 단계는 가속도계 객체 구성 추상 연산을 thisoptions로 호출하는 것이다.

Accelerometer에 대한 지원되는 센서 옵션은 "frequency"와 "referenceFrame"이다.

7.1.1. Accelerometer.x

x Accelerometer 인터페이스의 속성은 this와 "x"를 인자로 사용하여 최신 판독값에서 값 가져오기를 호출한 결과를 반환한다. 이는 x축을 따른 가속도를 나타낸다.

7.1.2. Accelerometer.y

y Accelerometer 인터페이스의 속성은 this와 "y"를 인자로 사용하여 최신 판독값에서 값 가져오기를 호출한 결과를 반환한다. 이는 y축을 따른 가속도를 나타낸다.

7.1.3. Accelerometer.z

z Accelerometer 인터페이스의 속성은 this와 "z"를 인자로 사용하여 최신 판독값에서 값 가져오기를 호출한 결과를 반환한다. 이는 z축을 따른 가속도를 나타낸다.

7.2. LinearAccelerationSensor 인터페이스

[SecureContext, Exposed=Window]
interface LinearAccelerationSensor : Accelerometer {
  constructor(optional AccelerometerSensorOptions options = {});
};
new LinearAccelerationSensor(options) 생성자 단계는 가속도계 객체 구성 추상 연산을 thisoptions로 호출하는 것이다.

LinearAccelerationSensor에 대한 지원되는 센서 옵션은 "frequency"와 "referenceFrame"이다.

7.2.1. LinearAccelerationSensor.x

x LinearAccelerationSensor 인터페이스의 속성은 this와 "x"를 인자로 사용하여 최신 판독값에서 값 가져오기를 호출한 결과를 반환한다. 이는 x축을 따른 선형 가속도를 나타낸다.

7.2.2. LinearAccelerationSensor.y

y LinearAccelerationSensor 인터페이스의 속성은 this와 "y"를 인자로 사용하여 최신 판독값에서 값 가져오기를 호출한 결과를 반환한다. 이는 y축을 따른 선형 가속도를 나타낸다.

7.2.3. LinearAccelerationSensor.z

z LinearAccelerationSensor 인터페이스의 속성은 this와 "z"를 인자로 사용하여 최신 판독값에서 값 가져오기를 호출한 결과를 반환한다. 이는 z축을 따른 선형 가속도를 나타낸다.

7.3. GravitySensor 인터페이스

[SecureContext, Exposed=Window]
interface GravitySensor : Accelerometer {
  constructor(optional AccelerometerSensorOptions options = {});
};
new GravitySensor(options) 생성자 단계는 가속도계 객체 구성 추상 연산을 thisoptions로 호출하는 것이다.

GravitySensor에 대한 지원되는 센서 옵션은 "frequency"와 "referenceFrame"이다.

7.3.1. GravitySensor.x

x GravitySensor 인터페이스의 속성은 this와 "x"를 인자로 사용하여 최신 판독값에서 값 가져오기를 호출한 결과를 반환한다. 이는 x축을 따른 가속도에 대한 중력의 효과를 나타낸다.

7.3.2. GravitySensor.y

y GravitySensor 인터페이스의 속성은 this와 "y"를 인자로 사용하여 최신 판독값에서 값 가져오기를 호출한 결과를 반환한다. 이는 y축을 따른 가속도에 대한 중력의 효과를 나타낸다.

7.3.3. GravitySensor.z

z GravitySensor 인터페이스의 속성은 this와 "z"를 인자로 사용하여 최신 판독값에서 값 가져오기를 호출한 결과를 반환한다. 이는 z축을 따른 가속도에 대한 중력의 효과를 나타낸다.

8. 추상 연산

8.1. 가속도계 객체 구성

입력

object, Accelerometer, LinearAccelerationSensor 또는 GravitySensor 객체.

options, AccelerometerSensorOptions 객체.

  1. object센서 타입으로 센서 정책 제어 기능 검사를 호출한 결과를 allowed라고 하자.

  2. allowed가 false이면:

    1. SecurityError DOMException던진다.

  3. objectoptions센서 객체 초기화를 호출한다.

  4. options.referenceFrame이 "screen"이면:

    1. object로컬 좌표계화면 좌표계로 설정한다.

  5. 그렇지 않으면, object로컬 좌표계기기 좌표계로 정의한다.

8.2. 가속도계 판독값 양자화 알고리즘

Accelerometer 센서 타입은 다음 판독값 양자화 알고리즘을 정의한다:

입력

reading, 센서 판독값

출력

센서 판독값

  1. readingquantizedReading이라고 하자.

  2. quantizedReading["x"]가 null이 아니면, quantizedReading["x"]를 가장 가까운 0.1 m/s2로 설정한다.

  3. quantizedReading["y"]가 null이 아니면, quantizedReading["y"]를 가장 가까운 0.1 m/s2로 설정한다.

  4. quantizedReading["z"]가 null이 아니면, quantizedReading["z"]를 가장 가까운 0.1 m/s2로 설정한다.

  5. quantizedReading을 반환한다.

9. 자동화

이 절은 Generic Sensor API § 9 자동화를 확장하여 Accelerometer에 특화된 가상 센서 메타데이터를 제공한다. 이 명세가 사용하는 일부 가상 센서 타입[DEVICE-ORIENTATION]에 정의되어 있다.

9.1. Accelerometer 자동화

accelerometer 가상 센서 타입타입별 가상 센서 메타데이터 map에서의 그 대응 항목은 Device Orientation and Motion § automation에 정의되어 있다.

9.2. Linear Accelerometer 자동화

linear-acceleration 가상 센서 타입타입별 가상 센서 메타데이터 map에서의 그 대응 항목은 Device Orientation and Motion § automation에 정의되어 있다.

9.3. Gravity 자동화

타입별 가상 센서 메타데이터 map은 다음 항목을 가져야 한다:

"gravity"

xyz 판독값 구문 분석판독값 구문 분석 알고리즘으로 갖는 가상 센서 메타데이터.

10. 감사의 말

Generic Sensor API 작업을 수행한 Tobie Langel에게 감사한다.

센서 보정 지문채취 완화 제안과 논의를 제공한 W3C Privacy Interest Group 및 Paul Jensen에게 감사한다.

적합성

문서 관례

적합성 요구사항은 설명적 주장과 RFC 2119 용어의 조합으로 표현된다. 이 문서의 규범적 부분에서 핵심 단어 “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, “OPTIONAL”은 RFC 2119에 설명된 대로 해석되어야 한다. 그러나 가독성을 위해 이 명세에서 이러한 단어가 항상 대문자로 나타나는 것은 아니다.

이 명세의 모든 텍스트는 규범적이다. 단, 명시적으로 비규범적으로 표시된 절, 예제 및 참고는 제외한다. [RFC2119]

이 명세의 예제는 “예를 들어”라는 말로 도입되거나 class="example"을 사용하여 다음과 같이 규범적 텍스트와 구분된다:

이것은 정보성 예제의 예이다.

정보성 참고는 “참고”라는 말로 시작하며 class="note"를 사용하여 다음과 같이 규범적 텍스트와 구분된다:

참고, 이것은 정보성 참고이다.

적합한 알고리즘

알고리즘의 일부로 명령형으로 표현된 요구사항 (예: "strip any leading space characters" 또는 "return false and abort these steps")은 그 알고리즘을 도입할 때 사용된 핵심 단어 ("must", "should", "may" 등)의 의미로 해석되어야 한다.

알고리즘 또는 특정 단계로 표현된 적합성 요구사항은 최종 결과가 동등하기만 하면 어떤 방식으로든 구현할 수 있다. 특히 이 명세에 정의된 알고리즘은 이해하기 쉽도록 의도된 것이며 성능을 목적으로 한 것은 아니다. 구현자는 최적화할 것이 권장된다.

색인

이 명세에서 정의하는 용어

참조에서 정의하는 용어

참조문헌

규범적 참조문헌

[DEVICE-ORIENTATION]
Reilly Grant; Marcos Caceres. Device Orientation and Motion. URL: https://w3c.github.io/deviceorientation/
[GENERIC-SENSOR]
Rick Waldron. Generic Sensor API. URL: https://w3c.github.io/sensors/
[INFRA]
Anne van Kesteren; Domenic Denicola. Infra Standard. Living Standard. URL: https://infra.spec.whatwg.org/
[PERMISSIONS]
Marcos Caceres; Mike Taylor. Permissions. URL: https://w3c.github.io/permissions/
[PERMISSIONS-POLICY-1]
Ian Clelland. Permissions Policy. URL: https://w3c.github.io/webappsec-permissions-policy/
[RFC2119]
S. Bradner. Key words for use in RFCs to Indicate Requirement Levels. March 1997. Best Current Practice. URL: https://datatracker.ietf.org/doc/html/rfc2119
[SCREEN-ORIENTATION]
Marcos Caceres. Screen Orientation. URL: https://w3c.github.io/screen-orientation/
[WEBIDL]
Edgar Chen; Timothy Gu. Web IDL Standard. Living Standard. URL: https://webidl.spec.whatwg.org/

비규범적 참조문헌

[ACCESSORY]
Owusu, Emmanuel, et al. ACCessory: password inference using accelerometers on smartphones. 2012. Informational. URL: https://dl.acm.org/citation.cfm?id=2162095
[KEYSTROKEDEFENSE]
Song, Yihang, et al. Two novel defenses against motion-based keystroke inference attacks. 2014. Informational. URL: https://arxiv.org/abs/1410.7746
[MOTION-SENSORS]
Kenneth Christiansen; Alexander Shalamov. Motion Sensors Explainer. URL: https://w3c.github.io/motion-sensors/
[SENSORID]
Zhang, Jiexin; Beresford, Alastair R.; Sheret, Ian. SensorID: Sensor Calibration Fingerprinting for Smartphones. 2019. URL: https://doi.org/10.1109/SP.2019.00072
[SI]
SI Brochure: The International System of Units (SI), 8th edition. 2014. 8th Edition. URL: http://www.bipm.org/en/publications/si-brochure/
[TOUCHSIGNATURES]
Mehrnezhad, Maryam, et al. Touchsignatures: identification of user touch actions and pins based on mobile sensor data via javascript. 2016. Informational. URL: https://arxiv.org/abs/1602.04115

IDL 색인

[SecureContext, Exposed=Window]
interface Accelerometer : Sensor {
  constructor(optional AccelerometerSensorOptions options = {});
  readonly attribute double? x;
  readonly attribute double? y;
  readonly attribute double? z;
};

enum AccelerometerLocalCoordinateSystem { "device", "screen" };

dictionary AccelerometerSensorOptions : SensorOptions {
  AccelerometerLocalCoordinateSystem referenceFrame = "device";
};

[SecureContext, Exposed=Window]
interface LinearAccelerationSensor : Accelerometer {
  constructor(optional AccelerometerSensorOptions options = {});
};

[SecureContext, Exposed=Window]
interface GravitySensor : Accelerometer {
  constructor(optional AccelerometerSensorOptions options = {});
};

MDN

Accelerometer/Accelerometer

In only one current engine.

FirefoxNoneSafariNoneChrome67+
Opera?Edge79+
Edge (Legacy)?IENone
Firefox for Android?iOS Safari?Chrome for Android?Android WebView?Samsung Internet?Opera Mobile?
MDN

Accelerometer/x

In only one current engine.

FirefoxNoneSafariNoneChrome67+
Opera?Edge79+
Edge (Legacy)?IENone
Firefox for Android?iOS Safari?Chrome for Android?Android WebView?Samsung Internet?Opera Mobile?
MDN

Accelerometer/y

In only one current engine.

FirefoxNoneSafariNoneChrome67+
Opera?Edge79+
Edge (Legacy)?IENone
Firefox for Android?iOS Safari?Chrome for Android?Android WebView?Samsung Internet?Opera Mobile?
MDN

Accelerometer/z

In only one current engine.

FirefoxNoneSafariNoneChrome67+
Opera?Edge79+
Edge (Legacy)?IENone
Firefox for Android?iOS Safari?Chrome for Android?Android WebView?Samsung Internet?Opera Mobile?
MDN

Accelerometer

In only one current engine.

FirefoxNoneSafariNoneChrome67+
Opera?Edge79+
Edge (Legacy)?IENone
Firefox for Android?iOS Safari?Chrome for Android?Android WebView?Samsung Internet?Opera Mobile?
MDN

GravitySensor/GravitySensor

In only one current engine.

FirefoxNoneSafariNoneChrome91+
Opera?Edge91+
Edge (Legacy)?IENone
Firefox for Android?iOS Safari?Chrome for Android?Android WebView?Samsung Internet?Opera Mobile?
MDN

GravitySensor

In only one current engine.

FirefoxNoneSafariNoneChrome91+
Opera?Edge91+
Edge (Legacy)?IENone
Firefox for Android?iOS Safari?Chrome for Android?Android WebView?Samsung Internet?Opera Mobile?
MDN

LinearAccelerationSensor/LinearAccelerationSensor

In only one current engine.

FirefoxNoneSafariNoneChrome67+
Opera?Edge79+
Edge (Legacy)?IENone
Firefox for Android?iOS Safari?Chrome for Android?Android WebView?Samsung Internet?Opera Mobile?
MDN

LinearAccelerationSensor

In only one current engine.

FirefoxNoneSafariNoneChrome67+
Opera?Edge79+
Edge (Legacy)?IENone
Firefox for Android?iOS Safari?Chrome for Android?Android WebView?Samsung Internet?Opera Mobile?
MDN

Headers/Feature-Policy/accelerometer

In only one current engine.

FirefoxNoneSafariNoneChrome67+
Opera?Edge79+
Edge (Legacy)?IENone
Firefox for Android?iOS Safari?Chrome for Android?Android WebView?Samsung Internet?Opera Mobile?