You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native:获取Android设备旋转角度(Orientation)

在React Native中获取Android设备旋转角度的可行方案

以下是两个实用且维护状态较好的库,可用于在React Native中获取Android设备的旋转角度:

1. react-native-sensors

这是一个跨平台传感器库,支持Android和iOS,包含方向传感器相关功能,能精准获取设备旋转角度数据。

  • 安装命令:
    npm install react-native-sensors
    # 或使用yarn
    yarn add react-native-sensors
    
  • 基础使用示例:
    import { OrientationSensor } from 'react-native-sensors';
    
    const subscription = OrientationSensor.subscribe(({ x, y, z, timestamp }) => {
      // x、y、z对应不同轴的旋转角度,可根据需求处理
      console.log('设备旋转角度数据:', { x, y, z });
    });
    
    // 组件卸载时取消订阅
    // subscription.unsubscribe();
    

2. react-native-orientation-locker

这个库主打屏幕方向锁定功能,同时提供了获取当前设备旋转角度的API,在Android平台适配稳定性较好。

  • 安装命令:
    npm install react-native-orientation-locker
    # 或使用yarn
    yarn add react-native-orientation-locker
    
  • 基础使用示例:
    import Orientation from 'react-native-orientation-locker';
    
    // 获取当前旋转角度
    const currentDegree = Orientation.getOrientation();
    console.log('当前设备旋转角度:', currentDegree);
    
    // 监听角度变化
    Orientation.addOrientationListener((orientation) => {
      // orientation返回0、90、180、270等角度值
      console.log('设备旋转角度变化:', orientation);
    });
    
    // 组件卸载时移除监听
    // Orientation.removeOrientationListener();
    

你可以根据需求选择:如果需要更精准的多轴传感器数据,选react-native-sensors;如果仅需基础的屏幕方向角度,react-native-orientation-locker足够满足需求。

内容的提问来源于stack exchange,提问作者Holeng

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 04:36:22