iOS模拟器中Expo Go未请求本地网络权限,无法在设置开启
iOS 18.4模拟器中Expo Go本地网络权限不显示的解决办法
针对你遇到的Expo Go在iOS 18.4模拟器中提示需要本地网络权限,但设置列表里找不到该应用的问题,以下是几个针对性的解决方法:
手动修改Expo Go的权限配置文件
- 打开终端,执行命令定位到模拟器中Expo Go的容器目录:
xcrun simctl get_app_container booted expo.modules.expogo data - 找到该目录下的
Info.plist文件,用文本编辑器打开,添加以下权限配置:<key>NSLocalNetworkUsageDescription</key> <string>需要本地网络权限以连接开发服务器</string> <key>NSBonjourServices</key> <array> <string>_expo._tcp</string> </array> - 保存文件后,重启模拟器和Expo Go,再尝试连接开发服务器。
- 打开终端,执行命令定位到模拟器中Expo Go的容器目录:
改用Expo Dev Client替代Expo Go
Expo Go作为预构建应用,可能在iOS 18.4的权限逻辑上存在兼容性问题。自己构建Dev Client可确保权限被正确触发:- 在项目目录下执行:
npx expo install expo-dev-client - 构建并安装到模拟器:
npx expo run:ios
启动后Dev Client会主动请求本地网络权限,可在设置中正常开启。
- 在项目目录下执行:
重置模拟器隐私权限数据库
执行终端命令重置当前启动模拟器的隐私权限:xcrun simctl resetprivacy booted重置后卸载并重新安装Expo Go,再启动项目,观察是否触发权限请求。
升级Expo CLI到最新版本
旧版本Expo CLI可能与iOS 18.4存在兼容性问题,执行命令升级:npm install -g expo-cli@latest升级后重新执行
npm start -- --reset-cache启动服务器,再尝试打开应用。
内容的提问来源于stack exchange,提问作者szyrd
相关产品推荐
相关产品推荐

