在React Native中,使用expo-location,gps位置刷新率在iOS中太低

问题描述 投票:2回答:1

我使用expo-cli开发了一个应用,但是在ios和android上却得到不一致的结果,尤其是在代码的这一部分,每次我从手机获取GPS位置时,我都会执行一个循环代码,特别是速度。

import * as Location from 'expo-location';
import React from 'react';

class HomeScreen extends React.Component {

  componentDidMount(){
    let watchID = Location.watchPositionAsync(
      {accuracy: 6, timeInterval: 500},
      (position) => {
        // my recurrent code
      }
    );
  }

}

即使我将其设置为每0.5秒恢复一次速度,Android手机还是相当合理地(每秒或每两秒一次)获得一次,但是iOS设备的播放效果并不理想,有时需要等待30秒才能更新,例如,从一个测量到另一个测量的速度跃升+30 mph。

是否有任何方法可以提高iOS中的GPS刷新率?也许是我没有弄清楚的记录问题?

“ expo”:“ 36.0.0”“展览位置”:“〜8.0.0”“反应”:“ 16.13.1”

react-native expo react-native-ios
1个回答
0
投票

自我回答:最后,这是一个仍然在expo-location内部以某种形式存在的错误:需要在Location.watchPositionAsync()函数的options数组中设置distanceInterval选项:

© www.soinside.com 2019 - 2024. All rights reserved.