你也可以为这个项目出一份力,如果发现有价值的信息、文章、工具等可以到 Issues 里提给我们,我们会尽快处理。记得写上推荐的理由哦。有建议和意见也欢迎到 Issues 提出。
新闻
TestFlight 增强功能助你吸引测试员
TestFlight 分发功能迎来了加强,新增对测试员的招募标准,例如指定 OS 版本,方便在在 1w 的名额内,尽可能按 app 实际要求暴露问题,例如鼓励低 OS 的用户加入测试。同时还提供了公开链接的转化情况看板等新功能。总体是一次满足开发者们痛点的更新。
文章
🐕 How to build a Safari extension with SwiftUI
@Barney:Polpiella 在博客中分享了如何使用 SwiftUI 构建 Safari 扩展的步骤。首先,在 Xcode 中创建 Safari 扩展目标并修改 Info.plist 文件,设置工具栏项和网站访问权限。接着,利用 SFSafariExtensionHandler 创建 SwiftUI 视图,并通过 PopoverViewController 展示。最后,运行应用即可在 Safari 中安装并测试扩展。
🐎 Phase Animator Behavior
@AidenRao:在这篇文章中,Chris Eidhof 探讨了 PhaseAnimator 的工作原理。当视图的位置从 -100 更改为 -100 时,更新前后的节点完全相同,并不会产生任何动画,当没有具体的动画时,会立即调用动画的完成处理程序。换句话说,我们马上就进入了下一个阶段。
🐎 Swift Macro 在业务开发中的探索与实践
@JonyFang: 结合模块化场景及曝光场景下的应用,通过模块宏能解决模块化通用模版定义的繁琐, 通过曝光宏能降低整个曝光体系接入的复杂度,本质上都是让 Swift Macro 帮助我们减少重复样板代码的编写,提供快速接入的能力。接入 Swift Macro 可以玩出很多花样,增加了代码的趣味性和可读性,降低了维护成本。
App development on iPad
@Kyle-Ye: 作者在过去一年里,全面投入到使用 iPad 进行应用程序开发。这篇文章介绍了在 iPad 上使用 Swift Playgrounds 进行 iOS 应用程序开发的可能性和局限性(缺乏 Xcode 的某些功能,如断点调试和模拟器支持)。虽然还存在一些局限性,但通过一些创新的解决方案,这些问题都可以得到缓解。
🐎 Vapor and Swift Testing: Running tests in parallel
@Smallfly:这篇文章探讨了在 Swift 和 Vapor 框架中如何进行并行测试。它解释了 Swift Testing 与 XCTest 的不同,并提出了使用 Repository Pattern 来避免测试中的数据库查询,以实现测试的并行执行。同时还介绍了如何配置和使用内存中的仓库进行测试,并重写代码以通过仓库访问数据,从而提高开发效率和测试稳定性。推荐对 Swift 服务端开发和测试的同学阅读。
🐎 Reminder: Apple Watches use 32 bit pointers
@极速男孩:Apple Watch 从 Series 4 起采用 arm64_32 架构,虽为 64 位系统,但用 32 位指针。开发者在 watchOS 模拟器中测试时 Int 为 64 位,而在实际硬件上 Int 为 32 位,导致模拟器运行正常的代码在硬件上可能崩溃。例如,处理时间戳的代码可能在 Apple Watch 上失败。所以要在处理 Int 和 CGFloat 时需注意这种差异,确保代码在硬件上也稳定运行。
🐎 Flutter Color 大调整,需适配迁移,颜色不再是 0-255,而是 0-1.0,支持更大色域
@Crazy:本文主要介绍了 Flutter 在 3.10 版本里进行的颜色体系更改,首先介绍了 sRGB 和 P3 两种颜色体系的在色域上的区别,从肉眼上看 P3 的颜色更加鲜艳。紧接着文章便介绍了新版本的颜色体系,其中主要对颜色位数做了对比讲解,并且对源码也进行了分析。文章的最后作者更是对现有 API 的现状进行分析,更是对之后的 API 发展情况进行了介绍。
内推
重新开始更新「iOS 靠谱内推专题」,整理了最近明确在招人的岗位,供大家参考
具体信息请移步:https://www.yuque.com/iosalliance/article/bhutav 进行查看(如有招聘需求请联系 iTDriverr)
关注我们
我们是「老司机技术周报」,一个持续追求精品 iOS 内容的技术公众号,欢迎关注。
关注有礼,关注【老司机技术周报】,回复「2024」,领取 2024 及往年内参
同时也支持了 RSS 订阅:https://github.com/SwiftOldDriver/iOS-Weekly/releases.atom 。
说明
🚧 表示需某工具,🌟 表示编辑推荐
预计阅读时间:🐎 很快就能读完(1 - 10 mins);🐕 中等 (10 - 20 mins);🐢 慢(20+ mins)