在我们项目中引入了 Firebase, Facebook 登录后,真机调试的时候,一些没有打开 VPN 的手机老是会报一些连接失败 和 连接超时 的日志,很是烦躁,因此得找方法去掉这些。
Error Domain=NSURLErrorDomain Code=-1004 "无法连接服务器。
" UserInfo={NSUnderlyingError=0x280239890
{Error Domain=kCFErrorDomainCFNetwork Code=-1004 "(null)"
UserInfo={_kCFStreamErrorCodeKey=61, _kCFStreamErrorDomainKey=1}},
NSErrorFailingURLStringKey=https://graph.facebook.com/v5.0...
NSLocalizedDescription=无法连接服务器。}
Error Domain=NSURLErrorDomain Code=-1001 "请求超时。
" UserInfo={NSUnderlyingError=0x2802febe0
{Error Domain=kCFErrorDomainCFNetwork Code=-1001 "(null)"
UserInfo={_kCFStreamErrorCodeKey=-2102, _kCFStreamErrorDomainKey=4}},
NSErrorFailingURLStringKey=https://firebaseinstallations.googleapis.com/v1/projects/...
NSLocalizedDescription=请求超时。}
Error Domain=NSURLErrorDomain Code=-1200 "发生了SSL错误,无法建立与该服务器的安全连接。
" UserInfo={_kCFStreamErrorCodeKey=-9816,
NSLocalizedRecoverySuggestion=您仍要连接此服务器吗?
{Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)"
UserInfo={_kCFStreamPropertySSLClientCertificateState=0, _kCFStreamErrorDomainKey=3,
NSErrorFailingURLKey=https://firebaselogging-pa.googleapis.com/v1/firelog/legacy/batchlog...
_kCFStreamErrorDomainKey=3}
全是链接 firebaselogging-pa.googleapis.com
, firebaseinstallations.googleapis.com
, graph.facebook.com
这种域名的。
方法一: 对调试的时候屏蔽其开关
- 例如 真机调试下,不开启 FirApp。
- 或是链接不上 Google 的情况下,屏蔽啥的,
但这样更不好,测试发现手机端不开启 VPN 也是可以报上部分统计的。 - 或是直接不引用 Firebase 和 Facebook ,然而没有用。
方法二:当然对真机全部连香港的服务器或者打开 VPN 的
- 这个肯定可行的,但有些测试机子肯定是木有的。
方法三:关闭系统日志
Edit Scheme -> Run -> Arguments -> Environment Variables 在此添加OS_ACTIVITY_MODE 设置为 disable
暂时先这样解决的, 关闭系统日志输出。