老司机 iOS 周报,只为你出现有价值的信息。
你也能够为这个项目出一份力,假如发现有价值的信息、文章、东西等能够到 Issues 里提给咱们,咱们会尽快处理。记得写上引荐的理由哦。有建议和定见也欢迎到 Issues 提出。
新闻
🌟 🐢 Flutter 3.0 发布
@CrazyCoderShi: 前两天的 Google I/O 上 Flutter 3.0 现已发布,首要包含 Flutter 对 macOS 和 Linux 正式版支撑、进一步的功能改进、手机端和 Web 端相关的更新等等。此外还有关于减少对旧版本 Windows 的支撑,以及一些 breaking changes 列表。国内外的相关技能咨询上有诸多解说,这儿小编就简单为咱们汇总一下,方便同学们阅读学习:
- 中文版解说
- 英文原版
- Dart 2.17 新特性
Developer – 设计开发加速器
通过服务器处理 App 内购买和供给用户支撑
2022 年 5 月 17 日(报名截止 5 月 16 日)
了解怎么运用 App Store 服务器 API 和 App Store 服务器告诉处理 App 内购买,为您的客户供给支撑和退款处理。报名估计开放时刻:5月12日
音频类 App 专场:为你的音频类 App 提高体会
2022 年 5 月 25 日至 26 日(报名截止 5 月 24 日)
欢迎参加为期两天的音频类 App 专场活动!通过本次活动,您将全方位了解 Apple 的相关技能针对在“音频”范畴不同运用场景如音乐、K 歌、有声书以及播客类场景中的最佳实施性等,包含物理音频空间化引擎作业原理和运用,音频辨认和分类的智能构建等,以及怎么利用 watchOS 打造更好的音频类 watchOS App 等等。等待您的加入和咱们一同探究音频范畴的空间!
文章
🐕 西瓜视频 iOS Voice Over 无障碍适配实践
@ChengzhiHuang:无障碍的适配既是工信部的要求,也是企业社会责任感的表现。本文介绍了苹果原生无障碍相关的 API 运用以及事务浸透较高场景的适配实践。如有相关适配需求能够借鉴对应场景中的交互方法。文章内容集中于处理如下问题:
- 焦点相关问题:信息缺失/冗余/过错、顺序错乱、停留不当 等
- 浮窗问题 / 焦点被覆盖时仍可拜访
- 嵌套容器 ScrollView 无法跟从翻滚
🐕 MachO 文件编译链接常见的三大认知误区
@AidenRao:《iOS15动态链接fixup chain原理详解》 对 iOS15+ 动态链接进程功能优化的深度解析,引发了字节跳动 APM 团队对 MachO 文件的编译链接进程探究的爱好。在学习的进程中,初学者常常会因为对该范畴的不熟悉而堕入误区。本文整理了初学者比较简单犯的三大认知误区,防止咱们重蹈覆辙。
🐢 Swift 初次调试断点慢的问题解法
@享耳先森:在 Swift 项目开发进程中,相信咱们最近两年都深受「初次断点调试启动慢」问题困扰,依据项目巨细和结构不同,初次调试时刻从十几秒到几分钟不等,最近中文社区对此问题进行深入研究。
优酷团队发文 Swift 初次调试断点慢的问题解法 通过以下命令优化 LLVM 装备:
settings set target.memory-module-load-level minimal
settings set symbols.use-swift-clangimporter false
字节团队发文 Swift 调试功能的优化方案 通过自定义 LLDB 及装备更详尽的处理调试断点慢问题,实测作用更加显着。
需要阐明的是,以上方案与主工程项目结构有关,依赖的二进制库越多,作用越显着。
🐕 Detecting Xcode Previews
@Damien:在 SwiftUI 中想区分当时运行环境是在 Preview 中仍是虚拟机中吗?来看看这篇文章吧,作者供给了从 ProcessInfo 中通过 XCODE_RUNNING_FOR_PREVIEWS 获取当时的运行环境的信息的思路,然后能够让咱们辨认运行环境是在 Preview 仍是虚拟机。
🐕 Jenga – 根据 Swift ResultBuilder 高雅的构建 UITableView
@老峰:Jenga 是一个根据 ResultBuilder 封装的类 SwiftUI 运用声明式语法构建 UITableView 开源库,供给了 State 和 Binding 特性,代码简洁,可读性强,感爱好的同学不妨一试。
🐕 Flutter 状况办理结构 Provider 和 Get 分析
@极速男孩:Flutter 作为一个声明式的 UI 结构状况办理是一个让人头疼的问题,没有状况办理会导致难以复用/单元测试,跨页面无法传递数据,setState 方法会过度改写的问题。本文首要介绍了 Get 与 Provider 的状况办理的原理,而且怎么利用他们去实现 MVP 模式,而且对比了两者的优缺点。
🐢 Flutter 深入探究混合开发的技能演进
@邦Ben: 本文整理了 Flutter 中 PlatformView 的演进进程,也便是从直接通过 channel 翻开一个 WebviewController 到 Virtual Displays 到 Flutter Hybrid Composition 的进程,文中通过各种例子阐明原理以及也指明了优缺点,在运用 Flutter 的同学建议一看。同时上星期引荐的 UC 团队做的进一步优化进行是下一步演进方向,也能够一并看看。
参阅链接:
U4 内核技能 – Flutter PlatformView 优化
🐕 深入理解 OC/C++ 闭包
@xuyafei:ObjC 编译器允许用户在同一个源文件里自由地混合运用 C++ 和 ObjC,相对于其它言语与 C++ 的文件隔离和架桥通讯(Kotlin 运用 JNI,Dart 运用 FFI),Objective-C++ 的同文件混编方法无疑是令人酣畅的。虽然 Objective-C++ 没有为 ObjC 和 C++ 类增加功能,类的体系结构也互相独立,类之间不能互相承继,但有时二者也会彼此把自己的魔杖伸向对方范畴,然后会引发一些比较隐晦的问题。本文就从两种言语闭包混合捕获的原理出发,了解其混编方法背面机制的冰山一角,也协助咱们写出更好的 ObjC/C++ 混编代码。
代码
老司机技能沙龙
不知不觉,现已联合举办了 6 场开发者活动了。咱们对过去几场活动从头做了一次整理,把一切可公开的材料都上传到了这儿,后续的活动也会同步更新到这儿。需要的朋友移步自取哈
摸鱼周报
@摸鱼周报 #53:第 53 期摸鱼周报来了,一同来看下本期概要:
- 论题:远程作业正在成为趋势
- 面试模块:CRC 实践使用:理论推导
- 优异博客:App Extension
- 学习材料:一个大学生的学习计划
- 开发东西:适用于
macOS
的现代媒体播放器,IINA
由开源媒体播放器mpv
供给支撑,简直能够播放您拥有的一切媒体文件。
内推
老司机周报团队联合知识小集和 SwiftGG 翻译组收录了一份靠谱的内推职位。
假如你想找作业,点这儿:www.yuque.com/iosalliance…
假如你想招人,点这儿:www.yuque.com/iosalliance…
当然,也欢迎你重视咱们每一期的周报,咱们会在每期周报底部及时更新修改内推岗位。
重视咱们
咱们是「老司机技能周报」,一个持续寻求精品 iOS 内容的技能公众号,欢迎重视。
重视有礼,重视【老司机技能周报】,回复「2021」,收取 2017/2018/2019/2020 内参
同时也支撑了 RSS 订阅:github.com/SwiftOldDri… 。
阐明
🚧 表明需某东西,🌟 表明修改引荐
估计阅读时刻:🐎 很快就能读完(1 – 10 mins);🐕 中等 (10 – 20 mins);🐢 慢(20+ mins)