老司机 iOS 周报 #309 | 2024-10-28 #4759
ChengzhiHuang
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
老司机 iOS 周报,只为你呈现有价值的信息。
你也可以为这个项目出一份力,如果发现有价值的信息、文章、工具等可以到 Issues 里提给我们,我们会尽快处理。记得写上推荐的理由哦。有建议和意见也欢迎到 Issues 提出。
新闻
New requirement for app updates in the European Union
自 2024 年 10 月 17 日起(已经生效),在欧盟地区上架的 app 需要提供交易商身份信息,之后才能提交 app 。如果一直不提供交易商信息,则 app 会在 2025 年 2 月 17 日被下架。详见:填写说明。
Apple Push Notification service server certificate update
这是一则前置通知:Apple 推送通知服务 (APNs) 的证书颁发机构 (CA) 即将改变。APNs 将于 2025 年 1 月 20 日更新沙盒环境的服务器证书,并于 2025 年 2 月 24 日更新生产环境的服务器证书。
大家可以等沙盒环境更新后再进行操作,建议在过渡期间同时保留新旧两份证书。
文章
🐢 Elite Hoops Year One: 12 Bite-Sized Lessons
@CrazyCoderShi: 本文是一个独立开发者关于应用增长过程的思考,从初始的少量付费用户开始到市场分析思考共 12 条,可谓字字珠玑,对于正处于独立开发中的同学来说有不小的借鉴意义。
🐕 swiftlang/swift-java
@Barney:这个项目提供了 Swift 和 Java 互操作性的工具和库,允许 Swift 程序直接调用 Java API。还有一个 jextract-swift 工具,用于从 Java 源码中提取用于 Swift 调用的代码。项目处于早期开发阶段,依赖于特定的 Swift 和 JDK 版本。
🐕 直接使用 xcodebuild 比 Xcode 慢的原因分析
@Cooper Chen:这篇文章主要讨论了 xcodebuild 工具相较于 Xcode 更加耗时的问题,xcodebuild 每次构建时向 Apple 的 API 发出了多个请求,响应时间较长,导致构建变慢,并且 xcodebuild 对每个目标逐个发请求,目标越多则效率差异越明显,作者提供了解决方法包括修改 hosts 文件和使用网络嗅探工具阻止请求。这些方法能显著提高构建速度,同时作者建议用户也提交反馈,以促使 Apple 修复此问题。
🐕 The Memory Leak: An Xcode Detective Story
@莲叔:这篇文章讲述了作者从一个自己 app 遇到的 deeplink 的 bug 一步步的排查到问题的根源的过程。问题的根源虽然并不复杂,但触发点非常隐蔽,至少属于 CR 时很难发现的问题,值得关注。另外,过程中一步步讲述了作者自己排查的过程以及思路,对于刚入门的同学应该也有非常有帮助。
🐕 Beware UserDefaults: a tale of hard to find bugs, and lost data
@xiaofei86:在 iOS 15 “应用预热” 和 ”敏感数据解锁前不可访问(钥匙串等)“ 2 个系统功能的互相影响下,会出现
UserDefaults.standard
实例取到空的偶现问题。一但问题出现,程序可能认为是首次启动,进而用默认数据覆盖 UserDefaults,导致更严重的问题。作者总结了能够大概率复现的场景,并提供解决方案。同时也封装了 TinyStorage 用来替代 UserDefaults,感兴趣同学可以阅读原文了解。🐕 MoveMe - SwiftUI Edition
@AidenRao:使用 SwiftUI 来处理手势和动画实际上并不像听起来那么直观,这篇文章讲解了如何实现正方形的拖动、缩放以及过渡动画效果,并解决了一些在实现过程中出现的问题。文章还提供了代码示例和 GitHub 链接供参考。
🐎 So how does this whole @preconcurrency thing work?
@DylanYang:@preconcurrency 是一个新增的关键字,帮助开发者屏蔽并发相关的警告。在开发者往严格的并发框架逐渐迁移的流程上,有时会出现无法快速迁移,甚至无法迁移的情况,而 @preconcurrency 能够允许开发者忽略这部分警告,使得开发者能够增量的完成并发框架的迁移。本文介绍了 @preconcurrency 可以在哪些场景下帮助开发者处理这些问题,比如在一个 @mainactor 的类型里实现一个 nonisolated 的 protocol 场景,或是处理三方库中无法迁移到 concurrency 框架的代码等。有遇到类似问题的开发者可以阅读此文了解更多。
代码
ProtobufKit
@kemchenj:轻量跨平台 ProtoBuf Swift 解决方案,实现了基础的序列化 API,并且提供一套类似 Codable 的方案支持,对比原版 5.7MB 的二进制大小,这个版本只需要 142KB。
内推
重新开始更新「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)
This discussion was created from the release 老司机 iOS 周报 #309 | 2024-10-28.
Beta Was this translation helpful? Give feedback.
All reactions