Expo Bare项目授权位置权限后触发Invalid displacement location error求助
问题描述
- 使用Expo Location时,允许位置权限后触发「Invalid Displacement Error」错误
- 开发环境:Expo Bare、SDK 47、React 18.1、React Native 0.70.5
- 已尝试排查:
- 更换其他位置库,问题依旧
- 创建全新Expo Bare项目测试,错误仍出现
解决方案
切换设备位置精度模式
进入系统设置 -> 位置信息,将模式切换为「高精度」(融合GPS与网络定位),部分设备仅启用单一定位模式会触发该错误。降级Expo Location版本
SDK 47配套的部分expo-location版本存在兼容性问题,尝试安装稳定适配版本:npm install expo-location@15.0.1 # 或 yarn add expo-location@15.0.1检查原生权限配置
确认Android项目的AndroidManifest.xml已添加完整位置权限:<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <!-- 需后台定位则添加 --> <uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />更新设备系统
Android 11及以下旧系统与React Native 0.70.x存在定位兼容性bug,升级设备系统至最新稳定版后重试。
内容的提问来源于stack exchange,提问作者strawberrymilkshake
相关产品推荐
相关产品推荐

