HarmonyOS 如何通过传感器获取设备方向?

如题:HarmonyOS 如何通过传感器获取设备方向?

阅读 612
1 个回答

可以参考如下链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-sensor-V5\#sensorgetorientation9

相关demo如下:

import sensor from '@ohos.sensor';
import BusinessError from '@ohos.base';
@Entry
@Component
struct sensorExample{
  build() {
    Button("获取设备方向").width(100).height(100)
      .onClick(()=>{
        try {
          let preRotationMatrix = [
            1, 0, 0,
            0, 0.87, -0.50,
            0, 0.50, 0.87
          ];
          sensor.getOrientation(preRotationMatrix, (err: BusinessError.BusinessError, data: Array<number>) => {
            if (err) {
              console.error(`Failed to get orientation. Code: ${err.code}, message: ${err.message}`);
              return;
            }
            if (data.length < 3) {
              console.error("Failed to get orientation, length" + data.length);
            }
            console.info("Succeeded in getting data. Z: " + data[0]);
            console.info("Succeeded in getting data. X: " + data[1]);
            console.info("Succeeded in getting data. Y: " + data[2]);
          })
        } catch (error) {
          let e: BusinessError.BusinessError = error as BusinessError.BusinessError;
          console.error(`Failed to get orientation. Code: ${e.code}, message: ${e.message}`);
        }
      })
  }
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进