本文原创首发于公众号:ReactNative开发圈,转载需注明出处。

最近我们的APP在给用户安装试用的过程中,有用户反映IOS10在安装后,点击登录没有任何提示,不提示错误,也不提示失败。现象很奇怪,感觉像没有请求到服务,但是其他手机又是能正常登录的。

找问题

我们首先把问题手机拿回来,加上了代理监控了请求,发现打开APP到点击登录,都没有任何网络请求,像是APP没有网络权限。我们打开使用无线局域网与蜂窝移动的应用里面(如下图),确实没有找到我们的APP。

clipboard.png

在一番百度和谷歌之后,发现IOS10确实存在BUG,就是新安装的APP在打开的时候,不弹出下面这个允许提示使用数据的窗口,所以APP就没有网络访问权限。

clipboard.png

解决方法

我们使用的是下面这种解决方法,成功解决了发生这个问题的两个苹果手机。

方法一 更改 iOS 10 中的蜂窝网络访问权限设置

在「设置」-「通用」-「蜂窝移动网络」-「使用无线局域网与蜂窝移动的应用」选项中更改任意应用的联网权限设置后再恢复原先设置选项,完成操作后再次打开相关问题应用,即可解决这一问题。

网络上还有另外两种解决方法:

方法二: 重启手机再打开有相关联网问题的应用

对于此问题可能带来的问题有:如果你有多个应用具有网络访问问题,你可能需要多次重启设备后依次打开相关应用,因为在每次重启设备之后,系统貌似只能修正一个应用的联网访问请求,关于此问题还需要进一步求证。

方法三:临时启动无线局域网助理

在「设置」-「蜂窝移动网络」打开「无线局域网助理」选项,之后再打开相关问题应用也可以解决这个问题。
修复问题后即可关闭「无线局域网助理」选项。

参考文档

iOS 10 不提示「是否允许应用访问数据」,导致应用无法使用的解决方案 - 简书
ios10网络权限问题
iOS 10 不提示「是否允许应用访问数据」,导致应用无法使用的解决方案 - 掘金

举手之劳关注我的微信公众号:ReactNative开发圈

本文固定链接: http://www.js-code.com/ios/ios_53274.html