【转】具透 | 你可能不知道,iOS 10 有一个中国「特供」的联网权限功能
9 月底,苹果正式在北京成立了苹果中国研发中心。近几年,我们也在每年更新的 iOS 系统中不断看到,苹果对中国市场的关照。从早前的九宫格输入法,到最近的骚扰电话拦截,都照顾了国内用户的需求。
在 iOS 10 中,除了 骚扰电话识别和拦截 功能的加入,苹果其实还专为国行 iPhone 制定了一个「联网权限」功能1。
它是什么
相信已有不少人早就注意到这个功能。毕竟在 iOS 10 中,每当你打开一个新安装的 App 时,应用除了可能会弹出请求授权访问相册、推送通知、获取定位这些熟悉的权限之外,还会向你发出一个新的请求:「允许 XXX 使用数据?」

只有当你选择「允许」后,应用才能够开始联网。如果你没有允许,那么这个 App 将无法做任何与联网相关的动作,不管是在前台还是后台。
之后,你还可以从「设置 - 蜂窝移动网络 - 使用无线局域网与蜂窝移动的应用」中,对所有你允许过联网的 App 进行统一管理。在该设置列表内,你不仅可以分别查看每个 App 消耗了多少流量,还能对 App 的联网权限进行三种选项管理:关闭联网、仅无线局域网、无线局域网与蜂窝移动数据。

为什么这是「特供」的新功能?因为它只在国行设备的系统中出现,非国行设备新安装的 App 不会弹出「请求联网」的授权提示,系统设置和 iOS 9 一致,仅有针对每个 App 是否允许使用蜂窝数据网络的开关。

据了解,国内特供的这一功能与去年底工信部起草的一份《移动智能终端应用软件(APP)预置和分发管理暂行规定》有关,规定中要求设备生产企业「未经明示且经用户同意,不得实施擅自收集使用用户个人信息、强制开启应用软件……等侵害用户合法权益和危害网络安全的行为」。现在我们使用任何其它国行手机,首次打开 App,一般也都会有请求网络权限的弹窗,由此可以看出,这是苹果响应规定的体现。
好的一面
虽然 4G 网络在国内已经有了较大普及,流量费相比前两年也便宜了很多,但中国仍有大量用户在用着更昂贵的流量套餐,也仍有大量用户的流量使用习惯和观念没有跟上。
iOS 10 针对中国地区提供更严格的 App 联网管理功能,让用户自行决定哪些 App 可以联网、哪些 App 不可以、哪些只能在有 WiFi 时联网,这无疑可以帮助用户更好避免在使用 iPhone 时出现「偷跑流量」的情况。
微博上有朋友表示,国行 iPhone 这次终于和非国行 iPhone「扯平了」。因为「Facetime 音频」功能在国行设备上一直是被阉割状态,这次国行设备专享了更强大的「联网权限」功能,自然喜闻乐见。
不完善带来的不便
但是,目前的「联网权限」功能并不完善(这从不太美观的设置界面也可以猜到),还因此带来了一些使用上的不便。
具体表现为:在部分国行 iPhone 上,当用户打开一款新 App 时,请求联网授权的提示框有一定几率不会出现。这就出现了 App 完全没法联网,用户又不能主动让 App 联网(这时在设置管理列表里也找不到这个 App)的尴尬情况,甚至卸载重装也不一定会弹出提示框。更严重一点的话,App 还有可能因此闪退。
用户没法正常使用 App,第一反应会怪罪于这款 App 的开发者,这种情况下,用户通常都会认为是 App 而非系统的问题。四叶新媒体的 Saic 此前就在 微博 上抱怨:

前几天我们再次询问了 Saic 问题是否解决,他表示已经与苹果沟通,查明该问题的原因主要是,iOS 10 没有就「联网权限」功能向开发者提供与「请求地理位置权限」类似的 API,没法调试这个功能,因而无法确保自己的 App 每次都能弹出「请求联网权限」的弹窗。
开发者无能为力,但好在用户自己有解。有不少朋友 也在微博上 分享了他们临时的解决办法:
- 方法 1:多退出重进几次 App,有一定几率会弹出提示框。
- 方法 2:在「设置 - 蜂窝移动网络」内打开「无线局域网助理」开关,再进入无法联网的 App,会弹出提示框。解决之后,就可以关掉助理开关。
- 方法 3:先去设置里随意关闭一个 App 的联网权限,然后打开,再进入无法联网的 App,会弹出提示框。
其中,第二个方法被多位朋友证实有效,如果你也遇到类似的问题,推荐试试。

