iOS 开发周报:苹果新 AirPods 可能会成为健身追踪器、Swift 中的指针操作
KasGertrude
7年前
<h2 style="text-align: left;"><strong>新闻</strong></h2> <ol style="list-style-type:decimal"> <li style="text-align:left"><a href="/misc/goto?guid=4959750671600583806" style="text-decoration: none; color: rgb(40, 106, 178); outline: none !important; margin: 0px; border: 0px; padding: 0px;">苹果收购德国眼动追踪技术公司 SMI</a>:苹果公司确认收购德国眼动追踪公司 SensoMotoric Instruments(简称 SMI )。这是一家成立于 1991 年的老牌技术公司,提供软硬件两方面的眼动追踪技术,该技术目前广泛应用于 AR 眼镜以及 VR 领域。据其官网介绍,SMI 公司提供设备中的眼动追踪模块,其市场占有率达到全球销量的 65%。</li> <li style="text-align:left"><a href="/misc/goto?guid=4959750671681550923" style="text-decoration: none; color: rgb(40, 106, 178); outline: none !important; margin: 0px; border: 0px; padding: 0px;">苹果新 AirPods 可能会成为健身追踪器</a>:近日据 Patently Apple 报道,苹果已经为 AirPods 的迭代提出了专利申请,这意味着小型无线耳机可能将成为用户的健身追踪器。该专利显示,AirPods 将包含生物识别传感器。虽然耳机中集成生物识别传感器不是什么新鲜事,Jabra Elite Sport 无线蓝牙耳机就做到了这一点,但看到苹果正在开发这项技术仍是件令人兴奋的事。</li> </ol> <h2 style="text-align: left;"><strong>教程</strong></h2> <ol style="list-style-type:decimal"> <li style="text-align:left"><a href="/misc/goto?guid=4959750671769851904" style="text-decoration: none; color: rgb(40, 106, 178); outline: none !important; margin: 0px; border: 0px; padding: 0px;">Swift 中的指针操作</a>:默认情况下,Swift 是内存安全的,这意味着它禁止我们直接操作内存,并且确保所有的变量在使用前都已经被正确地初始化了。但是,Swift 也提供了我们使用指针直接操作内存的方法,直接操作内存是很危险的行为,很容易就出现错误,因此官方将直接操作内存称为 “unsafe 特性”。 <br> 一旦我们开始直接操作内存,一切就得靠我们自己了,因为在这种情况下编译能给我们提供的帮助实在不多。正常情况下,我们在与 C 进行交互,或者我们需要挖掘 Swift 内部实现原理的时候会需要使用到这个特性。本文介绍了 Swift 中指针相关内容。</li> <li style="text-align:left"><a href="/misc/goto?guid=4959750671853653338" style="text-decoration: none; color: rgb(40, 106, 178); outline: none !important; margin: 0px; border: 0px; padding: 0px;">Using JavaScript in Swift Projects: Building a Markdown to HTML Editor - AppCoda</a>:有时候我们需要使用 JavaScriptCore 与 Swift 进行交互,本文以一个 Markdown 解析渲染为例,介绍了如何在 Swift 使用 JavaScriptCore 。</li> <li style="text-align:left"><a href="/misc/goto?guid=4959750671935204569" style="text-decoration: none; color: rgb(40, 106, 178); outline: none !important; margin: 0px; border: 0px; padding: 0px;">Modelling state in Swift — Swift by Sundell</a>:在 iOS 中处理状态是件非常麻烦的事情,本文介绍了如何用 Model 管理你的状态。</li> <li style="text-align:left"><a href="/misc/goto?guid=4959750672019068800" style="text-decoration: none; color: rgb(40, 106, 178); outline: none !important; margin: 0px; border: 0px; padding: 0px;">iOS 11:WKWebView内容过滤规则详解 </a>:在 iOS 11 中,<code>WKWebView</code> 支持内容过滤了,本文介绍了相关的使用方法。</li> </ol> <h2 style="text-align: left;"><strong>开源项目</strong></h2> <ol style="list-style-type:decimal"> <li style="text-align:left"><a href="/misc/goto?guid=4959750672106406939" style="text-decoration: none; color: rgb(40, 106, 178); outline: none !important; margin: 0px; border: 0px; padding: 0px;">iOS-11-by-Examples</a>:iOS 11 新增 API 一系列示例项目。</li> <li style="text-align:left"><a href="/misc/goto?guid=4959750672191391508" style="text-decoration: none; color: rgb(40, 106, 178); outline: none !important; margin: 0px; border: 0px; padding: 0px;">ARShooter</a>:基于 ARKit 的射手小游戏</li> <li style="text-align:left"><a href="/misc/goto?guid=4959750672270661349" style="text-decoration: none; color: rgb(40, 106, 178); outline: none !important; margin: 0px; border: 0px; padding: 0px;">ARTetris</a>:基于 ARKit 和 SceneKit 的俄罗斯方块示例小游戏。</li> <li style="text-align:left"><a href="/misc/goto?guid=4959750672354868761" style="text-decoration: none; color: rgb(40, 106, 178); outline: none !important; margin: 0px; border: 0px; padding: 0px;">bluejay</a>:一款简单的蓝牙组件。</li> <li style="text-align:left"><a href="/misc/goto?guid=4959750672434531057" style="text-decoration: none; color: rgb(40, 106, 178); outline: none !important; margin: 0px; border: 0px; padding: 0px;">URWeatherView</a>:一款非常精致生动的天气组件。</li> </ol> <p style="text-align:left">感谢<a href="/misc/goto?guid=4959637708567920700" style="text-decoration: none; color: rgb(40, 106, 178); outline: none !important; margin: 0px; border: 0px; padding: 0px;">徐川</a>对本文的审校。</p> <p style="text-align:left">来自:http://www.infoq.com/cn/news/2017/07/ios-weekly-apple-airpods-jianshe?utm_campaign=infoq_content&utm_source=infoq&utm_medium=feed&utm_term=news</p>