86 thoughts on “新版百度输入法不给网络权限依然能联网

  1. 我一直都喜欢用百度输入法的笔画选词,但不希望被上传个人信息,所以关闭输入法的网络权限感觉一石二鸟了。此前只要关闭网络权限也的确能让输入法没法联网,今天更新输入法点进去,竟然看到了新皮肤,点一下备份居然成功了,我以为误开了网络,进设置一看没有啊,这 tm 有点怒了,苹果咋回事

  2. 没毛病啊,你明明连的是 Wi-Fi,然后 iOS 给你的设置是”无线数据(流量)”开关,什么时候有“关闭网络权限”的选项了?

  3. 如果你 ios 没有给一个应用的联网权限,然后这个应用还是可以联网的,你说这个问题是谁的呢?

    感觉 6 楼是正解,要不就是 ios 自己有问题。

  4. @riggzh #4 依然可以。但这跟代理有毛关系,iOS 这一设置应该是不给 APP 任何联网权限,网之不存代将焉代

  5. 有没有可能表情商店走的不是百度输入法给 appstore 提交的接口,看看登录账号什么的能联网么?

    不行就抓个包看看

  6. 看图标啊,这个无线数据的图标实际就是流量的图标。关闭无线需要进无线局域网里面关闭。

  7. @xiaoyazi 我之前遇到过真实赛车 3 开了加速器能上,不开不能上。后来发现无线数据被我关了

  8. @LadyChunsKite 说到这个,好像是听说国行才有“ 使用无线局域网与蜂窝移动的应用”选项

  9. @xiaoyazi #9 我测试的 bilibili,开 VPN 关了权限也可以联网,关了 VPN 就不能联网了,iOS 12 系统,目测你那儿也是代理问题,你可以试试 bilibili 或你用的其他 app 。

  10. @xiaoyazi
    你应该怪国行手机,这个无线网络权限是国行特供,相当于越狱插件性质的东西,用起来一堆 Bug 。
    包括但不限于:
    直接关闭 App 的网络无任何提示
    显示网络权限开启实际上是关闭状态
    显示网络权限关闭实际上是开启状态
    在关闭状态死活切换不到开启状态

  11. @xiaoyazi #9 我只针对这楼回复,代理有个问题就是绕过,基于 PF 防火墙会有这个问题就是代理实际是走 loopback 的,所以系统防火墙拦截无效,最简单的例子,比如本地网络这个新权限,如果你开了 VPN,就会发现它不跟你要权限也照样可以用,而关掉 VPN 就会马上弹窗跟你要权限,这就是因为他是走 loopback 通过另一个程序请求的,这个程序没有被系统限制,所以特别是电脑上,大部分屏蔽了网络还能用的情况都是因为代理。

  12. OK 是代理问题,删除代理重启解决了

    那么请问有没有人知道 shadowrocket 能否针对 APP 拒绝通过

  13. 这个帖子证明了代理软件接管了所有流量,如果长时间开着代理你会发现该 app 在电池和数据用量排名靠前

  14. 多年前我的华为荣耀 6 就是这样的,禁止了输入法联网( WiFi+数据流量),但打开 VPN 就输入法能联网了。

  15. @xiaoyazi 下面人也告诉你了,你还觉得是别人没理解。

    你知道这个网络限制是国行专供功能不?

    如果不打开完全访问,就算输入法 App 能联网,也无法和输入法键盘部分交换数据的。

  16. 好像这个网络访问权限是限制主程序的,限制不了键盘,百度会不会利用了这一点,通过某种方式让主程序能连上键盘,然后一直用自己的键盘来上网,主程序再获取和发送数据?(纯属胡乱猜测,没有技术背景

  17. @xiaoyazi #51 在设置-代理里 下面有个 代理类型 设置为 None 就可以了,主要原理是因为设置 HTTP 代理或者 PAC 代理目标为 loopback 导致绕过的,同样副作用可能会导致 Network Extension 比平时更容易崩溃

  18. @Mitt 手机上的代理不是 VPN 么,流量通过 tun 路由不代表应用会直接访问 loopback 。
    再者这不是用户应该需要关心的问题,开代理会绕过是 iOS 网络防火墙的 bug 。

  19. @Jirajine #60 所以说我上面回复解决方案就是关掉 HTTP 代理,是因为流量目标地址是 loopback,不是 IOS 的 bug,tun+route 是不会触发这个特性的,就等于你一个软件你请求了一个 127.0.0.1:1081 的地址,系统是该拦还是不该拦?这是用 HTTP 代理才会有的特性,也是手机上为了节省协议解析开支才用的折中方法,原始的 tun 流量是不会改目标地址的,这俩机制生效在不同的位置

  20. @Jirajine #60 再纠正一点,其实我说的也不完全是对的,主要原因在于大多数的 VPN 应用都会用 loopback 来实现节省内存开支,而采用这个方式的 VPN 应用都会有这个问题,但是如果你完全走了 tun 的接口没用到 loopback 特性也是不会有问题的,但无论如何这都不属于 ios bug,这个问题主要出现在电脑上多一点,任何防火墙都无效,因为电脑上都是起一个 127.0.0.1 端口的监听来实现 HTTP/Socks5 代理的,完美绕过所有防火墙

  21. @xiaoyazi 第一次知道国行设置还有是特供版,我没有任何国行设备,app 设置里面只有 cellular data 开关¯\_(ツ)_/¯

  22. @Mitt 因为你们没有说清楚,VPN 是 VPN 代理是代理。
    再者上面说代理的多半也是指套了 tun2socks 的 VPN,直接指向 loopback 的正向代理很少有人使用。

    另外就算是正向代理,目标地址和发起者如果不是同一个所有者的话,毫无疑问也该拦,参考微软 UWP 的隔离方案。
    没有处理好这些 edge case,当然是 iOS 防火墙的 bug 。

  23. @Jirajine #67 所以 UWP 就有个很恶心的问题,一开代理就上不去网 23333,之所以说 VPN 是因为代理走的 Network Extension 都统一归属到 VPN 里了,毕竟硬说 VPN 也不是那回事,而又因为联网权限这个功能是属于国行特色,所以本身就只考虑了 WIFI/蜂窝的出口,本地的流量自然就不在设计里,同样本地网络这个权限也只规定了局域网,也同样不包括本机的流量,设计当初就不存在的东西自然不应该不属于 BUG

  24. @Jirajine #67 而且 UWP 的隔离方案也仅拦截 loopback 所以才会有这个问题,否则既支持 HTTP 代理又不允许访问岂不是自相矛盾

  25. @Mitt loopback 接口上的正向代理本来就是中国特色需求,Windows 等桌面的平台的客户端这么搞本身也是为了方便,而手机系统已经提供了方便的创建 VPN(tun 隧道)的机制了,还使用本地代理我是没想到的。

    而 http 代理绝大多数使用场景都是连接其他代理服务器,因而本地 loopback 隔离也不能算是自相矛盾。

    不管如何设计,用户不需要关心内部细节,只看行为。导致安全相关的重要设置被绕过,这不是 bug 是啥?

  26. @Jirajine #73 所以从字面上理解啊,苹果可从来没给过你关闭所有数据的权限,你只能关的有 WIFI/蜂窝 /局域网(本地网络),从没包括过本机流量

  27. 如果问题确实存在,那应该是 iOS14.1 的 Bug,跟百度输入法没啥关系,bd 和 cook 也没啥 py 交易,等 apple 修复了以后升级系统可能就好了。

  28. 不用不就是了,屁大点事,不说原生了,第三方输入法一大堆,比百度好的也不再少数,换一个不就成了。
    不管谁的问题,用的人少了,自然他们就会重视了。
    一边骂着一边用着,那怪谁啊。

  29. 楼主的这个开了 VPN 就能联网的问题,我在 iOS 12 下没有复现,猜测是 iOS 新版本有 bug

  30. @LadyChunsKite 你的非国行 iPhone,非国行只能禁蜂窝数据,无法禁 Wi-Fi 联网的。楼主的设置对的,国行 iPhone 上这么设置是完全禁止蜂窝与 Wi-Fi 联网的,那个“无线数据”里是三个选项,而不是非国行的独立开关。

  31. 有趣。
    上一次在 v 站看到这个问题,下面给出的解答是,ios 上输入法分 2 层,屏蔽了百度输入法键盘这边的联网权限,但百度后台服务在取得“允许完全访问”权后后,不受联网权限限制。
    这次的解答则是代理问题。感觉这次的答案更靠谱。

发表评论

电子邮件地址不会被公开。 必填项已用*标注