对业务的侵入性:业务必须修改现有网络连接的阶段的代码;交互的标准兼容性不足:IP直连下的302问题、Cookie问题、SNI问题等带来的变化一是在应用内部 , 我们可以对业务透明提供提供全局的域名调度或者域名兜底解析能力,不再是只有用到特定组件或SDK才可以 。 二是苹果放开系统级别DNS接管后 , 用户设备上的服务相比原LocalDNS的“中立性”如何管控?对特定业务是否甚至会造成恶化?如果对外部应用的这种“中立性”疑问或担心确实存在 , 则这种系统标准化的加密DNS对手淘这种大型应用则是必选项 。
受限网络中推送?解决什么问题当向iOS设备推送消息时 , 业务服务器需要将消息先发送给APNS服务器 , APNS服务器再将消息转换为通知payload推送给目标设备 。 如果设备所在的WiFi网络没有连接互联网或者当前网络受限 , 比如在游艇、医院、野营地这些地方 , 设备没有与APNS服务器建立有效连接 , APNS消息投递将会失败 。
?如何实现本地推送连接对那些推送功能非常重要 , 而设备所在网络受限的场景非常适合 。 而对于常规的推送需求 , 依然推荐使用PushKit或UserNotificationAPI处理APNS推送消息 。 每台设备和APNS服务器之间只建立一条APNS连接 , 设备上所有App都公用这一条连接 , 所以APNS非常省电 。
APNS与本地推送连接对比:
AppExtension主要处理两类推送 , 一类是常规的推送通知 , 一类是VoIP呼叫通知 。 如果是常规的推送通知 , AppExtension收到消息后 , 可以使用UserNotificationAPI构造一个本地推送显示推送信息 。 如果是VoIP呼叫通知 , AppExtension使用NEAppPushProvider类将呼叫信息报告给系统 。 如果此时主App不在运行 , 系统将唤醒主App , 并将消息投递给它 , 最后主App再使用CallKitAPI显示呼叫界面 。
?价值场景如果只考虑推送本身 , 对于手淘或者大部分消费类应用来说 , 笔者认为价值并不大 , 因为此类APP不可能在一个封闭的本地网络里去部署资源来提供服务能力 。 这里一个可应用的点在于:设备一旦进入特定网络环境 , 触发AppExtension,进而唤起主App , 应用可在后台完成一定事务 。 因为iOSApp一直缺乏后台服务能力 , 这种特定网络环境的触发唤醒 , 极大的补充了这一能力 。
现代网络技术的应用苹果在这次WWDC中 , 把一些较新的网络技术 , 对应用的体验提升 , 做了一个简单综述 , 包括IPv6、HTTP/2、TLS1.3,MTCP、以及HTTP/3 。 这些技术在手淘基本都有涉及 , 有些是已经是大规模部署、有些是正在逐步推进中 。 对各个应用来说 , 如果已经在应用这些技术了 , 则云端均尽可能标准化 , 便于进一步推广和复用 。 这里简单的对苹果的综述做一个搬运:
?IPv6苹果根据最新统计 , 苹果全球设备TCP连接占比中 , IPv6占比26% , IPv4占比74% , 其中74%的占比中有20%是因为服务端没有开启IPv6支持 。 在建连时间方面 , 由于减少了NAT使用 , 提高了路由效率 , IPv6的建连时间比IPv4快1.4倍 。 开发者只需使用URLSession和Network.frameworkAPI , IPv6网络适配将自动支持 。
推荐阅读
-
-
越南|越南将迎来新风暴?希望中方调“神兵”支援,这次我们选择拒绝
-
礼法|《大秦赋》中李斯给吕不韦送羊,原来是周朝礼法
-
NVIDIA|NVIDIA RTX 3090 Ti显存超频24GHz:挖矿性能暴涨25%
-
炉石传说|炉石传说 数据拆包爆料:冒险模式英雄之书提前看
-
美食工坊 看完这张肥肠地图,说出你家乡的肥肠做法,我就能猜出你是哪里人
-
-
#晨郴州#北湖区统计局联合区科工局走访调研规模工业企业
-
亓纪的想法|小米第三,前两名占88.1%,国内高端手机市场排名:三星垫底
-
-
『军事海陆空』受疫情影响聚会活动取消,美国、以色列空军举行F-35联合演习
-
-
海淘攻略之Godiva网站购物流程,有没有比较完成详细的
-
-
-
象山包打听:为象山公交好司机点赞!,好人好事不断涌现
-
都市聚焦|群众为山西交警打call,及时救援故障车辆
-
王者荣耀|王者荣耀新打野刀效果,射手打野重出江湖,还称养猪流最佳搭档!
-
朱雪梅|大衣哥儿子小伟减肥有成效,三天掉秤10斤,比姐姐朱雪梅还胜一筹
-
#戚薇#iPhone 12定价竟然比iPhone 11还便宜,苹果备货能够吗