小结
就功能本身来说,这个「中国特供」确实是 iOS 在 App 联网权限管理方面的进步,它让用户能更主动地控制自己手机内各个 App 访问网络的权限,当出现流量使用异常的情况时,我们能够更容易找到偷跑流量的原因和对应 App,并马上对其作出权限限制。
只不过,可能因为这是苹果工程师收到的「临时需求」,这一功能目前还不够完善,从而导致我们在日常使用上可能会遇到一些不便,只能等 iOS 10 后续的系统更新了。
from:https://sspai.com/post/35720
【转】具透 | 你可能不知道,iOS 10 有一个中国「特供」的联网权限功能的更多相关文章
- iOS 10 的一个重要更新-自定义的通知界面
续上篇,在简单闹钟的例子上,在通知界面上显示图片动画,并用通知关联的按钮更新通知界面.介绍 iOS 10 通知 API 的扩展:自定义通知显示界面. 新框架可以统一处理本地通知和远程推送,同时增加了一 ...
- iOS 10 的一个重要更新-新的通知推送 API
iOS 10 最重要的变化可能就是通知 API 的重构了.本文用一个简单闹钟的例子介绍了 User Notification 的 API 变化和新功能. 简介 很久以前,开发者就可以在 iOS 里预约 ...
- iOS 10 的一个重要更新-开发 iMessage 的第三方插件
苹果官方的 Messages 在 iOS 10 推出了非常重大的更新,可能主要是想从其他 IM 巨头手里抢点市场份额回来,包括 Facebook Messenger, Wechat 和 Snapcha ...
- iOS 10 的一个重要更新-线程竞态检测工具 Thread Sanitizer
本文介绍了 Xcode 8 的新出的多线程调试工具 Thread Sanitizer,可以在 app 运行时发现线程竞态. 想想一下,你的 app 已经近乎大功告成:它经过精良的打磨,单元测试全覆盖. ...
- iOS 10 的一个重要更新-用 UIViewPropertyAnimator 编写动画
曾经的黑暗年代 用基于 block 的 UIView animation 来编写 view 属性(frame, transform 等等)变化的动画非常简单.只需要短短几行代码: view.alpha ...
- 如果在 Windows 10 家庭版中使用「远程桌面」
远程桌面是 Windows 系统下原生.跨平台的的远程控制功能,拥有微软官方提供的各平台客户端,就可以让你在远程轻松帮助别人或者控制自己的 PC,而从 Windows 7 以来家庭版都不支持桌面功能
- 2018.10.27 loj#2292. 「THUSC 2016」成绩单(区间dp)
传送门 g[i][j][k][l]g[i][j][k][l]g[i][j][k][l]表示将区间l,rl,rl,r变成最小值等于kkk,最大值等于lll时的花费的最优值. f[i][j]f[i][j] ...
- iOS 10 消息推送(UserNotifications)秘籍总结(二)
背景 上一篇博客iOS 10 消息推送(UserNotifications)秘籍总结(一)发布后被 简书编辑推荐至首页,这着实让我受宠若惊啊.可是好事不长,后面发生了让我伤心欲绝的事,我的女朋友不要我 ...
- [iOS 10 day by day] Day 1:开发 iMessage 的第三方插件
本文介绍了 iOS 10 的一个重要更新:Messages 应用支持第三方插件了.作者用一个小游戏作为例子,说明了插件开发从建工程开始,到绘制界面.收发消息的全过程. <iOS 10 day b ...
随机推荐
- 腾讯云下的CentOS7 安装最新版Python3.7.0
第一步下载Python3.7.0 刚开始我是在windows上下载之后 传到FTP服务器上的 后来发现使用以下命令可以更快捷地下载到服务器 * wget https://www.python.org ...
- 数据库索引(Oracle和Mysql)学习总结
旭日Follow_24 的CSDN 博客 ,全文地址请点击: https://mp.csdn.net/postedit/80910082 索引概念: 索引是关系数据库中用于存放每一条记录的一种 ...
- iPhone X手机投屏电脑无线连接教程
iPhone X手机是一款非常有气场的手机,独特的设计,展现手机的独特魅力,手机外观让人一眼就爱上,手感也是超级的舒适,真的是堪称完美,但是iPhone X手机投屏电脑怎么无线连接呢? 使用工具: 电 ...
- Redis 保护模式
默认 redis 启用了保护模式,即如果是远程链接不能进行 CRUD 等操作,如果进行该操作报错如下 (error) DENIED Redis is running in protected mode ...
- odoo:开源 ERP/CRM 入门与实践
看了这张图,或许你对odoo有了一些兴趣. 这次就是和大家一起交流开源ERP/CRM系统:odoo 对以下读者有帮助:研发.产品.项目.市场.服务.运营.管理等. 一.背景趋势 社交网络.电商O2O: ...
- ASP.NET MVC Json的序列化和反序列化
1.利用js进行序列化成字符串和反序列化 var personObj = {name:"Tom",age:16}; // 利用JS序列化成字符串 var personStr = J ...
- ie6常见的兼容性问题
1.<!DOCTYPE HTML>文档类型的声明. 产生条件:IE6浏览器,当我们没有书写这个文档声明的时候,会触发IE6浏览器的怪异解析现象: 解决办法:书写文档声明. 2.不同浏览器当 ...
- Node.js学习起步
Node.js学习: 简单的说 Node.js 就是运行在服务端的 JavaScript.Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台.Node.js是一个事件驱 ...
- git 入门教程之本地和远程仓库的本质
本地仓库和远程仓库在本质上没有太大区别,只不过一个是本地电脑,一个是远程电脑. 远程仓库不一定非得是 github 那种专门的"中央服务器",甚至局域网的另外一台电脑也可以充当&q ...
- DataGridView的单元格如何嵌入多个按钮控件
前段时间我有一个朋友面试公司的时候遇到这个面试题,他也给了份原题给我瞧瞧,并没有什么特别的要点,关于这一类问题,如何在网格上的单元格嵌入多个控件(如按钮.超链接等)问题,我在网上搜索了下这类问题,发现 ...