React Native iOS真机无法连接Metro服务器:localhost未替换为本地IP
iOS真机运行React Native无法连接Metro服务器
尝试通过Xcode在iOS真机上运行React Native应用时,无法连接到Metro开发服务器,报错信息如下:
2022-07-22 08:51:39.307312-0400 Wam[18995:1465079] Task <39C43637-F7A7-4C7D-A1AF-31C96E7D9EDE>.<1> finished with error [-1004] Error Domain=NSURLErrorDomain Code=-1004 "Could not connect to the server." UserInfo={_kCFStreamErrorCodeKey=61, NSUnderlyingError=0x2838a02a0 {Error Domain=kCFErrorDomainCFNetwork Code=-1004 "(null)" UserInfo={_NSURLErrorNWPathKey=satisfied (Path is satisfied), interface: lo0, _kCFStreamErrorCodeKey=61, _kCFStreamErrorDomainKey=1}}, _NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <39C43637-F7A7-4C7D-A1AF-31C96E7D9EDE>.<1>, _NSURLErrorRelatedURLSessionTaskErrorKey=( "LocalDataTask <39C43637-F7A7-4C7D-A1AF-31C96E7D9EDE>.<1>"), NSLocalizedDescription=Could not connect to the server., NSErrorFailingURLStringKey=http://localhost:8081/status, NSErrorFailingURLKey=http://localhost:8081/status, _kCFStreamErrorDomainKey=1}
排查发现,当前应用请求的Metro服务器地址为http://localhost:8081/status,但同版本的全新React Native项目会自动使用http://{本地IP}:8081/status。显然项目中原本的localhost替换为本地IP的机制失效了,原因未知。
此前为适配CodePush、Firebase、Expo及推送通知等依赖包,修改过以下iOS相关文件:
- info.plist
- podfile
- AppDelegate.h
- AppDelegate.m
内容的提问来源于stack exchange,提问作者Chris Krogh
相关产品推荐
相关产品推荐

