「 知识小集 」2019 · 第 2 期

原文链接

本周主题:Network.framework

Network.framework 是 Apple 在 WWDC 2018 推出的一款新的网络框架,这个框架具备智能建立连接、优化数据传输、内建的安全加密、无缝兼容移动网络、原生 Swift 支持等特性,可以完全替换原有的 Socket API。URLSession 底层就是使用 Network.framework 完成基础连接的。不过目前相关的文章还比较少,就连官方文档也是语焉不详,很多类都没有详细的说明,而是只给了一个大体内容。不过相信这个框架在后面会更多的用途。

本周内容

本周我们做了次送书活动,活动于昨日晚 8 点截止,中奖结果如下:

感谢大家的热情留言和建议,我们会详细整理留言中的内容,以便后期为大家提供更好的内容。

本期公众号的主要内容有:

这周小集的内容有:

  • Xcode更新输入账号密码,账号却不是自己的
  • Framework 中混编时 umbrella header 设置注意事项
  • xcrun simctl delete unavailable 命令使用
  • 使用strong而不是assign修饰dispatch对象
  • 关于UIStackView的一个小知识点
  • This block declaration is not a prototype 编译警告处理

更多内容可以查看我们的小程序,或者 Github github.com/awesome-tip…

文章

使用 iOS 12 的 Network Framework 实现 netcat

文章以实现一个 netcat 命令行工具,来演示 Network Framework 的使用。这其中包括创建并监听 inbound 连接和 outbound 连接,并后续如何发起双向数据传输,获取数据等。另外文章还附带演示了 TLS 和 Bonjour 的一些使用。

Network.framework: A modern alternative to sockets (apple.com)

这是一个社区的讨论,大体是现有网络技术的一些问题,里面涉及为什么苹果会推出 Network.framework,以及这个框架解决的问题和优势,和 BSD sockets 等存在什么的关系。讨论非常长,需要耐心阅读。

NIOTransportServices: SwiftNIO and Network.framework

SwiftNIO 是 Apple 开源的一个跨平台的异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。

而 Network.framework 为则为 NIO 提供了许多强大的工具,包括更丰富的连接生命周期,对用户空间 TCP 堆栈的访问,以及对在 iOS 和 tvOS 上运行的完全支持。 此外,它还支持 SwiftNIO 主线目前不支持的强大网络技术,例如MPTCP。最后,它提供了与 Apple 平台 TLS 实现的一流集成,允许用户避免在 Apple 平台上使用 OpenSSL 或 LibreSSL 的负担。

开源代码

Connectivity

Connectivity 的主要用途是检测网络连接是否可用,即我们通常所使用的苹果的官方示例 Reachability 提供的功能。Connectivity 在 Reachability 的基础上提供了更多的功能,如对 Captive portal 的检测等。而 Connectivity 2.0.0 则是提供了对 iOS 12 及更高版本上 Network.framework 的支持。要使用此功能,只需要将 framework 属性设置为 .network。

视频

Network.framework 是在 WWDC 2018 推出的,Apple 有一个专门的 Session 来介绍这个框架,

新的 Network.framework API 让我们可以直接访问 URLSession 使用的相同高性能用户空间网络堆栈。如果您正在考虑在应用程序或库中使用 Berkeley Sockets,则可以先了解下这个框架。

而在其它地方,暂时没有找到与这框架相关的一些视频。

职位

职位持续更新中。

  • 北京-百度网盘 持续招 iOS 开发:社招、应届、实习均可。项目在技术上很有挑战性,团队技术氛围极好。诚心希望各路大神前来切磋,也欢迎计算机基础好的小白来共同学习。简历发邮箱 [email protected],暂不考虑的也欢迎微博私信 @小非86 聊聊~
  • 北京-蚂蚁金服 招iOS/安卓/前端开发:负责支付宝会员及帐号业务线,地点北京国贸,金台夕照地铁站出口 100 米。有兴趣的同学欢迎将简历发送到:[email protected] / [email protected] (同一个邮箱)或者微博私信 @折腾范儿_味精 了解情况。
  • 上海即刻:如果你认识聪明勤奋、胆大心细、有追求的工程师,那就来加入我们吧!任何推荐或简历可直接发给 Jason(即刻 iOS leader): [email protected],或微博 @JasonYuh
  • 杭州奇志科技招聘 iOS、前端:奇志科技自 2016 年起通过行业无人机协同工作流 Mesh 进入物联网与人工智能领域, 并成功为房地产、建筑、测绘、电力巡检等行业提供无人机解决方案。感兴趣可以微博上私信 @没故事的卓同学 了解。
  • 深圳头条研发中心诚招各路 iOS 好手一起做取悦自己的项目:如想了解更多深圳头条的信息,可以加小T微信:tomtan,切磋技术和聊情怀都可以喔~~~~
  • 北京字节跳动 iOS 团队持续招人中:简历可以发送到邮箱 [email protected],或者添加我(@AidenRao)的微信 jingmu1994 了解更多公司及岗位信息。
  • 北京百度教育事业部招 iOS 开发:百度教育事业部,地点:北京西二旗。部门下面有百度阅读,百度文库,百度爱听等 App 产品。团队技术氛围浓厚,有兴趣的同学欢迎将简历发送到我的邮箱:[email protected]

关注我们

欢迎关注我们的公众号:iOS-Tips,也欢迎加入我们的群组讨论问题。可以公众号留言 iosflutter 等关键词获取入群方式。

猜你喜欢

转载自juejin.im/post/5c446fc06fb9a049ab0dec14
今日推荐